Alles gut ein nicht initialisiertes LCD muss immer in der ersten Zeile eine Balken haben, deshalb hab ich drüber hinweg geschaut siehe weiter oben.
Wenn denn nur R/W grounden. RS ist für das Schreiben auf dem LCD notwendig.
Rein für die Init könnte man das so machen bleibt die Frage der Entrprellung der Taster/Schalter was es wahrscheinlich scheintern lässt.
Danke für die Bilder. Und prüfe Leitungen oder Stecklöcher auf dem Board...
So hoffe ich das dir folgendes weiterhilft
Das "Ur-LCD" auf dem auch dei KS0077/67 usw angelehnt sind hat Seite 39 des HD44780 foglenden Hinweis:
"4-bit operation, 8-digit ´ 1-line display with internal reset
The program must set all functions prior to the 4-bit operation (Table 12). When the power is turned on,
8-bit operation is automatically selected and the first write is performed as an 8-bit operation. Since
DB0 to DB3 are not connected, a rewrite is then required. However, since one operation is completed in
two accesses for 4-bit operation, a rewrite is needed to set the functions (see Table 12). Thus, DB4 to
DB7 of the function set instruction is written twice."
Ich muss zugeben das habe ich das letzte mal vor 5/6 Jahren gelesen nachdem ich mir dann meine 8-Bit-Erweiterung mit nem Schieberegister gebaut habe um Pins zu sparen. Seit dem hatte ich 4bit nie wieder angefasst weil dort einfach zuviele Fehlinterpretation möglich sind. Gerade in Eng wenn man da nicht sattelfest ist.
Musste mir mein Board nochmal schnappen und es für den 4bit-Mode aufbauen was schief geht... Die Routine sollte eigentlich sofort bei dir funktionieren wenn folgende Bedigungen eingehalten sind
Takt 1Mhz eingestellt wenn
CLKDIV8 = Haken raus
!!!!!!!!!!!!
Jetzt VORSICHTIG wirklich drauf achten das folgende Einstellung gewählt ist
SUT_CKSEL = Int. RC. Osc. 8Mhz.... egal was oder Ext. Crystal 0,9-3Mhz.... egal was
Finger WEG von Ext. CLOCK der Chip lässt sich nur dann durch anlegen eines externen Taktes in den Fues umstellen!!!
!!!!!!!!!!!!
KONTRAST BISSCHEN STÄRKER EINSTELLEN
RW = GND
RS/E = vom Crontroller wie gehabt
DB0-DB3 = offen da sie eh in Tristate geschaltet werden
DB4-DB7 = vom Controller wie gehabt
Wenn LCD i.O. sollte jetzt Texte in beiden Zeilen zeilen erschienen.
Sollte dein LCD nach ca 5s, ohne das du Einstellungen verändert hast, nur wieder einen Balken in der Zeile 1 haben ist es defekt.
Lesezeichen