Hallo,
ich möchte 10 werte = 10 Byte von einem µC zum anderen senden.
Es sind immer 10 Werte und es sendet immer der selbe µC.
Am Anfang sende ich "250" als Start, dann die 10 DatenBytes und dann Wert "251"
Code:
Dim Test(10) As Byte 'als Array
Dim C As Byte
'---
Do
For C = 1 To 10
Test(c) = C 'fill array
Next
Print Chr(250); 'zum starten
Printbin Test(1) ; 10 'hier die Daten
Print Chr(251); 'Ende
Wait 2
Loop
End
Das funktioniert und ich kann die Daten am PC sehr schön sehen!
Nun der Empfang:
Wert 250 wird empfangen und setzt Variable N auf "0"
Bei jedem empfangenem Byte wird N um 1 hochgezählt
und "E_byte" wird in "Test(N)" übertragen.
Wird 251 empfangen soll die Variable z.B. "Test(3)" auf dem LCD angezeigt werden.
Leider wir nur T:T:T:T:T:T:T:T:T:T:T:T: angezeigt....
Was muss ich ändern?
Tobias
Code:
Dim N As Byte
Dim Test(10) As Byte 'als Array
'Für RS232:
On Urxc Onrxd 'Interrupt-Routine setzen
Enable Urxc 'Interrupt URXC einschalten
Enable Interrupts 'Interrupts global zulassen
Do
Loop
End
Onrxd:
Incr N
E_byte = Udr
Select Case E_byte
Case 250 : N = 0 'Empfang starten
Cls
Case 251 : Lcd "T:" ; Test(3) 'Empfang beenden
Case Else : Test(n) = E_byte
End Select
Return
Lesezeichen