Ich bin noch Anfänger bezüglich Programmieren, sowie auch neu in der Materie Arduino.
Und zwar will ich über ein Drehwinkelgeber 4 Getränke auswählen. Dies habe ich bereits soweit geschafft. Nun ist das Problem, dass ich auf dem LCD nur so leicht die Schrift sehe bzw es verschindet zum Teil. Ich kann delay(1000); einsetzen nach dem "lcd.print();", aber das erkennt man auf dem Bildschirm. Kann mir da weiter helfen, leider finde ich nichts im Internet und sollte jemand was dazu finden bitte hier posten. Danke
if (lastPos != newPos)
{
lastPos = newPos;
}
if (newPos == 0)
{ // Display wird gelöscht
lcd.setCursor(0, 0); // Hier wird die Position des ersten Zeichens festgelegt. In diesem Fall bedeutet (0,0) das erste Zeichen in der ersten Zeile.
lcd.print("Cola");
lcd.clear();
}
else
if (newPos == 1)
{
lcd.setCursor(0, 0);
lcd.print("Fanta");
lcd.clear();
}
else
if (newPos == 2)
{
lcd.setCursor(0, 0);
lcd.print("Sprite");
delay(10);
lcd.clear();
}
else
if (newPos == 3)
{
lcd.setCursor(0, 0);
lcd.print("Whisky");
lcd.clear();
}
}
Wenn du die zwei Zeilen vertauscht, flackert es etwas, bleibt aber lesbar.
Wenn du lcd.clear() weglässt, stattdessen an die Stelle positionierst, wo das Wort erscheinen soll, flackert es nicht mehr.
Im Zweifelsfall noch ein paar Leerzeichen ausgeben, wenn auch mal längere Worte wieder durch "Cola " ersetzt werden sollen.
Und nur dann was ausgeben, wenn eine Änderung erkannt wurde.
michael_x:
Wenn du die zwei Zeilen vertauscht, flackert es etwas, bleibt aber lesbar.
Wenn du lcd.clear() weglässt, stattdessen an die Stelle positionierst, wo das Wort erscheinen soll, flackert es nicht mehr.
Im Zweifelsfall noch ein paar Leerzeichen ausgeben, wenn auch mal längere Worte wieder durch "Cola " ersetzt werden sollen.
Und nur dann was ausgeben, wenn eine Änderung erkannt wurde.
Hey Michael, danke für deine Antwort. Das hat mir nun weiter geholfen bezüglich Leerzeichen hinzufügen. Habe nun nach jedem Getränk ein Leerzeichen am Ende hinzugefügt, nun kann ich auch flüssig hin und her drehen. Mich würde dennoch interessieren, ob eine Art Abfrage möglich ist?
Die Methode mit lcd.clear über den Namen eintragen hat nicht geklappt.. flackert trotzdem
lcd.clear(); hab ich auch überall entfernt. Nun sieht es so aus
gray23:
Danke dir Peter, werde ich mal später austesten! Mir ist nun wichtig ob es eine Art abfrage gibt damit der Bildschirm sauber erscheint ohne flackern.
Was verstehst du in diesem Zusammenhang "Abfrage" ?
Wenn du nur die Daten, die sich geändert haben, über die alten Daten drüber schreibst, dann flackert nix. Dabei unbedingt auf die Länge achten.