Gibt es eigentlich einen Trick wie ich das flackern wegbekomme, wenn ich ein Standart LCD Display zuerst lösche und dann einen neuen Text ausgebe? Also das Display wird in einer Endlos-Schleife zuerst gelöscht und dann mit einem neuen Text beschrieben. Das Busybit werte ich schon aus.
Nicht löschen. Statt Löschbefehl nur die Schreibposition auf Links oben setzen und dann vollständig neu beschreiben. Gruss Jadeclaw.
Wenn jetzt aber mein neuer Text kürzer als der alte Text ist, dann bleiben ja immer noch ein paar Zeichen des alten Textes stehen. Oder soll ich dann das komplete LCD mit Leerzeichen füllen?
Den sichtbaren Rest des Bildspeichers mit Leerzeichen füllen. Gruss Jadeclaw.
Die Texte so organisieren, dass sie alle gleich lang sind und die benötigten Leerzeichen enthalten. Eventuelle Zahlen so formatieren, dass sie immer gleichlang sind (also mit Führungsnullen oder Führungsleerzeichen). Display-Clear nur bei der Initialisierung aufrufen, später im Programm macht sich das Ausgeben von Leerzeichen besser (ist schneller und flackert nicht, stört auch nicht die byteweise Zeichenausgabe aus dem LCD-Ringbuffer im Timer-Interrupt). Aus dem selben Grund statt LCD-Home lieber die Ausgabeposition (Set DD-RAM-Adress) auf 0 setzen. ...
Oder einfach virtuell im RAM ein Display erzeugen, in das du schreibst und später alles Zeichen für Zeichen (mit eventuellen Leerzeichen) ins Display übertragen. Es reicht ja meistens, alle 300ms alles zu übertragen, oder wenn man grad nichts zu tun hat.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.