50.9.18 CAN Message Status Register

These register fields are updated each time a message transfer is received or aborted.

Warning: The MRTR and MDLC states depend partly on the mailbox object type.
Name: CAN_MSRx
Offset: 0x0210 + x*0x20 [x=0..7]
Reset: 0
Property: Read/Write

Bit 3130292827262524 
        MMI 
Access R/W 
Reset 0 
Bit 2322212019181716 
 MRDYMABT MRTRMDLC[3:0] 
Access R/WR/WR/WR/WR/WR/WR/W 
Reset 0000000 
Bit 15141312111098 
 MTIMESTAMP[15:8] 
Access R/WR/WR/WR/WR/WR/WR/WR/W 
Reset 00000000 
Bit 76543210 
 MTIMESTAMP[7:0] 
Access R/WR/WR/WR/WR/WR/WR/WR/W 
Reset 00000000 

Bit 24 – MMI Mailbox Message Ignored (cleared by reading CAN_MSRx)

Mailbox Object Type Description
Receive Set when at least two messages intended for the mailbox have been sent. The first one is available in the mailbox data register. Others have been ignored. A mailbox with a lower priority may have accepted the message.
Receive with Overwrite Set when at least two messages intended for the mailbox have been sent. The last one is available in the mailbox data register. Previous ones have been lost.
Transmit Reserved
Consumer A remote frame has been sent by the mailbox but several messages have been received. The first one is available in the mailbox data register. Others have been ignored. Another mailbox with a lower priority may have accepted the message.
Producer A remote frame has been received, but no data are available to be sent.
ValueDescription
0 No message has been ignored during the previous transfer.
1 At least one message has been ignored during the previous transfer.

Bit 23 – MRDY Mailbox Ready (cleared by writing MTCR or MACR in CAN_MCRx)

An interrupt is triggered when MRDY is set.

Mailbox Object Type Description
Receive At least one message has been received since the last mailbox transfer order. Data from the first frame received can be read in the CAN_MDxx registers.

After setting CAN_MMR.MOT, MRDY is reset to 0.

Receive with Overwrite At least one frame has been received since the last mailbox transfer order. Data from the last frame received can be read in the CAN_MDxx registers.

After setting CAN_MMR.MOT, MRDY is reset to 0.

Transmit Mailbox data have been transmitted.

After setting CAN_MMR.MOT, MRDY is reset to 1.

Consumer At least one message has been received since the last mailbox transfer order. Data from the first message received can be read in the CAN_MDxx registers.

After setting CAN_MMR.MOT, MRDY is reset to 0.

Producer A remote frame has been received, mailbox data have been transmitted.

After setting CAN_MMR.MOT, MRDY is reset to 1.

ValueDescription
0 Mailbox data registers can not be read/written by the software application. CAN_MDx are locked by CAN_MDx.
1 Mailbox data registers can be read/written by the software application.

Bit 22 – MABT Mailbox Message Abort (cleared by writing MTCR or MACR in CAN_MCRx)

An interrupt is triggered when MABT is set.

Mailbox Object Type Description
Receive Reserved
Receive with Overwrite Reserved
Transmit Previous transfer has been aborted
Consumer The remote frame transfer request has been aborted.
Producer The response to the remote frame transfer has been aborted.
ValueDescription
0 The previous transfer is not aborted.
1 The previous transfer has been aborted.

Bit 20 – MRTR Mailbox Remote Transmission Request

Mailbox Object Type Description
Receive The first frame received has the RTR bit set.
Receive with Overwrite The last frame received has the RTR bit set.
Transmit Reserved
Consumer Reserved. After setting CAN_MMR.MOT, MRTR is reset to 1.
Producer Reserved. After setting the CAN_MMR.MOT, MRTR is reset to 0.

Bits 19:16 – MDLC[3:0] Mailbox Data Length Code

Mailbox Object Type Description
Receive Length of the first mailbox message received
Receive with Overwrite Length of the last mailbox message received
Transmit No action
Consumer Length of the mailbox message received
Producer Length of the mailbox message to be sent after the remote frame reception

Bits 15:0 – MTIMESTAMP[15:0] Timer Value

This field is updated only when time-triggered operations are disabled (CAN_MR.TTM cleared). If the field CAN_MR.TEOF is cleared, TIMESTAMP is the internal timer value at the start of frame of the last message received or sent by the mailbox. If TEOF is set, TIMESTAMP is the internal timer value at the end of frame of the last message received or sent by the mailbox.

In Time-triggered mode, MTIMESTAMP is set to 0.