Forum: Mikrocontroller und Digitale Elektronik LCD KS0066U Initialisierung im 4 Bit Mode


von Cs_ E. (cs_explorer)


Lesenswert?

Hallo Leute,

ich möchte gerne ein LCD (2x16 Zeichen) in Assembler und im 4Bit Modus 
ansteuern.(AVR mega16)

Hab mir das Tutorial angesehen und bis auf die dortige lcd_init: 
eigentlich alles verstanden. (das mit den 3x Ausführen und dem 
Kommentaren ...noch was einstellen... ist mir schleierhaft)

Dann hab ich mir das Datenblatt zu diesem Controller besorgt.
Auf Seite 27 ist eine Grafik zur Initialisierung doch die versteh ich 
auch nicht so ganz. Kann mir da jemand helfen?

Würde gerne genau wissen welche schritte ich durchführen muss.

Vielen Dank schonmal

von Falk (Gast)


Lesenswert?

Klarer als im Datenblatt kann mans kaum beschreiben. Nochmal lesen und 
drüber nachdenken.

MfG
Falk

von Jörn P. (jonnyp)


Lesenswert?

Der Fehler der meistens gemacht wird, ist einen AVR mit 16 MHz zu 
betreiben und direkt auf ein LCD schreiben zu wollen. Schau dir im 
Datenblatt am Ende mal die Zeiten für den E-Puls an, teilweise 1 µs 
minimum. Das heißt, du kannst nicht einfach die E-Leitung hi und gleich 
wieder lo setzen, weil das LCD da tempomäßig nicht mitkommt. Deshalb 
werden Wartezeiten, im einfachsten Fall NOP´s eingeschoben. Lass deinen 
MC mal mit 1 MHz laufen und druck dir die Steuercodes und Timing 
diagramme aus. In den Tabellen steht sogar noch drin, ob die RS- 
bzw.RW-Leitung hi oder lo sein müssen.
Das Tutorial hier gibt dir ja schon fast fertigen code vor.

von Cs_ E. (cs_explorer)


Lesenswert?

jo... danke für den Beitrag Jörg.

Mein Problem lag/liegt an der Initialisierung.
Aber ich glaube ich bin kurz davor es zum laufen zu bekommen.

Den Code aus dem Tut hab ich mir ganz genau angeschaut,
kam nur mit dem init nicht ganz klar. Ich mach das ja zum
ersten mal... Danke werde auf das Timing achten ;-)

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
Noch kein Account? Hier anmelden.