also ich habe selber auch noch gesucht.
Frage: Wenn ich beim Sender das so mache wie hier und mit Starbyte und Checksum arbeite funktioniert das so?
Code:
$regfile = "m8def.dat"
$crystal = 3686400
$baud = 9600
Dim Header As Byte at &H0060 'feste SRAM Adresse zuweisen
Dim Tank As Byte at &H0061
Dim Eu As Word at &H0062
Dim Tanum As Long at &H0064
Dim Gosetup As Byte at &H0068
Dim Dfmimpulse As Long at &H0069
Dim Stb As Byte 'Startbyte
Dim C As Byte 'Checksum
Dim B(12) As Byte At Header Overlay 'der Bytestream der 12 Bytes
Dim D As Byte 'Zähler
'----------------
'Hauptschleife Daten sammeln, wenn alle da dann Sub und senden
'---------------------------
Datensenden:
Stb = 15
C = 0
B(12)
For D = 1 To 12
C = C Xor B(d)
Next
Printbin Stb ; B(12) ; C
Return
Beim Sender hab ich es so gedacht. Nur wie bekomme ich die Einzelnen Variablen wieder aus dem Byte- Stream raus??
Empfänger:
Code:
$regfile = "m8def.dat"
$crystal = 3686400
$baud = 9600
Dim Tank As Byte
Dim Eu As Word
Dim Tanum As Long
Dim Gosetup As Byte
Dim Dfmimpulse As Long
Dim A As Byte
Dim C As Long
Dim B(12) As Byte
Dim D As Byte
Do
If Ischarwaiting() = 1 Then Gosub Empfang
If D = 7 Then Gosub Auswertung
D = 0
C = 0
Loop
'----------------------------------
'Sub
'-----------------------------------
Empfang:
A = Inkey()
Locate 4 , 12
Lcd Chr(3)
If D > 0 Then Goto Empfang2
If A = 15 Then Incr D
Return
Empfang2:
If D < 13 Then B(d) = A
C = C Xor A
Incr D
Return
Auswertung:
If C <> 0 Then
D = 0
C = 0
Return
End If
????= Tank
???? = Euneu
???? = Tvnum
???? = Gosetup
???? = Dfmimpulse
D = 0
C = 0
Return
Das ausdrönseln der einzelnen Variablen aus dem Stream ist mir nicht klar.
Gruß
Markus
Lesezeichen