Up to 64 Rx Buffers and two Rx FIFOs can be configured in the Message RAM. Each Rx FIFO section can be configured to store up to 64 received messages. The structure of a Rx Buffer / FIFO element is shown in the table below. The element size can be configured for storage of CAN FD messages with up to 64 bytes data field via register RXESC.
| 31 |
30 |
29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| R0 |
E S I |
X T D |
R T R |
ID[28:0] | ||||||||||||||||||||||||||||
| R1 |
A N M F |
FIDX[6:0] |
F D F |
B R S |
DLC[3:0] | RXTS[15:0] | ||||||||||||||||||||||||||
| R2 | DB3[7:0] | DB2[7:0] | DB1[7:0] | DB0[7:0] | ||||||||||||||||||||||||||||
| R3 | DB7[7:0] | DB6[7:0] | DB5[7:0] | DB4[7:0] | ||||||||||||||||||||||||||||
| ... | ... | ... | ... | ... | ||||||||||||||||||||||||||||
| Rn | DBm[7:0] | DBm-1[7:0] | DBm-2[7:0] | DBm-3[7:0] | ||||||||||||||||||||||||||||
R0 Bit 31 - ESI: Error State Indicator
0 : Transmitting node is error active.
1 : Transmitting node is error passive.
R0 Bit 30 - XTD: Extended Identifier
Signals to the Host whether the received frame has a standard or extended identifier.
0 : 11-bit standard identifier.
1 : 29-bit extended identifier.
R0 Bit 29 - RTR: Remote Transmission Request
Signals to the Host whether the received fram is a data fram or a remote frame.
0 : Received frame is a data frame.
1 : Received frame is a remote frame.
R0 Bits 28:0 - ID[28:0]: Identifier
Standard or extended identifier depending on bit XTD. A standard identifier is stored into ID[28:18].
R1 Bit 31 - ANMF: Accepted Non-matching Frame
Acceptance of non-matching frames may be enabled via GFC.ANFS and GFC.ANFE.
0 : Received frame matching filter index FIDX.
1 : Received frame did not match any Rx filter element.
R1 Bits 30:24 - FIDX[6:0]: Filter Index
0-127 : Index of matching Rx acceptance filter element (invalid if ANMF = ‘1’).
R1 Bits 23:22 - Reserved
R1 Bit 21 - FDF: FD Format
0 : Standard frame format.
1 : CAN FD frame format (new DLC-coding and CRC).
R1 Bit 20 - BRS: Bit Rate Search
0 : Frame received without bit rate switching.
1 : Frame received with bit rate switching.
R1 Bits 19:16 - DLC[3:0]: Data Length Code
0-8 : CAN + CAN FD: received frame has 0-8 data bytes.
9-15 : CAN: received frame has 8 data bytes.
9-15 : CAN FD: received frame has 12/16/20/24/32/48/64 data bytes.
R1 Bits 15:0 - RXTS[15:0]: Rx Timestamp
Timestamp Counter value captured on start of frame reception. Resolution depending on configuration of the Timestamp Counter Prescaler TSCC.TCP.
R2 Bits 31:24 - DB3[7:0]: Data Byte 3
R2 Bits 23:16 - DB2[7:0]: Data Byte 2
R2 Bits 15:8 - DB1[7:0]: Data Byte 1
R2 Bits 7:0 - DB0[7:0]: Data Byte 0
R3 Bits 31:24 - DB7[7:0]: Data Byte 7
R3 Bits 23:16 - DB6[7:0]: Data Byte 6
R3 Bits 15:8 - DB5[7:0]: Data Byte 5
R3 Bits 7:0 - DB4[7:0]: Data Byte 4
...
Rn Bits 31:24 - DBm[7:0]: Data Byte m
Rn Bits 23:16 - DBm-1[7:0]: Data Byte m-1
Rn Bits 15:8 - DBm-2[7:0]: Data Byte m-2
Rn Bits 7:0 - DBm-3[7:0]: Data Byte m-3