The MCAN module performs CAN protocol communication according to ISO 11898-1:2015. The bit rate can be programmed to values greater than 1 Mbps. Additional transceiver hardware is required for the connection to the physical layer (CAN bus).
For communication on a CAN network, individual message frames can be configured. The message frames and identifier masks are stored in the Message RAM.
All functions concerning the handling of messages are implemented in the Message Handler.
The register set of the MCAN module can be accessed directly via the module interface. These registers are used to control and configure the CAN core and the Message Handler, and to access the Message RAM.
Figure 12-2102 shows the MCAN module block diagram.
The MCAN module blocks description:
- CAN Core: the CAN core consists of the CAN protocol controller and the Rx/Tx shift register. It handles all ISO 11898-1:2015 protocol functions and supports 11-bit and 29-bit identifiers.
- Message Handler: the Message Handler (Rx Handler and Tx Handler) is a state machine that controls the data transfer between the single-ported Message RAM and the CAN core's Rx/Tx shift register. It also handles the acceptance filtering and the Interrupt/DMA request generation as programmed in the control registers.
- Message RAM: the main purpose of the Message RAM is to store Rx/Tx messages, Tx Event elements, and Message ID Filter elements (for more information, see Section 12.4.1.4.10, Message RAM).
- Message RAM Interface: enables connection between the Message RAM and the other blocks in the MCAN module.
- Registers and Message Object Access: data consistency is ensured by indirect accesses to the message objects. The interface registers have the same word-length as the Message RAM.
- Module Interface: provides connection to the Registers and Message Object Access block and Message RAM Interface block
- Clocking: two clocks are provided to the MCAN module: the peripheral synchronous clock (interface clock ICLK) and the peripheral asynchronous clock (functional clock - FCLK).
- Extension Interface: this interface is used for DMA requests signaling (see Section 12.4.1.4.2.2).