The same message format is used for RXFIFO, TXFIFO, and TXHPB. Each message includes four words (16 bytes). Software must read and write all four words regardless of the actual number of data bytes and valid fields in the message.
The message words, fields, and structure are shown in Table: CAN Message Format.
Table 20-3: CAN Message Format
Message Word Registers
Description
|
Bits
|
Bit Field
Name
|
Frame Types
Data
|
Remote
|
Frame Size
Standard
|
Extended
|
Default
Value
|
Identifier:
|
{RXFIFO, TXFIFO, TXHPB}_ID
|
|
|
|
|
|
|
|
Remote transmission request
|
0
|
[RTR]
|
= 0
|
= 1
|
NA, = 0
|
Applies
|
0
|
Extended message frame ID
|
18:1
|
[IDL]
|
Valid
|
Valid
|
NA
|
Applies
|
0
|
Identifier extension for frame size
|
19
|
[IDE]
|
Valid
|
Valid
|
= 0
|
= 1
|
0
|
Substitute remote transmission request
|
20
|
[SRRRTR]
|
= 0
|
= 1
|
Applies
|
NA, = 1
|
0
|
Standard message frame ID
|
31:21
|
[IDH]
|
Valid
|
Valid
|
Applies
|
Applies
|
0
|
Data Length Code (DLC):
|
{RXFIFO, TXFIFO, TXHPB}_DLC
|
|
|
|
|
|
|
|
Data length code, 0 to 8 bytes
|
31:28
|
[DLC]
|
Valid
|
Valid
|
Valid
|
Valid
|
0
|
Reserved
|
27:0
|
~
|
~
|
~
|
~
|
~
|
0
|
Timestamp (RXFIFO only)
|
15:0
|
[RXT]
|
|
|
|
|
|
Data Word 1:
|
{RXFIFO, TXFIFO, TXHPB}_DATA1
|
|
|
|
|
|
|
|
Data Byte 0
|
31:24
|
[DB0]
|
Valid
|
Valid
|
Valid
|
Valid
|
0
|
Data Byte 1
|
23:16
|
[DB1]
|
Valid
|
Valid
|
Valid
|
Valid
|
0
|
Data Byte 2
|
15:8
|
[DB2]
|
Valid
|
Valid
|
Valid
|
Valid
|
0
|
Data Byte 3
|
7:0
|
[DB3]
|
Valid
|
Valid
|
Valid
|
Valid
|
0
|
Data Word 2:
|
{RXFIFO, TXFIFO, TXHPB}_DATA2
|
|
|
|
|
|
|
|
Data Byte 4
|
31:24
|
[DB4]
|
Valid
|
Valid
|
Valid
|
Valid
|
0
|
Data Byte 5
|
23:16
|
[DB5]
|
Valid
|
Valid
|
Valid
|
Valid
|
0
|
Data Byte 6
|
15:8
|
[DB6]
|
Valid
|
Valid
|
Valid
|
Valid
|
0
|
Data Byte 7
|
7:0
|
[DB7]
|
Valid
|
Valid
|
Valid
|
Valid
|
0
|