I am having a hard time understanding how the matching process works on the CAN peripherals for the KE18F processor when the FIFO is disabled.
I set up the Rx mailbox ID to 0x1A5, then set the CODE field to EMPTY.
I would expect that packets with ID 0x1A5 would only show up in the mailbox, but it seems to accept any ID.
I've read section 50.5.4 of the reference manual, and it seems pretty straight forward, but it just doesn't seem to work.
Hi,
Pls refer to the section 50.4.5 Rx Mailboxes Global Mask Register (CANx_RXMGMASK) in RM of KE1xF.
The CANx_RXMGMASK function for mailbox0~13 if CAN_MCR[IRMQ] bit is asserted,
Each mask bit masks the corresponding Mailbox filter field:
0 The corresponding bit in the filter is "don’t care."
1 The corresponding bit in the filter is checked.
In conclusion, pls set the CANx_RXMGMASK bits, so the RX ID in the mailbox will take effect.
Hope it can help you
BR
XiangJun Rong