Hallo,
ich habe ein Projekt wo verschiedene Informationen auf einem per I2C Bus angeschlossenen 16x2 Display angezeigt werden sollen.
Ich habe teilweise das Problem, das wenn die Anzeige wechselt, vorhergehende Informationen noch zu sehen sind.
Ich wollte das ganze durch lcd.clear lösen, allerdings flackert dann immer das Display.
Gelöst habe ich das Aktuell damit, das ich bei einem anzeigen Wechsel einfach nicht verwendete stellen durch ein Leerzeichen ersetze. Das funktioniert auch. Ist das eine Lösung die auch so angewandt wird oder gibt es da etwas eleganteres bzw. professionelleres?
Als Beispiel habe ich mal einen Teil aus dem Programm Kopiert:
Code:
void lueftersteuerung(int a) // Lüftersteuerung, ON/ OFF je nach Temperatur, ON bei Fehler DHT11
{
int relais_status = 0;
int fehler = 0;
if(result == 0 && temperature >= 25)
{
digitalWrite(relais, HIGH);
relais_status = 1;
}
else if(result == 0 && temperature < 25)
{
digitalWrite(relais, LOW);
relais_status = 0;
}
else if(result != 0)
{
digitalWrite(relais, HIGH);
fehler = 1;
}
if(a == 4 && relais_status == 1 && fehler == 0)
{
lcd.setCursor(0, 0);
lcd.print("Luefter:");
lcd.setCursor(0, 1);
lcd.print("ON ");
}
else if(a == 4 && relais_status == 0 && fehler == 0)
{
lcd.setCursor(0, 0);
lcd.print("Luefter:");
lcd.setCursor(0, 1);
lcd.print("OFF ");
}
else if(a == 4 && fehler == 1)
{
lcd.setCursor(0, 0);
lcd.print("Luefter:");
lcd.setCursor(0, 1);
lcd.print("ON mit Fehler");
}
}
Wenn ich in dem Beispiel den DHT11 Sensor abziehe, schaltet sich der Lüfter ein und im Menüpunkt Lüftersteuerung im Display kommt ON mit Fehler. Stecke ich DHT11 wieder an, schaltet die Anzeige auf ON, füge ich hier bei ON allerdings nicht die ganzen Leerzeichen ein, bleibt "mit Fehler" stehen.
Danke im voraus
Lesezeichen