Jetzt habe ich mal ein Mini Programm geschrieben, das mir die über UART empfangenen Daten rx über meinen ATMEGA über tx an ein Terminalprogramm weitergibt.
Code:$regfile = "m168def.dat" $crystal = 18432000 $baud = 115200 Dim Rxdflag As Bit On Urxc Onrxd 'Interrupt auslösen, wenn volsändiges Zeichen geladen. Enable Urxc Enable Interrupts Do If Rxdflag = 1 Then 'flagauswertung bei empfangenen USART Byte Rxdflag = 0 Print Udr End If Loop Onrxd: Rxdflag = 1 Return End
Bekomme gerade aus meinem Atmega werte, die so nicht im CHR Datenblatt stehen.
Wenn ich meine Werte aus der udr einfach über die UART wieder ausgebe mit allen aktivierten achsen dann kommt das hier bei mir raus.
112
115
110
112
202
112
115
110
112
185
112
115
110
112
253
112
115
110
112
247
112
115
110
112
57
112
115
110
112
183
112
115
110
112
192
112
115
110
112
209
112
115
112, 115,110 ist laut Dateblatt "snp" der Datensatzanfang.
Danach kommen aber nur 2 Werte,dann wieder der neue Datensatzanfang.
Laut Datenblatt müsste snp, PT,N,alle Achsen also 8,und 2 Check Bytes gesendet werden.
merkwürdig...
Was mache ich falsch ?







Zitieren

Lesezeichen