Hallo Habe ein 204A-Display von Displaytech an einen AT90S8535 angeschlossen. In mein Programm hab ich ne Funktion übernommen, die vorher schon von jemand getestet wurde und funktionierte. Anfangs hatte ich das Problem, daß das Display manchmal wahrlos Zeichen ausgegeben hat. Habe dann mit dem Datenblatt das Timing etwas verändert, danach funtionierte es problemlos für genau 10 Tage. Heute trat das gleiche Problem wieder auf, aber nicht, daß es nur manchmal passierte sondern ständig. Kann mir jemand weiterhelfen?
Hi Swen, betreibst Du das Disply im 4-Bit-Mode oder im 8-Bit-Mode? Im 4-Bit-Modus kann man gravierende Fehler beim Initialisieren machen. Danach kann man ewig suchen (wie ich). 4-Bit: _long_delay(); _long_delay(); _lcd_write_4bit(0x03); // noch 8 Bit-Mode _long_delay(); _lcd_write_4bit(0x03); // noch 8 Bit-Mode _long_delay(); _lcd_write_4bit(0x03); // noch 8 Bit-Mode _long_delay(); _lcd_write_4bit(0x02); // jetzt 4 Bit-Mode _long_delay(); _lcd_write_data(0x28); // 4 Bit Zweizeilig _long_delay(); _lcd_write_data(0x08); // Display aus _long_delay(); _lcd_write_data(0x01); // Clear _long_delay(); _lcd_write_data(0x06); //Entry mode _long_delay(); _lcd_write_data(0x08 + 4); // Display an _long_delay(); //++++++++++++++++++++++++++++++++++++++++++++++ Und 8-Bit: void lcd_init(void) { _long_delay(); _lcd_write_data(0x38); // 8-Bit:0x38 _long_delay(); _lcd_write_data(0x38); _long_delay(); _lcd_write_data(0x02); _long_delay(); _lcd_write_data(0x06); _long_delay(); _lcd_write_data(0x0c); _long_delay(); _lcd_write_data(0x10); _long_delay(); _lcd_write_data(1); // clear LCD _long_delay(); } Viel Erfolg, Holger
Hallo Kann es sein das es nicht initialisiert ist? z.b. im laufenden Betrieb abgesteckt worden oder Kontaktfehler. Du könntest das LCD ja öfter neu initialisieren. Wenn ich Probleme hatte dann war es ein Timingroblem oder eine Neuinitialisierung notwendig. Verwendest das BUSYflag?
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.