MCF548x Reference Manual, Rev. 3
21-20 Freescale Semiconductor
313029282726252423 22 21 20 191817161514131211109876543210
0x0 CODE SRR IDE RTR LENGTH TIME STAMP
0x4 Standard ID [28:18] Extended ID [17:0]
0x8 Data Byte 0 Data Byte 1 Data Byte 2 Data Byte 3
0xC Data Byte 4 Data Byte 5 Data Byte 6 Data Byte 7

Figure 21-12. Message Buffer Structure for Both Extended and Standard Frames

Table 21-13. Message Buffer Field Descriptions

Bits Name Description
31–28 Reserved, should be cleared. Should not be accessed by the CPU.
27–24 CODE Message buffer code. This 4-bit field can be accessed (read or write) by the CPU and by the
FlexCAN module itself, as part of the message buffer matching and arbitration process. The
encoding is shown in Table 21-14 and Table 21-15. See Section 21.4, “Functional Overview” for
additional information.
23 Reserved, should be cleared. Should not be accessed by the CPU.
22 SRR Substitute remote request. Fixed recessive bit, used only in extended format. It must be set to 1 by
the user for transmission (Tx Buffers) and will be stored with the value received on the CAN bus
for Rx receiving buffers. It can be received as either recessive or dominant. If FlexCAN receives
this bit as dominant, then it is interpreted as arbitration loss.
0 Dominant is not a valid value for transmission in Extended Format frames
1 Recessive value is compulsory for transmission in Extended Format frames
21 IDE ID extended bit. This bit identifies whether the frame format is standard or extended.
0 Frame format is standard
1 Frame format is extended
20 RTR Remote transmission request. This bit is used for requesting transmissions of a data frame. If
FlexCAN transmits this bit as 1 (recessive) and receives it as 0 (dominant), it is interpreted as
arbitration loss. If this bit is transmitted as 0 (dominant), then if it is received as 1 (recessive), the
FlexCAN module treats it as bit error. If the value received matches the value transmitted, it is
considered as a successful bit transmission.
0 Indicates the current MB has a data frame to be transmitted
1 Indicates the current MB has a remote frame to be transmitted
19–16 LENGTH Length of data in bytes. This 4-bit field is the length (in bytes) of the Rx or Tx data; data is located
in offset 0x8 through 0xF of the MB space (see Figure 21-12). In reception, this field is written by
the FlexCAN module, copied from the DLC (data length code) field of the received frame. DLC is
defined by the CAN Specification and refers to the data length of the actual frame before it is copied
into the message buffer. In transmission, this field is written by the CPU and is used as the DLC
field value of the frame to be transmitted.
When RTR = 1, the frame to be transmitted is a remote frame and will be transmitted without the
DATA field, regardless of the LENGTH field.
15–0 TIME
STAMP
Free-running counter time stamp. This field stores the 16-bit value of the free-running timer. The
timer value is captured at the beginning of the identifier field of the frame on the CAN bus.