Ich wollt das mit dem LCD Display auch mal ausprobiern.

Ich habe ein 27x4 Display, also mit zwei Kontrollern und E1 sowie E2

Dann habe ich mir mit etwas mühe die Initialisierung geschrieben und vier Zeichen. freu \/ nun möchte ich diese LCD.lib verwenden (oder ähnliches) um mir das arbeiten etwas zu erleichtern.

hier mein Bisheriger Code . jaja etwas lang, dafür aber übersichtlich
Code:
$regfile = "m8def.dat"
$crystal = 8000000

Ddrd = &HFF

Rs Alias Portd.0
Rw Alias Portd.1
E1 Alias Portd.2
E2 Alias Portd.3
D4 Alias Portd.4
D5 Alias Portd.5
D6 Alias Portd.6
D7 Alias Portd.7


Dim A As Byte


'--Hauptprogram-----------------


Waitms 150

Rs = 0                                                      'Interface auf 8-Bit setzen
Rw = 0
D7 = 0
D6 = 0
D5 = 1
D4 = 1
E1 = 1
nop
E1 = 0
Waitms 5

Rs = 0                                                      'Interface auf 8-Bit setzen
Rw = 0
D7 = 0
D6 = 0
D5 = 1
D4 = 1
E1 = 1
nop
E1 = 0
Waitus 40

Rs = 0                                                      'Interface auf 8-Bit setzen
Rw = 0
D7 = 0
D6 = 0
D5 = 1
D4 = 1
E1 = 1
nop
E1 = 0
Waitus 40

Rs = 0                                                      'Interface auf 4-Bit setzen
Rw = 0
D7 = 0
D6 = 0
D5 = 1
D4 = 0
E1 = 1
nop
E1 = 0
Waitus 40

Rs = 0                                                      'Interface auf 2 Zeilen setzen
Rw = 0
D7 = 0
D6 = 0
D5 = 1
D4 = 0
E1 = 1
nop
E1 = 0

Rs = 0
Rw = 0
D7 = 1
D6 = 0
D5 = 0
D4 = 0
E1 = 1
nop
E1 = 0
Waitus 40

Rs = 0                                                      'Display aus
Rw = 0
D7 = 0
D6 = 0
D5 = 0
D4 = 0
E1 = 1
nop
E1 = 0

Rs = 0
Rw = 0
D7 = 1
D6 = 0
D5 = 0
D4 = 0
E1 = 1
nop
E1 = 0
Wait 2

Rs = 0                                                      'Display löschen
Rw = 0
D7 = 0
D6 = 0
D5 = 0
D4 = 0
E1 = 1
nop
E1 = 0

Rs = 0
Rw = 0
D7 = 0
D6 = 0
D5 = 0
D4 = 1
E1 = 1
nop
E1 = 0
Waitms 2

Rs = 0                                                      'Kursor nach rechts wandern
Rw = 0
D7 = 0
D6 = 0
D5 = 0
D4 = 0
E1 = 1
nop
E1 = 0

Rs = 0
Rw = 0
D7 = 0
D6 = 0
D5 = 1
D4 = 0
E1 = 1
nop
E1 = 0
Waitms 2

Rs = 0                                                      'Display ein
Rw = 0
D7 = 0
D6 = 0
D5 = 0
D4 = 0
E1 = 1
nop
E1 = 0

Rs = 0
Rw = 0
D7 = 1
D6 = 1
D5 = 1
D4 = 0
E1 = 1
nop
E1 = 0
Waitus 40

Rs = 1                                                      'Ein zeichen H in den Speicher Schreiben
Rw = 0
D7 = 0
D6 = 1
D5 = 0
D4 = 0
E1 = 1
nop
E1 = 0

Rs = 1
Rw = 0
D7 = 1
D6 = 0
D5 = 0
D4 = 0
E1 = 1
nop
E1 = 0
Waitus 40

Rs = 1                                                      'Ein zeichen e in den Speicher Schreiben
Rw = 0
D7 = 0
D6 = 1
D5 = 1
D4 = 0
E1 = 1
nop
E1 = 0

Rs = 1
Rw = 0
D7 = 0
D6 = 1
D5 = 0
D4 = 1
E1 = 1
nop
E1 = 0
Waitus 40

Rs = 1                                                      'Ein zeichen l in den Speicher Schreiben
Rw = 0
D7 = 0
D6 = 1
D5 = 1
D4 = 0
E1 = 1
nop
E1 = 0

Rs = 1
Rw = 0
D7 = 1
D6 = 1
D5 = 0
D4 = 0
E1 = 1
nop
E1 = 0
Waitus 40

Rs = 1                                                      'Ein zeichen l in den Speicher Schreiben
Rw = 0
D7 = 0
D6 = 1
D5 = 1
D4 = 0
E1 = 1
nop
E1 = 0

Rs = 1
Rw = 0
D7 = 1
D6 = 1
D5 = 0
D4 = 0
E1 = 1
nop
E1 = 0
Waitus 40
Rs = 1                                                      'Ein zeichen o in den Speicher Schreiben
Rw = 0
D7 = 0
D6 = 1
D5 = 1
D4 = 0
E1 = 1
nop
E1 = 0

Rs = 1
Rw = 0
D7 = 1
D6 = 1
D5 = 1
D4 = 1
E1 = 1
nop
E1 = 0
waitus 40

End
dann abe ich folgendes geschrieben, doch ich habe dann immer nur zwei schwarze Balken.
Code:
$regfile="m8def.dat"
$crystal = 8000000


Config Lcd = 20 * 2
Config Lcdpin = Pin , E = Portd.2 , Rs = Portd.0 , Db7 = Portd.7 , Db6 = Portd.6 , Db5 = Portd.5 , Db4 = Portd.4

Cls
Lcd "test"

End
Gruß olaf