The MCAN driver provides API to configure the MCAN module. Below are the high level features supported by the MCAN driver.
Features Supported
- Conforms with CAN Protocol 2.0 A, B and ISO 11898-1:2015
- Full CAN FD support (up to 64 data bytes)
- AUTOSAR and SAE J1939 support
- Up to 32 dedicated transmit buffers
- Configurable transmit FIFO, up to 32 elements
- Configurable transmit queue, up to 32 elements
- Configurable transmit Event FIFO, up to 32 elements
- Up to 64 dedicated receive buffers
- Two configurable receive FIFOs, up to 64 elements each
- Up to 128 filter elements
- Loop-back mode for self-test
- Maskable interrupt (two configurable interrupt lines, correctable ECC, counter overflow, and clock stop or wakeup)
- Non-maskable interrupt (uncorrectable ECC)
- Two clock domains (CAN clock and host clock)
- ECC check for Message RAM
- Clock stop and wakeup support
- Timestamp counter
- 1-Mbps nominal bit rate, 5-Mbps data bit rate
SysConfig Features
- Note
- It is strongly recommend to use SysConfig where it is available instead of using direct SW API calls. This will help simplify the SW application and also catch common mistakes early in the development cycle.
- Enable CAN-FD mode
- Enable Bit Rate Switching
- Enable Loopback Mode
- Message RAM configuration
- Filter element configuration for Standard and Extended filters
Features NOT Supported
- Host bus firewall
- Clock calibration
- Debug over CAN
Important Usage Guidelines
Example Usage
Include the below file to access the APIs #include <mcan.h>
API
MCAN