Das SainSmart 2004 LCD Modul mit 4 Zeilen x 20 Zeichen Text kann sehr leicht über den I2C Bus an einen Arduino angeschlossen werden. Es werden nur vier Anschlüsse auf dem Arduino Board benötigt: VCC (+5V), GND, SDA und SCL. Das SainSmart LCD Display gibt es z.B. bei Amazon für ca. 10 Euro.
Technische Daten
Anschluss: I2C (nur noch 2 I/O-Pins)
I2C Address: 0x3F
Pins: SDA / SCL / VCC / GND
Schriftfarbe: Weiss auf blauem Hintergrund
Betriebsspannung: +5 V-
Pcb Grösse: 60mm × 99mm
Kontrasteinstellung:Â Potentiometer
Hintergrundbeleuchtung: Jumper
Schaltkreis
Das LCD Display kann direkt an den Arduino angeschlossen werden. Es wird keine Steckplatine benötigt.
Arduino Uno -> LCD Display
5V -> VCC
GND -> GND
A4 -> SDA
A5 -> SCL
Arduino Leonardo -> LCD Display
5V -> VCC
GND -> GND
2 (SDA) -> SDA
3 (SCL) -> SCL
Auf der Rückseite befindet sich ein Potentiometer um den Kontrast des Displays zu ändern falls die Schrift nur schwach oder gar nicht zu sehen ist. Mittels eines Jumpers kann die Hintergrundbeleuchtung komplett ausgeschaltet werden.
Code
Erst nach einer etwas längeren suche nach der richtigen I2C Adresse war es möglich das LCD Display mit der „New LiquidCrystal Bibliothek“ anzusprechen. Die Beispiel Codes von der SainSmart Website haben alle nicht funktioniert. Die I2C Adresse lautet:“0x3F“.
Die „New LiquidCrystal Bibliothek“ muss in den „Libraries“ Ordner der Arduino IDE kopiert werden.
#include <Wire.h> #include <LiquidCrystal_I2C.h> // set the LCD address to 0x3F for a 20 chars 4 line display // Set the pins on the I2C chip used for LCD connections: // addr, en,rw,rs,d4,d5,d6,d7,bl,blpol LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE); void setup() { lcd.begin(20,4); // initialize the lcd for 20 chars 4 lines lcd.setCursor ( 0, 0 ); lcd.print("SainSmart 2004 LCD"); lcd.setCursor ( 0, 1 ); // go to the next line lcd.print ("I2C - 20x4"); lcd.setCursor ( 0, 2 ); // go to the next line lcd.print ("Arduino"); lcd.setCursor ( 0, 3 ); // go to the next line lcd.print ("www.JHRweb.de"); } void loop() { } |
Funktioniert!
Als #include die eingeben und als Adresse
anstatt 0x3F die 0x27.
Gruß Hubbi
Die groesser + kleiner Zeichen gehen beim hochladen verloren. Ich meinte bei #include LiquidCrystal_I2C.h eingeben (zwischen einem groesser – kleiner Zeichen)
Danke Hubert, habe es aktualisiert – das einbinden und anzeigen von Code ist immer so eine Sache…. bei meinem „original“ SainSmart LCD Modul musste ich die Adresse 0x3F nutzen – habe aber auch noch ein anders LCD Modul und dort ist es die 0x27.
Nach dem Ersetzen von 0x37F durch 0x27 lief es auch.
Die Aktualisierung von Hubert war beim Programmtext oben noch nicht angekommen.
Vielen Dank
My arduino flapping about every 30 seconds for this library . However, this is my only functioning library this ldc screen 😉 Also, the relay clicks every time. How do I fix this library ? thanks!
translate: Meine Arduino flattern über alle 30 Sekunden für diese Bibliothek . Allerdings ist dies meine einzige funktionierende Bibliothek diese LDC -Bildschirm; ) Also, klickt das Relais jedes Mal . Wie behebe ich diese Bibliothek ?
Hallo, habe versucht die „New LiquidCrystal Bibliothek“ zu finden. Es gibt nur noch
LiquidCrystal Daten mit Versionsnummer. Ich habe die Datei mit der höchsten Ver-
sionsnummer verwendet. Leider erhalte ich immer Fehlermeldungen bei Kompilieren.
Können sie mir bitte mitteilen welche Versionsnummer ihre Datei hat.
MfG
mit welcher Arduino version wurde es gemacht? ich (mit 1.6.6) bekomme immer irgend einnen fehler durch die Bibliothek beim Compilieren.
besten Dank!
hast mir sehr weitergeholfen
MfG..