Zitat von
Tido
Hast du an Pin 3 vom Display den Schleifer eines Potis angeschlossen?
Sind nach dem Anlegen der Betriebsspannung am Display in Zeile 2 und 4 dunkle Balken sichtbar?
So ich hab jetzt mal R/W nach Groung gelegt und diesen Code benutzt:
Ja hab ich so angeschlossen und es sind keine dunklen Balken sichtbar. Das Programm funktioniert nun soweit und das mit dem R/W Ground mach ich morgen. Melde mich dann morgen mittag nochmal.
Code:
$regfile = "m32def.dat"
$crystal = 16000000
Config Lcd = 20 * 4a
Dim Zeichen As Byte
Declare Sub Lcdwrite
'Pins des LCD-Modules setzen ggf. an eigene Anschlüsse anpassen
Config Lcdpin = Pin , Db4 = Portd.0 , Db5 = Portd.1 , Db6 = Portd.2 , Db7 = Portd.3 , E = Portd.5 , Rs = Portd.4
Initlcd
Call Lcdwrite(&B00101100)
Waitms 5
Call Lcdwrite(&B00001001)
Waitms 5
Call Lcdwrite(&B00101000)
Waitms 5
Call Lcdwrite(&B00000110)
Waitms 5
Call Lcdwrite(&B00001100)
Waitms 5
Cls
Locate 1 , 1
Lcd "Hallo Welt"
'Schreibt die Initialisierungs - Bits zum LCD
Sub Lcdwrite(byval Zeichen As Byte)
' Höherwertiges Nibble setzen
If Zeichen.4 = 1 Then Portc.4 = 1 Else Portc.4 = 0
If Zeichen.5 = 1 Then Portc.5 = 1 Else Portc.5 = 0
If Zeichen.6 = 1 Then Portc.6 = 1 Else Portc.6 = 0
If Zeichen.7 = 1 Then Portc.7 = 1 Else Portc.7 = 0
' Höherwertiges Nibble übertragen
Portc.3 = 1
Waitms 1
Portc.3 = 0
Waitms 1
' Niederwertiges Nibble setzen
If Zeichen.0 = 1 Then Portc.4 = 1 Else Portc.4 = 0
If Zeichen.1 = 1 Then Portc.5 = 1 Else Portc.5 = 0
If Zeichen.2 = 1 Then Portc.6 = 1 Else Portc.6 = 0
If Zeichen.3 = 1 Then Portc.7 = 1 Else Portc.7 = 0
' Niederwertiges Nibble übertragen
Portc.3 = 1
Waitms 1
Portc.3 = 0
Waitms 1
End Sub
Nun wird mir auf dem Display ein V mit Unterstrich und ein ê angezeigt. Ist das richtig so oder deutet das auf einen Fehler hin? *kopf kratz*
Lesezeichen