Hallo, ich habe ein Problem und hoffe ihr könnt mir helfen. Ich versuche über meinen Controler ein LCD Display anzusteuern. Die Initialisierung funktioniert auch gut. Wenn ich jetzt einen oder mehrere Buchstaben auf das Display schreiben will, zeigt er Sie erst nicht an, wenn ich den MC reset, steht auf einmal der Text auf dem Display. Auch komisch fand ich wenn ich die buchstaben ausgabe mittels einer for-schleife machen wollte, das dann hinterher das ganze lcd ausgefüllt ist mit dem zu letzt ausgegebenen zeichen!?? Und das Programm lief immer in einer Endlosschleife, daher hab ich unten die While schleife eingefügt, damit er nicht von vorne beginnt. hatte in erinnerung das ich mit return 0; das programm normal beende, aber das tut er nicht er haut mir dann mein terminal-programm seiten weise zu mit dem text "Hallo.." den ich am anfang des Programms stehen haben. Der Code ist nicht lang, alsobraucht keine angst haben. Bedanke mich schonmal für euere Hilfe, mfg danny
Hallo, ein Blich in das Timing-Diagramm des Display-Controllers sollte offenbaren: Die Folge L-H-L an E sagt dem Display, daß es die Daten übernehmen soll. Daten, RS, RW MÜSSEN also schon stabil anliegen, BEVOR E auf H geht und stabil bleiben BIS E wieder auf L ist. Was macht Dein Programm an diesen Stellen? E auf H (hier erwarete das Display aber schon gültige Daten...) dann Daten raus (zu spät...), E auf L... Gruß aus Berlin Michael
Hallo, ich habe es so probiert wie du meinst! Aber es klappt genauso wenig. Im Daten Blatt setht RS,RW H und dann E auf H und dann müssen erst die daten anliegen und werden mit E auf L übernommen :( so wie in meinem programm!
Hallo, ok, variiert etwas in den Dokus. Beim HD44780 ist für die Zeit zwischen E auf H und Daten gültig keine Minimal-Zeit angegeben, nur die Maximal-Zeit von 160ns zwischen E auf H und Daten gültig. Wäre mir zu unsicher, ist aber wohl nicht die Ursache für Dein Problem... Was ist mit den Wartezeiten beim Init? Min. 15ms nach Erreichen der Betriebsspannung bevor das Display überhaupt ansprechbar ist? Rund 5ms zwischen dem Senden des ersten und des zweiten Kommandos? Scheint so, als wenn das Display das erste Init ignoriert, weil es zu früh beginnt und erst auf das nächste reagiert, wenn Du Reset machst? Gruß aus Berlin Michael
Also ich glaube die Initialisierung klappt. Denn wenn die Betriebspannung anliegt, ist in der ersten reihe nur kästchen zu sehen, nach der initialisierung sind die weg! Ich mein dann hat es doch geklappt, so hab ich es verstanden!
Weiß niemand eine Lösung? Das Problem mit der vorschleife hat sich übrigens erledigt!
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.