at the current project the traffic of the CAN bus should be monitored. Therefore all traffic should be forwarded via an ethernet connection.
The question now is, if it is possible to collect all the traffic with the CAN controller of the BF537.
The Hardware manual (p. 9-16) says a mailbox of the CAN controller can only receive a message if it has the right ID. Is my understanding right?
Or is there a way to ignore the ID?
I hope someone can give me a hint.
You can use enable "Acceptance Mask" feature of Blackfin CAN controller and set CAN_AMxxH/L registers accordingly to receive all CAN frames.
My current design in a BF536 uses AME and 11-bit standard frame. I would like to use the 29-bit extended frame to extend the message numbers but switch them on a frame by frame basis depending on the state of the IDE bit.
E.g. message ID 0x61 uses 11-bit BASEID and is decoded correctly into the correct mailbox.
message ID 0x1061 uses 29-bit EXTID and is not decoded correctly.
Mailboxes 0 to 7 are configured as 11-bit receivers with IDE = 0 and AME enabled with the mask registers BASEID set to 0x7FF.
Mailboxes 8 to 15 are configured as 29-bit receivers with IDE = 1 and AME enabled with mask registers BASEID set to 0x7FF, but mask EXTID = 0. This doesn't work I guess because bit 12 of message 0x1061 = 1 but the mask is 0.
So my question is can the receive mailboxes be configured to receive either 11-bit standard frames or 29-bit extended frames depending on the state of the IDE bit?