Hallo zusammen,
das Thema ist zwar schon etwas älter aber vielleicht haben ja noch andere ein Problem bei der Inbetriebnahme?
Ich habe mein Display an einen Mega 8 angeschlossen und das Programm on http://www.mkprojekt.de/index.php/content/view/2/2/ aufgespielt.
Code:
$regfile = "m8def.dat"
$crystal = 4000000
Config Portc = Output
Declare Sub Ukommando(byval Wert As Byte)
Declare Sub Udata(byval Wert As Byte)
Declare Sub Initialisierung
Declare Sub Lcdloeschen
Config Spi = Hard , Data Order = Msb , Master = Yes , Polarity = Low , Phase = 0 , Clockrate = 4
Dc Alias Portc.0
Ce Alias Portc.5
Re Alias Portc.2
Re = 0 'Reset
Waitus 250
Re = 1
Spiinit 'Initialisierung der SPI-Schnittstelle
Do
Portc.4 = 1
Initialisierung
Lcdloeschen
Udata &H7F
Udata &H02
Udata &H04
Udata &H02
Udata &H7F
Udata &H00
Portc.4 = 0
Wait 2
Loop
Sub Initialisierung
Ukommando &H21 'Erweiterter Kommando-Mode
Ukommando &HC8
Ukommando &H06
Ukommando &H13
Ukommando &H20 'Wieder in den normalen Kommando-Mode
Ukommando &H0C
End Sub
Sub Lcdloeschen
Local I As Word
Ukommando &H20 'Normaler Kommando-Mode
Ukommando &H0C 'Normaler Bildschirm
Ukommando &H80 'Setze RAM-Adresse auf 0
Dc = 1 'Sicherstellen, dass man im Daten-Mode ist
For I = 0 To 503
Udata &H00
Next
End Sub
'------------------------------------------------------------------------------
Sub Ukommando(byval Wert As Byte)
Dc = 0 'in den Kommando-Mode
Spiout Wert , 1
Dc = 1 'zurück in den Daten-Mode
End Sub
Sub Udata(byval Wert As Byte)
Dc = 1 'um sicher zu gehen, dass man auch wirklich im Datenmode ist
Ce = 0
Spiout Wert , 1
Ce = 1
End Sub
Das Display zuckt kurz wenn ich Spannung anlege oder wegnehme. Ich bin mir bei den Widerständen etwas unsicher da zu diesen keine Werte ngegeben waren.
Hat jemand ne Idee wie es richtig sein muss?
Tobias
Lesezeichen