LCD Display ansteuern, mein kleines Tutorial
Вставка
- Опубліковано 18 жов 2024
- So kann man ein LCD Display ansteuern. Ich selbst habe vergeblich nach deutschen einfachen Tutorials gesucht und dachte das ich nun selbst eins erstelle ;)
Wenn euch das Video gefällt, gebt einen 👍 hoch
und lasst ein 🅰🅱🅾 und 💬 da.
Viel Spaß beim anschauen 😊
🟦 Sketch-Download:
🔗 drive.google.c...
🟦 Video zur Installation:
🔗 • So steuer ich mein 2,4...
🟦 Benötigt zum nachbauen:
🛒 Board: amzn.to/4dkvDNJ
🛒 4er LCD: amzn.to/4fnsmPt
🛒 2er LCD: amzn.to/4fouoyR
🛒 Kabel: amzn.to/46qTWaP
(🛒 = Als Partner verdiene ich an qualifizierten Verkäufen)
Danke, mit Hilfe deines Videos konnte ich I2C innerhalb 5 Minuten installieren
Mit Abstand das beste Video zu dem Thema. Bei mir hat es sofort geklappt
👍
Bruder, du hast unser Schulprojekt mit dem Potentiometer gerettet. Kuss.
😂👍✌️
Bastelbruder, more like Ehrenbruder. Nices Tutorial!
Wow es lag an der Helligkeit.... Nun klappt es, Danke :D
für solch eine einfache Anzeige ist das nutzen von "delay();" natürlich io, wenn der code aber komplexer wird (zB eine Blinkende LED und währenddessen etwas anderes machen zB einen Schrittmotor betreiben), dann sollte man das delay non-blocking schreiben mittels millis usw.
Richtig, dann nötig wenn während der Wartezeit noch weiter Programm ausgeführt werden muss.
Muss man das anlöten mit es geht?
Vielen Dank
Mit denn lcd.init und denn lcd.backlight dieses aus dem loop bereicht rauszunehmen macht auch absolut einen Sinn, da es beim Ersten Start es eingeschaltet wird und so dies nicht nochmal durchlaufen werden muss. Ich habe auch vor mir so ein Ardunino Baukasten zu besorgen, weil mich sowas Intressiert und ich muss auch sagen das die Programmierung fast genauso aufgebaut ist wie bei Autoit wo man Skripte Schreibt die Virtuelle Button drückt. Wieso nicht auch sowas außerhalb eines Virtuelle sache zu machen.
Doch wenn man so die Verschiedene Möglichkeiten sieht und was es so alles dafür schon gibt, dann hat man schon so ein leichtes Suchverlangen. Mit Ardunino habe ich auch schon Angefangen zwei Hexapod zu bauen, doch das Starterset so sehe ich es das es die Grundlage für die Entwicklung von verschiedene Projekte sind.
Irgendwie klappt bei mir das mit dem Set Cursor nicht da kommt immer alles wieder auf die gleiche Reihen ich kriege es nicht auf die zweite:( Bitte helft einer :(
hallo, wenn ich alles richtig anschließe und den richtigen sketch hochlade, wird immer nur eine gesamte weiße-balkenreihe angezeigt... kein text nur weiße blöcke in der oberen reihe... kann mir jemand bitte helfen?
Du musst den Kontrast auf dem Modul mit dem Poti einstellen. Einfach den Kontrast runterschrauben, dann sollte es funktionieren
„Ich hab hier Jetzt kein OBS installiert!" Links unten: OBS😂
Da hast du recht, das habe ich heute auch gemerkt als ich OBS installieren wollte für mein Video was ich gleich hochlade. Ich bin ein Depp manchmal ;)))
@@Bastelbruder Mal eine Frage am Rande: Welche Programmiersprache wird hier zum Programmieren genommen? (Also in diesem Programm)
Hallo, welchen Fehler kann ich gemacht haben, wenn auf der LCD Anzeige nur in jeder Zeile der erste Buchstabe erscheint?
Neu entdeckt und gleich abonniert.
Noch etwas Klugscheisserei:
👉Es heisst nicht Reihen sondern Zeilen (z.B. 2 Zeilen x 16 Zeichen-Display) ;-)
👉Drähte, Litzen oder einzelne Leitungen sind keine Kabel ;-)
LG
Gibts da nun einen Sketch um LCD über Arduino vom PC aus per USB anzusteuern? Dass Adruino als Controller fungiert und vom PC geschickten Text an I2C -Controller durchreicht und auf LCD anzeigt? Ist sowas machbar? Habe ich bisher nicht geschaft.
Da würde ich eher ein ESP empfehlen. LCD an das ESP anschließen. Dann Einen Sketch mit Webserver und Formular hochladen. Über den PC kannste dann im Browser die Webseite aufrufen vom ESP und via Formular die Eingaben an den ESP senden. Dieser muss dafür natürlich in dein WLAN eingebunden werden.
@@Bastelbruder Danke!!! hat gestern mit der hd44780 Bibliothek geklappt: #include
#include
#include
hd44780_I2Cexp lcd;
void setup() {
Serial.begin(9600);
lcd.begin(20, 4);
lcd.print("Ready");
}
void loop() {
if (Serial.available() > 0) {
String input = Serial.readStringUntil('
');
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(input);
}
}
da kann ich unter Linux was über /dev/ttyACM0 am LCD ausgeben. Werd's aber auch mit ESP32 ausprobieren👋
Super :)
welches board ist das?
Habe mal alles in der Videobeschreibung verlinkt
Geht das ganze auch mit dem Atmega 8
Ich kenne den Atmega8 nicht, ich denke mein TUT ist da nur anwendbar wenn die Library auch mit dem ATmega8 kompatible ist. Müsstest du einfach mal testen...
Immer wenn ich es hochlade kommt ,,exit status 1" was mache ich falsch?
Scheinbar haben noch mehr diese Probleme: www.arduinoforum.de/arduino-Thread-exit-status-1-Fehler-beim-kompilieren ich hab da leider kein Tipp für dich..
geht es auch mit einem Atmega8 auch
Jaa, das geht auch.
Hey ich finde leider nicht die libery die im Video installiert wurde :(
Hey. Ich hab noch nie programmiert. Ich bekomme immer folgende Meldung, wenn ich den Code hochladen will: liquidcrystal_i2c.h no such file or directory
Was kann ich tun, bzw. Was ist der Fehler?
Öhhm ab Minute 08:40 habe ich die Lösung des Problems geschildert und gefixt ;)
Das ist ja dick!(Display)
in meinem buch steht auch die library i2c von Frank de Bander runterzuladen, aber diese wird mir nirgends mehr angezeigt nur andere-.-
Das Problem hatte ich auch, ich habe eine nahezu identische Bibliothek namens "LiquidCrystal I2C" von "Marco Schwartz" verwendet , welche dieselben Befehle beinhaltet.
Den Code konnte ich hochladen aber auf dem Display erscheinen keinerlei Zeichen, hat mein I2C Modul vielleicht eine andere Hex Adresse?
Es gibt diverse Bibliotheken für das Display, es muss eine sein die das I2c Modul beinhaltet. Musste auch einige austesten bevor es funktionierte
Wie kann man denn einzelne Zeilen löschen, statt das gesamte Display?
Ich kenne nur die Methode über lcd.print(" ");
Mit 20 Leerzeichen überschreibst du halt eine Zeile eines 4x20 LCDs.
das ist kein LCD-DISPLAY , sondern wenn schon ein LC-DISPLAY
weil LCD = Liquid Crystal Display
SDA = Serial Data (also die Datenleitung)
SCL = Serial Clock (timing ist alles) :D
und mach es dir zur Gewohnheit GND immer zuerst zu verbinden
Wieder etwas gelernt ;)
Und GND ist nicht Minus. GND ist ist das Null Potential.
Hallo,
ich muss für ein Schulprojekt dn LCD Monitor programnmieren, habe mir sehr viele Videos angeschaut und nie hat es funktioniert, bis ich auf dein Video gestoßen bin. Es hat auch funktioniert. DANKE.
Doch obwohl ich nichtgeändert habe(habe den Code auch schon kontroliert, sowie die Stecker) es zeigt nur noch die ersten beiden Buchstaben an. Am LCDMOnitor kann es nicht liegen, da ich den schon ausgetauscht habe.
Vielleicht hat ja jemand eine Idee, wie es funktionieren könnte:)
Liebe Grüße
Hallo Julia,
ist das denn ein vergleichbares LCD aus meinem Video, also 4 Reihen und 20 Zeichen Pro reiche oder hast du ein 2x16 Display ? Verwendest du auch das I2C Modul ?
@@Bastelbruder Hallo,
es ist ein 2x 16 display und ja ich verwende ein I2C Modul.
das Pannel funktioniert soweit, ich habe jeden "symbolplatz" getestet, aber nur, wenn man sie direkt ansteuert.
Ok, mein Sketch aber ist genau für ein bestimmtest LCD angepasst, sprich ein 4x20 LCD mit I2C modul. Wenn du ein anderes verwendet muss der Sketch angepasst werden.
@@Bastelbruder ok danke,
hast du vieleicht trozdem eine Idee, was ich ändern muss?
Weil es funktioniert, wenn ich es:
lcd.setCursor(0,0);
lcd.print("H");
lcd.setCursor(1,0);
lcd.print("a");
lcd.setCursor(2,0);
lcd.print("l");
lcd.setCursor(3,0);
lcd.print("l");
lcd.setCursor(4,0);
lcd.print("o");
so eingebe, aber nicht wenn ich es so :
lcd.setCursor(0,0);
lcd.print("Hallo");
Und ich habe schon sehr viel ausprobiert und weis nicht mehr weiter
Bist du UA-cam Partner?
Noch nicht, mir fehlen noch ein paar Stündchen ;)