SPRUIM2H May 2020 – October 2023 AM2431 , AM2432 , AM2434 , AM6411 , AM6412 , AM6421 , AM6422 , AM6441 , AM6442
The Tx Handler is used to handle the Tx requests. It controls the transfer of transmit messages from the dedicated Tx Buffers, the Tx FIFO, and the Tx Queue to the CAN Core, the Tx Event FIFO, and the Put and Get Index operations. The MCAN module supports up to 32 Tx Buffers. These Tx Buffers can be configured as dedicated Tx Buffers, Tx FIFO, or Tx Queue and as combination of dedicated Tx Buffers/Tx FIFO or dedicated Tx Buffers/Tx Queue. For each Tx Buffer element Classical CAN or CAN FD transmission mode can be configured. Section 12.4.1.4.10.3 describes the Tx Buffer Element. Table 12-4107 shows the possible configurations for message transmission.
MCAN_CCCR | Tx Buffer Element | Frame Transmission | |||
---|---|---|---|---|---|
MCAN_CCCR[9] BRSE | MCAN_CCCR[8] FDOE | FDF | BRS | ||
ignored | 0 | ignored | ignored | Classic CAN | |
0 | 1 | 0 | ignored | Classic CAN | |
0 | 1 | 1 | ignored | CAN FD without bit rate switching | |
1 | 1 | 0 | ignored | Classic CAN | |
1 | 1 | 1 | 0 | CAN FD without bit rate switching | |
1 | 1 | 1 | 1 | CAN FD with bit rate switching |
When the Tx Buffer Request Pending MCAN_TXBRP register is updated, or when a transmission has been started the Tx Handler starts scanning to check for the highest priority pending Tx request. The Tx Buffer with lowest Message ID has highest priority.
AUTOSAR requires at least three Tx Queue Buffers and support of transmit cancellation.