M
Michael Amann
Guest
Hallo,
ich versuche gerade einige LCDs mit dem HD44780
Controller anzusteuern und mir dafür meine C
Routinen für meinen AVR (Atmega 8 mit 4MHz Clock)
selbst zu schreiben. Ja, ja ich weiß es gibt im
Web unendlich viele Routinen zu Download. Aber
erstens ist mein Interface etwas anders und
zweitens möchte ichs halt einfach selber machen...
Nun, ich habe den Eindruck daß der Controller
zumindest bei der Initialisierung sehr große
Wartezeiten braucht um alles richtig zu
übernehmen. Das zeigt sich auch im Programmcode
anderer, die viel mit Warteschleifen und
Wiederholungen von Kommandos arbeiten. Laut den
Timingangaben in den Datenblättern sollte das aber
IMHO nicht so kritisch sein und immer irgendwo
<1ms bleiben (außer der Wartezeit nach dem Power
on). Hat jemand ähnliche Erfahrungen gemacht und
weiß welche Stellen besonders lange Wartezeiten
benötigen, welche Kommandos das sind, u.s.w.?
Die Programmierung sollte vom der Logik her
passen, denn ich hab den Ablauf mit dem Debugger
durchgetaktet. Wenn ich nach jeder Datenänderung
am Port einige ms Warte, scheint die
Initialisierung stabiler zu werden. Dennoch habe
ich den Eindruck, daß es mal klappt und dann mal
wieder nicht so richtig. Es sollte halt alles
nicht zu langsam werden und zum Schluß pro
Charakter mehrere Sekunden dauern ;-)
Hat jemand noch ein paar Ideen, Erfahrungen?
Gruß und danke
Michael
ich versuche gerade einige LCDs mit dem HD44780
Controller anzusteuern und mir dafür meine C
Routinen für meinen AVR (Atmega 8 mit 4MHz Clock)
selbst zu schreiben. Ja, ja ich weiß es gibt im
Web unendlich viele Routinen zu Download. Aber
erstens ist mein Interface etwas anders und
zweitens möchte ichs halt einfach selber machen...
Nun, ich habe den Eindruck daß der Controller
zumindest bei der Initialisierung sehr große
Wartezeiten braucht um alles richtig zu
übernehmen. Das zeigt sich auch im Programmcode
anderer, die viel mit Warteschleifen und
Wiederholungen von Kommandos arbeiten. Laut den
Timingangaben in den Datenblättern sollte das aber
IMHO nicht so kritisch sein und immer irgendwo
<1ms bleiben (außer der Wartezeit nach dem Power
on). Hat jemand ähnliche Erfahrungen gemacht und
weiß welche Stellen besonders lange Wartezeiten
benötigen, welche Kommandos das sind, u.s.w.?
Die Programmierung sollte vom der Logik her
passen, denn ich hab den Ablauf mit dem Debugger
durchgetaktet. Wenn ich nach jeder Datenänderung
am Port einige ms Warte, scheint die
Initialisierung stabiler zu werden. Dennoch habe
ich den Eindruck, daß es mal klappt und dann mal
wieder nicht so richtig. Es sollte halt alles
nicht zu langsam werden und zum Schluß pro
Charakter mehrere Sekunden dauern ;-)
Hat jemand noch ein paar Ideen, Erfahrungen?
Gruß und danke
Michael