Befedo
23.12.2009, 19:48
Hallo Jungs, ich brauch mal wieder eure Hilfe...
Und zwar möchte ich mit einem Terminalprogramm, über RS-232 ein Bit im Controller setzten bzw. rücksetzen.
Hier erstmal der Code:
$regfile = "m32def.dat"
$crystal = 16000000
$baud = 9600
$hwstack = 32
$framesize = 32
$swstack = 32
Dim Stehen As Byte
Stehen.0 = 0
Do
Dim A As Integer , B As Integer
A = 0
B = 0
A = Ischarwaiting()
If A = 1 Then
B = Inkey()
Print "Inkey: " ; B
Select Case B
Case 48 : Stehen.0 = 0
Case 49 : Stehen.0 = 1
End Select
End If
If Stehen.0 = 1 Then
Call ... 'Sub welches dann gestartet werden soll
End If
Loop
Wie gesagt, zuerst wird das Byte deklariert und auch gleich gesetzt (hatte es auch schon mit dem SET Befehl im Bascom versucht).
Je nachdem, welcher CHAR nun im Puffer des UART abgelegt wird, sollte nun die Routine gestartet werden oder nicht.
Wie es auch nicht anders zu erwarten ist, Funktioniert der Code so nicht und meine Erfahrungen in der Richtung sind eher Dünn gesät. Ich vermute, das irgendwas in der Kommunikation zwischen PC und UART nicht passt. Terminal Programm läuft und auch das Flaschen mittels Bootloader geht, PRINT Befehle kommen auch an.
Deshalb meine Frage an euch, wie man es zum Laufen bringen könnte, bzw. was falsch ist.
Danke für eure Hilfe!
Und zwar möchte ich mit einem Terminalprogramm, über RS-232 ein Bit im Controller setzten bzw. rücksetzen.
Hier erstmal der Code:
$regfile = "m32def.dat"
$crystal = 16000000
$baud = 9600
$hwstack = 32
$framesize = 32
$swstack = 32
Dim Stehen As Byte
Stehen.0 = 0
Do
Dim A As Integer , B As Integer
A = 0
B = 0
A = Ischarwaiting()
If A = 1 Then
B = Inkey()
Print "Inkey: " ; B
Select Case B
Case 48 : Stehen.0 = 0
Case 49 : Stehen.0 = 1
End Select
End If
If Stehen.0 = 1 Then
Call ... 'Sub welches dann gestartet werden soll
End If
Loop
Wie gesagt, zuerst wird das Byte deklariert und auch gleich gesetzt (hatte es auch schon mit dem SET Befehl im Bascom versucht).
Je nachdem, welcher CHAR nun im Puffer des UART abgelegt wird, sollte nun die Routine gestartet werden oder nicht.
Wie es auch nicht anders zu erwarten ist, Funktioniert der Code so nicht und meine Erfahrungen in der Richtung sind eher Dünn gesät. Ich vermute, das irgendwas in der Kommunikation zwischen PC und UART nicht passt. Terminal Programm läuft und auch das Flaschen mittels Bootloader geht, PRINT Befehle kommen auch an.
Deshalb meine Frage an euch, wie man es zum Laufen bringen könnte, bzw. was falsch ist.
Danke für eure Hilfe!