Die Ansteuerung muss wies schaut zu Fuß gemacht werden,
hab erste "Linien" darauf dargestellt bekommen,
die Löterei war etwas fummelig, aber machbar.
Habs mit nem Mega16 angesprochen, über SPI.
mein Testprogrämmchen für den Anfang:
Code:$regfile = "m16def.dat" $crystal = 16000000 $baud = 19200 Dim D_byte As Byte Dim Col As Byte Dim Page As Byte Dim Pointer As Byte Dim X_byte As Byte Dim Y_byte As Byte Ddrb = &B00011111 Config Spi = Hard , Interrupt = Off , Data Order = Msb , Master = Yes , Polarity = Low , Phase = 1 , Clockrate = 4 , Noss = 0 Spiinit '---------------------------------------------------------- ' LCD '---------------------------------------------------------- A Alias Portb.0 ' A0 Res Alias Portb.1 ' Reset Cs1 Alias Portb.2 ' CS Cs2 Alias Portb.3 ' /CS A = 1 Cs1 = 1 Cs2 = 0 Res = 0 Wait 2 Res = 1 A = 0 ' Initialisierung des LCD D_byte = &B10001100 ' Kontrast einstellen Spiout D_byte , 1 D_byte = &B10100010 ' LCD-Bias = 1/6 Spiout D_byte , 1 D_byte = &B10100001 ' gespiegelte Anzeige Spiout D_byte , 1 D_byte = &B00101111 ' integrierter Spannungswandler ein Spiout D_byte , 1 D_byte = &B10101111 ' Display ein Spiout D_byte , 1 D_byte = &B01000000 ' start Dispay line Spiout D_byte , 1 D_byte = 0 Waitms 50 X_byte = 1 A = 1 ' ########### Mainloop ######################################## Do Spiout X_byte , 1 Incr Pointer If Pointer > 120 Then Incr Page If Page > 7 Then Page = 0 Waitms 300 Shift X_byte , Left , 1 Incr X_byte If X_byte > 254 Then X_byte = 0 End If A = 0 D_byte = &B10110000 D_byte = D_byte Or Page ' select page Spiout D_byte , 1 D_byte = &B00000000 ' auf Startposition zurück Spiout D_byte , 1 Waitus 5 A = 1 Pointer = 0 End If Loop End








Zitieren

Lesezeichen