[gelöst] Probleme mit einem 20x4 LCD i2c Display (nur ausgefüllte Rechtecke)

Guten Abend,

ich habe (mal wieder) ein Problem mit meinem LCD Display bzw. wohl eher mit dem I2C davon.

Und zwar zeigt mein Display nach dem Hochladen auf allen 80 Stellen ausgefüllte Rechtecke.

am Kontrast habe ich schon gedreht, das war nicht der Fehler.

laut Anleitung müsste auch die Verkabelung und die Hex Adresse passen, aber naja es will ja trotzdem nicht so wie es soll :frowning:

meinen Code zum probieren habe ich von hier:
http://funduino.de/anleitung-4x20-i²c-lcd-modul
ich habe auch das Display dort im Shop gekauft (eigentlich um keine Probleme zu bekommen...)

#include <Wire.h>  // Wire Bibliothek hochladen
#include <LiquidCrystal_I2C.h> // Vorher hinzugefügte LiquidCrystal_I2C Bibliothek hochladen
LiquidCrystal_I2C lcd(0x27, 20, 4);  //Hier wird das Display benannt (Adresse/Zeichen pro Zeile/Anzahl Zeilen). In unserem Fall „lcd“. Die Adresse des I²C Displays kann je nach Modul variieren.

void setup()
{
lcd.init(); //Im Setup wird der LCD gestartet
lcd.backlight(); //Hintergrundbeleuchtung einschalten (0 schaltet die Beleuchtung aus).
}

void loop()
{
lcd.setCursor(0,0); //Text soll beim ersten Zeichen in der ersten Reihe beginnen..
lcd.print("Test Zeile 1"); //In der ersten Zeile soll der Text „Test Zeile 1“ angezeigt werden
lcd.setCursor(0,1); //Genauso geht es bei den weiteren drei Zeilen weiter
lcd.print("Test Zeile 2");
lcd.setCursor(0,2);
lcd.print("Test Zeile 3");
lcd.setCursor(0,3);
lcd.print("Test Zeile 4");
}

Ach ja ich habe mich auch schon umgeschaut weil es ja anscheinend öfters Problem mit den Librarys gibt. ich habe auch schon andere LCD 20x4 i2c Librarys versucht aber da gabs den selben Effekt

vielen lieben Dank schon mal im Voraus


Moin,
kenne jetzt die von Dir verwendete Lib nicht. Aber:
Braucht man bei der kein lcd.begin(columns, rows)?
Gruß Walter

Guten Morgen,

also ich habe bis jetzt versucht meine Hex Adresse auszulesen aber die stimmt soweit mit 0x27.

Mit lcd.begin(20, 4); habe ich es auch probiert aber das hat auch keine Lösung gebracht.

vlt ist es noch schlau meine Lib zu zeigen ... das ist meine Lib

Am kontrast habe ich auch schon rumgespielt aber wie gesagt ohne Erfolg.

Außerdem haben ich auch schon Beispiel aus der Bibliothek probiert.. da habe ich dann nur weiße Balken in der ersten und dritten Reihe bekommen.

kann es daran Liegen dass meine Pins nicht mit er Lib zusammenpassen ? wie kann ich da was ändern ?

(deleted)

original_ott:
kann es daran Liegen dass meine Pins nicht mit er Lib zusammenpassen ?

Nein.
Du hast zwischen V0 und RS eine Zinnbrücke?

  • Peter war schneller

Das Verhalten des Displays kommt mir komisch vor.
Solche Displays zeigen normalerweise als "Einschaltbildschirm" auf der Hälfte, in diesem Fall auf jeder 2.Zeile die Blöcke an. Dies sobald sie eingeschaltet sind und bevor sie initialisiert werden. Du hast als I2C Interface einen I2C Expander PCF8574. Der ist passiv (es gibt auch programmierte Controller).

Wenn Du das Display mit Spannung versorgst (ohne den I2C Bus) hast Du dann auch diese Rechtecke auf allen 4 Zeilen? Am Potentimeter den Kontrast einstellen nutzt nichts?
Dann denke ich daß das Display kaputt ist. Reklamiere es und laß es Dir austauschen.

Grüße Uwe

(deleted)

hi,

#3 und #4 haben glaub ich Recht.

ich habe tatsächlich eine Lötstelle zwischen V0 und RS entdeckt... ich werd mal versuchen die wegzubekommen und mich dann nochmal melden.

vielen Dank für die Hilfe schon mal!

#8

wenn ich SDA und SCL trenne bekomme ich nur 2 weiße Balken und es wird kein I2C Gerät gefunden

original_ott:
wenn ich SDA und SCL trenne bekomme ich nur 2 weiße Balken und es wird kein I2C Gerät gefunden

Das ist richtig.
Also kratz die Lötbrücke durch und schon wirds gehen.

Hab das Display mit dem I2C shield schon verlötet gekauft (war sogar günstiger als einzeln).

hab jetzt erst mal dem shop eine Mail geschrieben vielleicht bekomm ich ja auch ein neues.

werd mich aber melden sobald ich neue Infos hab.

Vielen Dank schon mal an alle!

original_ott:
hi,

#3 und #4 haben glaub ich Recht.

Dann habe ich mit #5 knapp daneben gelegen. :wink: :wink: :wink:

Grüße Uwe

original_ott:
Hab das Display mit dem I2C shield schon verlötet gekauft (war sogar günstiger als einzeln).

hab jetzt erst mal dem shop eine Mail geschrieben vielleicht bekomm ich ja auch ein neues.

werd mich aber melden sobald ich neue Infos hab.

Vielen Dank schon mal an alle!

Sicher ein gangbarer Weg. Wenn Sie Dir ein Ersatzteil schicken und das alte nicht zurückwollen dann kannst du immernoch Nachlöten.
Grüße Uwe

also der Fehler lag tatsächlich an der Lötverbindung zwischen V0 und RS.

ich habe die Stellen getrennt und jetzt funktioniert alles einwandfrei.

Vielen Dank für die ganze Hilfe!

(deleted)

original_ott:
also der Fehler lag tatsächlich an der Lötverbindung zwischen V0 und RS.

Vielen Dank für die ganze Hilfe!

Na, das mich meine trüben Augen nicht getrügt haben...

Viel Spass damit!

Hi

Bei dem Fehlerbild MUSSTE der Kontrast schuld sein.
Wie schon geschrieben wurde, startet ein LCD mit der Hälfte der Zeilen als Balken.
Das ist ein Zeichen dafür, daß das Display nicht initialisiert wurde.
Wenn das Display keine Balken oder nur Balken zeigt, ist der Kontrast so eingestellt, daß eben Nichts angezeigt wird.
Normal ist's dann das Poti, Welches in einer der Endstellungen steht - Dein Fehler ist Da schon etwas fieser - aber dafür komplett Neu :slight_smile:

MfG

PS: Für Meeehhrrr Info's zum LCD sprut.de - auch außerhalb der Display eine interessante Seite, wenn auch eher in Richtung PIC-µC

Hätte ich nicht als Fehlerquelle gedacht. Auch war das Foto nicht so eindeutig.
Gratuliere.
Grüße Uwe