Dazu brauchst du eine Interruptroutine.
Jedesmal wenn über RXD was in den Puffer ankommt dann musst du eine String Variable mit vordefinierter Länge befüllen und danach auswerten.
Das beigefügte Beispiel ist aus meinem Projekt und muss natürlich angepassr werden.
Ist nur ein Beispiel aber die Vorgehensweise ist gleich.
Schau ,mal in der Hilfe
MFG
Bertl
Code:
Enable Interrupts
Enable Urxc
On Urxc Onrxd
Dim S_cmd As String * 4 'für RS232
Dim B_cmd(5) As Byte At S_cmd Overlay 'Liegt auf der Adresse des Strings s! RS232
Dim N As Byte 'zähl variable RS232
Main:
If N > 3 Then 'Wenn String Komplett Empfangen
Select Case S_cmd
Case "PC01" '
Print "MC01";
Print "|"; ' + Chr(13);
Porta.4 = 1
Case "PC99"
Porta.4 = 0
Porta.5 = 0
Case "PC02"
Porta.5 = 1
Gosub Messen
Case Else
Print "MC99"; ' + Chr(13);
End Select
N = 0
S_cmd = " "
End If
Goto Main
'Interruptroutine für RS232
Onrxd:
Incr N
B_cmd(n) = Udr
Return
Lesezeichen