Hi, Hab festgestellt dass bei meinem Electronic Assembly DOGM 162 EA, eine Zeile in der Mitte des Textes fehlt, wenn das LCD als einzeilig mit doppelter Schrifthöhe initialisiert wird. Oder auch vom 2-zeiligen moduls in den 1-zeiligen umgeschaltet wird. Die "double height" Position ist ja bei dem zweizeiligen LCD wurscht? Laut Sitronix Datenballt s.32 Display ist an 3.3V im 4-bit mode. Das verwendente Kommando: Functionset "0010 0101" ; 4-bit, 1-line, Double Height, instr. table "1" Was mach ich da verkehrt? Oder muss ich noch mehr Kommandos zum Umschalten verwenden? Gruss EBe
Verstehe ich nicht so ganz. Das 2-zeilige Diplay hat zwischen den Zeilen einen leeren Raum. Wenn man jetzt auf dopplete Höhe umschaltet, ist es doch normal das da dann zwischendrin was fehlt.
Hi Jörg, Prinzipiell ja, im Datenblatt des Controllers sind Beispiele und Bilder von Anzeigen wo das nicht so ist. Hängt natuerlich letztendlich vom LCD-Hersteller ab, ob das Feature verfuegbar ist, bzw. die LCD-Zellen so aufgebaut sind, dass kein Zwischenraum da ist. Gegens Licht gehalten hab ich allerdings den Verdacht, dass die Zwischenzeile tatsächlich nicht vorhanden ist. Hab grad festegestellt, das die untere Hälfte um ein Pixel nach rechts verschoben ist. Ich frage eignetlich nur, ob jemand mit den Displays Erfahrung hat. Wäre halt schön ein dreizeiliges Display zu nehmen, wo die obere Zeile "Klein" ist, um z.B. MIN und MAX Werte anzuzeigen und in der grossen unteren Zeile der ISTWERT. Gruesse EBE
etwas offtopic: könntest Du deinen Code zur Initialisierung posten? ich hab so meinen probleme damit. Thx FRank
Da es 3 verschiedenen Displays (1-zeilige 2-zeilige und 3-zeilige) zu kaufen gibt, besteht natürlich auch ein unterschied zwischen den dreien. Ansonsten hätte man sich die 3 Typen ja auch sparen können und wäre mit einem ausgekommen.
Hi! Tach Frank, Anbei ist mein LCD INIT-code in Assembler fuer PICs (frei nach SPRUT interpretiert) Streng ans Datenblatt halten und alles funktioniert, bei mir klappte auch ein uralter Code fuer ein HD44780 Display auf Anhieb. "InitLCD" enthält die eigentliche initialisierungsroutine. "Control8Bit" wird nur fuer die Initialisierung verwendet. "LcdBusy" fragt das busy Bit ab und dient als FlowControl (geht auch ohne, wenn du die Pausen streng einhälst) "OutLcdControl" dient um LCD-kommandos zu senden. "OutLcdDaten" dient um Text/Daten an das LCD zu senden. Die "Wait"-Schleife ist nicht im Codeanhang. Gruesse Ebe
hups, hab die Defines und Konstanten vergessen!
Hallo Ebe, danke für den Code - ans Datenblatt habe ich mich auch gehalten. ich fürchte mittlerweile, dass ich was bei der Kontrasteinstellung falsch gemacht habe. Ich hab es am ende sogar soweit getrieben, dass ich auch wieder vom Display-Controller gelesen habe, da ich mir nicht mal mehr sicher war ob das Teil überhaupt noch funktioniert. Frank
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.