Forum: Mikrocontroller und Digitale Elektronik CAN Coldfire


von Anna S. (tasi)


Lesenswert?

Hallo,

weiß jemand ob die Nachrichten, die man über den CAN-Bus schickem möchte 
automatisch weggeschickt werden, wenn sie sich erst mal im dem CAN-Modul 
befinden, oder muss man dafür eine eigene Funktion schreiben.

Ich versuche mit dem Coldfire 52235 Nachrichten über den CAN zu 
schicken. Ich kann die Nachrichten auch schon in die Message Buffer 
schreiben, allerdings funktioniert das mit dem wegsenden noch nicht. 
Deswegen wollte ich mal Fragen ob ich vielleicht noch irgendwas 
einstellen muss, damit die Nachricht auch tatsächlich über den Bus 
geschickt wird.

Ich hoffe mit kann jemand helfen.

von Der Lesende (Gast)


Lesenswert?

Ja, du musst die bits zum Senden setzen.
Sofern du die Bitrate und eventuelle die Interruptfreigaben gesetzt 
hast.
Aber irgent jemand hat mal Datenblätter erfunden. Auch Beispielprogramme 
vom hersteller sind schohn erfunden. Ansonsten giebt es jede menge 
Opensource dafür wo mann mal nachschauen kann. Z.B can4linux.

ciao

von Anna S. (tasi)


Lesenswert?

Die bits zum Senden habe ich gesetzt. Nur sendet es immer noch nicht. Wo 
gibt es den Beispielprogramme für den Coldfire52235?

von jimbo (Gast)


Lesenswert?

Hallo,
als erstes musst du prüfen, ob die Initialisierung des FlexCan Moduls 
stimmt.
Einen Init file kann man sich recht einfach mit dem Tool CfInit von 
http://www.microapl.co.uk/Porting/freetools.html erzeugen.

Nach der Initialisierung kann eine Nachricht folgenermaßen verschickt 
werden (jedenfalls auf MCF523x):
(siehe auch Reference Manual 21.4.1 vom MCF5235):
1. Das Control/statuswort des Message Buffers über den gesendet werden 
soll auf "hold Tx inactive" setzen (Code 0x1000)
2. ID setzen
3. Daten Bytes setzen
4. Set DLC des Message Buffers
5. Das Control Status word auf active setzen (code 0x1100)

Hoffe, das hilft ein bisschen weiter...

von Anna S. (tasi)


Lesenswert?

Danke für die Antwort !

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.