Moin zusammen, ich möchte CAN auf dem STM32F103RB zum Laufen bekommen. Dazu nutze ich derzeit die Loopback Funktion, d.h. das LBKM Bit im CAN_BTR Register steht auf 1. Ich konfiguriere einen Slot im Akzeptanzfilter, dass nur der Identifier 0x4711 durch kann. Nun sende ich einen Frame mit 8 Byte und ID 0x4711. Er wird auch soweit wohl gesendet, das TXRQ Bit in CAN_TI0R wird von der Hardware wieder auf 0 gesetzt. Die SW springt in die Empfangs-ISR. Im Debugger sehe ich, dass über FIFO 0 ein Frame empfangen wurde. Die 8 Byte Payload stimmen mit den gesendeten ein, DLC ist auch korrekt. Aber CAN_RI0R ist 0! Da müsste jetzt im Feld für den Identifier ja 0x4711 drin stehen. ich habe den Akzeptanzfilter auch schon so konfiguriert, dass alles durch darf: gleicher Effekt. Hat da jemand eine Erklärung für? Auf LPC1768 habe ich CAN problemlos am Laufen... thanx, Arne
Keiner ne Idee? Anbei mal ein Screenshot vom IAR Debugger. Grün: der gesendete Frame Orange: der empfangene Frame Violett: Akzeptanzfiler
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.