batista156
28.10.2008, 22:25
Hallo,
ich habe ein Problem mit meinem Grafikdisplay es soll auf einen Text über den Uart empfangen und anschließend auf dem Display ausgeben. Dies funktoniert auch alles beim erste mal wenn ich allerdings den nächsten Text sende wird der Text nach rechts verschoben und ab der Mitte sind die Buchstaben dann auch in der Höhe verschoben. Ich weiß echt nicht was ich noch versuchen soll?
PS: Hab es auch schon mit der LCDAT funktion versucht doch diese kann irgendwie keine Variablen darstellen sondern nur fest vorgegebene Texte
Hier mein Code:
$regfile = "m16def.dat"
$crystal = 7372800
$lib "glcdKS108.lib"
$baud = 1200
Ddrc = &B11111111
Portc = &B11111111
Ddrd = &B11111111
Portd = &B11111111
Config Graphlcd = 128 * 64sed , Dataport = Portc , Controlport = Portd , Ce = 6 , Ce2 = 7 , Cd = 2 , Rd = 3 , Reset = 5 , Enable = 4 , Mode = 8
Dim S As String * 30 , Laenge As Byte , Laenge1 As Byte , Endbit As String * 1 , Text As String * 15
Enable Urxc
On Urxc Auslesen
Enable Interrupts
Gosub Showonlineradio
Do
If S <> "" Then Gosub Lesen
Loop
Lesen:
Laenge = Len(s)
Laenge1 = Laenge - 1
Endbit = Mid(s , Laenge , 1)
If Endbit = "$" Then
Text = ""
Text = Mid(s , 1 , Laenge1)
Goto Showonlineradio
End If
Return
Showonlineradio:
Cls
Locate 1 , 1
Lcd Text
S = ""
Text = ""
Return
Auslesen:
S = S + Chr(udr)
Return
ich habe ein Problem mit meinem Grafikdisplay es soll auf einen Text über den Uart empfangen und anschließend auf dem Display ausgeben. Dies funktoniert auch alles beim erste mal wenn ich allerdings den nächsten Text sende wird der Text nach rechts verschoben und ab der Mitte sind die Buchstaben dann auch in der Höhe verschoben. Ich weiß echt nicht was ich noch versuchen soll?
PS: Hab es auch schon mit der LCDAT funktion versucht doch diese kann irgendwie keine Variablen darstellen sondern nur fest vorgegebene Texte
Hier mein Code:
$regfile = "m16def.dat"
$crystal = 7372800
$lib "glcdKS108.lib"
$baud = 1200
Ddrc = &B11111111
Portc = &B11111111
Ddrd = &B11111111
Portd = &B11111111
Config Graphlcd = 128 * 64sed , Dataport = Portc , Controlport = Portd , Ce = 6 , Ce2 = 7 , Cd = 2 , Rd = 3 , Reset = 5 , Enable = 4 , Mode = 8
Dim S As String * 30 , Laenge As Byte , Laenge1 As Byte , Endbit As String * 1 , Text As String * 15
Enable Urxc
On Urxc Auslesen
Enable Interrupts
Gosub Showonlineradio
Do
If S <> "" Then Gosub Lesen
Loop
Lesen:
Laenge = Len(s)
Laenge1 = Laenge - 1
Endbit = Mid(s , Laenge , 1)
If Endbit = "$" Then
Text = ""
Text = Mid(s , 1 , Laenge1)
Goto Showonlineradio
End If
Return
Showonlineradio:
Cls
Locate 1 , 1
Lcd Text
S = ""
Text = ""
Return
Auslesen:
S = S + Chr(udr)
Return