Information
1. The received Data field (8 bytes at most) is stored.
2. The received Identifier field is stored.
3. The value of the Free Running Timer at the time of the second bit of frame’s
Identifier field is written into the Mailbox’s Time Stamp field.
4. The received SRR, IDE, RTR, and DLC fields are stored.
5. The CODE field in the Control and Status word is updated (see Table 45-70 and
Table 45-71 in Section Message buffer structure).
6. A status flag is set in the Interrupt Flag Register and an interrupt is generated if
allowed by the corresponding Interrupt Mask Register bit.
The recommended way for CPU servicing (read) the frame received in an Mailbox is
using the following procedure:
1. Read the Control and Status word of that Mailbox.
2. Check if the BUSY bit is deasserted, indicating that the Mailbox is locked. Repeat
step 1) while it is asserted. See Section "Message Buffer Lock Mechanism".
3. Read the contents of the Mailbox. Once Mailbox is locked now, its contents won’t be
modified by FlexCAN Move-in processes. See Section "Move-in".
4. Acknowledge the proper flag at IFLAG registers.
5. Read the Free Running Timer. It is optional but recommended to unlock Mailbox as
soon as possible and make it available for reception.
The CPU should synchronize to frame reception by the status flag bit for the specific
Mailbox in one of the IFLAG Registers and not by the CODE field of that Mailbox.
Polling the CODE field does not work because once a frame was received and the CPU
services the Mailbox (by reading the C/S word followed by unlocking the Mailbox), the
CODE field will not return to EMPTY. It will remain FULL, as explained in Table
45-70 . If the CPU tries to workaround this behavior by writing to the C/S word to force
an EMPTY code after reading the Mailbox without a prior safe inactivation, a newly
received frame matching the filter of that Mailbox may be lost.
CAUTION
In summary: never do polling by reading directly the C/S word
of the Mailboxes. Instead, read the IFLAG registers.
Functional description
K20 Sub-Family Reference Manual, Rev. 1.1, Dec 2012
1154
Preliminary
Freescale Semiconductor, Inc.
General Business Information
