Seltsames Zeichen bei einem lcd 16x2?

1 Antwort

Schmutzzeichen können viele Ursachen haben.

Prüfe die Länge und Initialisierung der Zeichenkette, die Du auf das Display überträgst. Wenn es kein Char sondern ein String ist, könnte das eine Hex 0 sein, damit werden Strings terminiert (Nimm besser CHAR(20)). Wenn die Zeichenkette zu lang ist, kann alles mögliche passieren.

Je nach dem, wo der Wert herkommt, könnte das auch ein LF (Linefeed) sein.

Namewarzukurz 
Fragesteller
 14.05.2021, 12:29

Ich sende dir mal den code hier rein.

void LCD () {

 lcd.setCursor(0,1);

 lcd.print("Temp.:");

 lcd.print(DHT.temperature);

 lcd.print("C");

 lcd.setCursor(0,0);

 lcd.print("Feuchtig.:");

 lcd.print(DHT.humidity);

 lcd.println("%");

 }

0
ntech  14.05.2021, 12:37
@Namewarzukurz

Das ist zunächst mal nicht falsch. Ich würde mal versuchen, das Diplay vorher zu löschen (ich glaube "lcd.clear".) und/oder die Zeile jeweils mit 20 Spaces zu initialisieren.

0
Namewarzukurz 
Fragesteller
 14.05.2021, 12:39
@ntech

was is tdenn mit spaces gemeint? und außerdem sobalt der Sensor das erste mal aktiv war verschwindet das zeichen, weil die zeile da zuende ist. Also lcd.clear ist nicht die Lösung. dann falckert das lc display nur noch

0
ntech  14.05.2021, 12:42
@Namewarzukurz

Spaces = Leerzeichen. Dann fehlt wahrscheinlich wirklich das LCD.CLEAR()

Schau mal in die Doku der lcd-Library

0
Namewarzukurz 
Fragesteller
 14.05.2021, 12:44
@ntech

ne das passt so alles. Hatte aber bei dem % statt lcd.print lcd.println benutzt. das hat den Fehler verursacht.

0