Content originally posted in LPCWare by Mesozoic on Tue Oct 15 16:40:20 MST 2013
I just figured this out. The documentation isn't great, that's for sure. This took a lot of trial and error.
Basically, in order to configure a receive CAN messages, you have to set it up with the msgobj number, the mode_id, and the mask.
Say for example you want to be able to receive all CAN messages with the following IDs: 00000EE4, 00010EE4, 00020EE4, 00030EE4, 00040EE4, and 00050EE4.
Set your mode_id = 0x00000EE4UL. Since these are extended 29-bit messages, make sure mode_id |= CAN_MSGOBJ_EXT.
Set your mask = 0x00027FFFUL.
Now your CAN_rx() callback should trigger.