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
Klarer als im Datenblatt kann mans kaum beschreiben. Nochmal lesen und drüber nachdenken. MfG Falk
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.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.