LCD es ist vollbracht

8.1.2008

Abends

Es ist wieder einmal vollbracht (und das an einem Dienstag), das LCD Display arbeitet nun. Im INet habe ich eine Befehlssequenz gefunden. Die habe ich einfach an das Display gesendet und es funktioniert nun. Keine verschobenen Buchstaben mehr.

CON
DelayMS = 100 ‘Index der Taktzyklen für Blink-Verzögerung

VAR
byte index

DAT
lcdinit byte $34,$09,$30,$0c,$01,$06 ‘init bytes für 4×20 lcd display
PUB main

outa[11]:=1 ‘enable = high
dira[9..11]~~ ‘p9 – 11 = ausgang – LCD steuerleitungen
dira[16..23]~~ ‘p16 – 23 = ausgang – LCD 8 Bit Datenbus

outa[9..10]:=0 ‘rs=0 r/w=0=write

‘lcd display initialisierung

index:=0
repeat until index==6 ‘6 bytes ans lcd senden
outa[23..16]:=lcdinit[index]’byte an datenbus anlegen
outa[11]:=0 ‘enable=0=schreibe jetzt
outa[11]:=1 ‘enable wieder auf 1 setzen
index:=index+1 ‘index erhöhen

Nun kann ich endlich Subroutinen schreiben. Das mit dem [cref 70 falschen Zeichen ‘}’ am Ende jeder Ausgabe] lag an der falschen Bedienung des Enable Signals. Ich hatte es auf 1 gesetzt und dann wiederholt auf 0 und wieder auf 1 gesetzt. Es muss aber erstmal auf 0 und bei jedem Schreibvorgang kurz auf 1 und wieder auf 0 gesetzt werden.

Schreibe einen Kommentar