14.10.1.1 Reading a Receive Message Object

Before reading a receive message object, the application must ensure that the RX FIFO is not empty by reading the CxFIFOSTAx register. The RX FIFO is not empty if TFNRFNIF is set.

The RX FIFO user address (CxFIFOUAx) points to the RAM of the next receive message object to read. R0 of the receive message object is read first, followed by R1, R2 and so on.

After the receive message object is read from RAM, the RX FIFO needs to be incremented by setting the UINC bit (CxFIFOCONx[8]). This will make the CAN FD Protocol module increment to the tail of the FIFO and update CxFIFOUAx.

Now the application can read the next message from the RX FIFO.

Table 14-12. Receive Message Object
WordsBitsBit 31/23/15/7Bit 30/22/14/6Bit 29/21/13/5Bit 28/20/12/4Bit 27/19/11/3Bit 26/18/10/2Bit 25/17/9/1Bit 24/16/8/0
R031:24SID11EID[17:6]
23:16EID[12:5]
15:8EID[4:0]SID[10:8]
7:0SID[7:0]
R131:24
23:16
15:8FILHIT[4:0]ESI
7:0FDFBRSRTRIDEDLC[3:0]
R231:24RXMSGTS[31:24]
23:16RXMSGTS[23:16]
15:8RXMSGTS[15:8]
7:0RXMSGTS[7:0]
R331:24Receive Buffer Data Byte 3
23:16Receive Buffer Data Byte 2
15:8Receive Buffer Data Byte 1
7:0Receive Buffer Data Byte 0
R431:24Receive Buffer Data Byte 7
23:16Receive Buffer Data Byte 6
15:8Receive Buffer Data Byte 5
7:0Receive Buffer Data Byte 4
Ri31:24Receive Buffer Data Byte n
23:16Receive Buffer Data Byte n-1
15:8Receive Buffer Data Byte n-2
7:0Receive Buffer Data Byte n-3
bit R0.31-30Unimplemented: Read as ‘x’
bit R0.29SID11: In FD mode, the standard ID can be extended to 12 bit using r1.
bit R0.28-11EID[17:0]: Extended Identifier
bit R0.10-0SID[10:0]: Standard Identifier
bit R1.31-16Unimplemented: Read as ‘x’
bit R1.15-11FILHIT[4:0]: Filter Hit, number of filter that matched
bit R1.10-9Unimplemented: Read as ‘x’
bit R1.8

ESI: Error Status Indicator

1 = Transmitting node is error passive.

0 = Transmitting node is error active.

bit R1.7FDF: FD Frame; distinguishes between CAN and CAN FD formats.
bit R1.6BRS: Bit Rate Switch; selects if data bit rate is switched.
bit R1.5RTR: Remote Transmission Request; not used in CAN FD.
bit R1.4IDE: Identifier Extension Flag; distinguishes between base and extended format.
bit R1.3-0DLC[3:0]: Data Length Code
bit R2.31-0RXMSGTS[32:0]: Receive Message Timestamp