Forum: Mikrocontroller und Digitale Elektronik CAN Register nimmt keine Werte auf - STM32F4


von Salomon D. (salomon_d)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

ich versuche gerade auf meinem STM32F4 den CAN2 über die GPIOs zum 
Laufen zu bringen. Tx und Rx Leitungen senden/empfangen und auf dem CAN 
Bus passiert auch etwas, allerdings nicht so wie ich es konfiguriert 
habe.

Nach Auslesen des CAN-Bus habe ich bemerkt, dass egal welche ID ich der 
Nachricht gebe, diese immer bei 0x7FE bleibt und die Daten auch nicht 
ankommen.
Ich konnte das Problem durch Debug auf die Übertragung der Daten in das 
Mailbox Register zurückführen. Obwohl die Daten richtig in die TxHeader 
und TxData Variablen eingelesen werden, konnte ich keine Aufnahme der 
Daten in die benötigten Register beobachten. Das CAN2 SFR TI0R sowie das 
TIR von der CAN2-Instanz verharren auf einem (vermutlichen) 
Default-Wert.

Beim Ausführen der Zeile

hcan->Instance->sTxMailBox[transmitmailbox].TIR = ((pHeader->StdId << 
CAN_TI0R_STID_Pos) | pHeader->RTR);

zum Beispiel passiert einfach nichts.
Alle Parameter sind aber eigentlich stimmig, habe Adresse und sonst was 
überprüft. Bei der Recherche habe ich auch gelesen, dass das Problem von 
einem falsch eingestellten Timer stammen könnte. Hab aber nochmal 
sichergestellt, dass alles Nötige initialisiert wird und richtig 
konfiguriert ist.

Ich hoffe, dass ich mich einigermaßen verständlich ausgedrückt habe und 
irgendjemand mir weiterhelfen kann. Im Anhang sind noch ein paar 
Screenshots von Register und Co.

Danke schonmal.

: Verschoben durch Moderator
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
Noch kein Account? Hier anmelden.