SLAAET4 April   2025 MSPM0G3506 , MSPM0G3507 , MSPM0G3518 , MSPM0G3519

 

  1.   1
  2.   Abstract
  3.   Trademarks
  4. 1Introduction
    1. 1.1 MCAN Features
  5. 2Sysconfig Configuration for MCAN Module
    1. 2.1 MCAN Clock Frequency
    2. 2.2 MCAN Basic Configuration
      1. 2.2.1 Transmitter Delay Compensation (TDC)
      2. 2.2.2 Bit Timing Parameters
      3. 2.2.3 Message RAM Configuration
        1. 2.2.3.1 Standard and Extended ID Filter Configuration
          1. 2.2.3.1.1 How to Add More Filters
        2. 2.2.3.2 TX MSG RAM
        3. 2.2.3.3 RX MSG RAM
    3. 2.3 Advanced Configuration
    4. 2.4 Retention Configuration
    5. 2.5 Interrupts
    6. 2.6 Pin Configuration and PinMux
  6. 3Demo Project Descriptions
    1. 3.1 TX Buffer Mode
    2. 3.2 TX FIFO Mode
    3. 3.3 RX Buffer Mode
    4. 3.4 RX FIFO Mode
  7. 4Debug and Design Tips to Resolve/Avoid CAN Communication Issues
    1. 4.1 Minimum Number of Nodes Required
    2. 4.2 Why a Transceiver is Needed
    3. 4.3 Bus Off Status
    4. 4.4 Using MCAN in Low Power Mode
    5. 4.5 Debug Checklist
      1. 4.5.1 Programming Issues
      2. 4.5.2 Physical Layer Issues
      3. 4.5.3 Hardware Debug Tips
  8. 5Summary
  9. 6References

Abstract

The Modular Controller Area Network (MCAN) peripheral is a CAN Flexible Data-rate (CAN FD) implementation on select devices within the MSPM0™ real-time microcontroller (MCU) family. Some devices that have an MCAN peripheral include the MSPM0G350x, MSPM0G351x devices. The examples described are to be run in any MSPM0 MCU with an MCAN module. This application note describes several programming examples to illustrate how the MCAN module is set up for different modes of operation. The objective is to help users understand programming the MCAN peripheral.

The code examples were tested on MSPM0G3507. However, the examples can be easily adapted to run on any MSPM0 device that features the MCAN module. Most of the examples need a second CAN FD node for operation. This requirement can be met by another MCU featuring CAN FD or any CAN bus analysis tool that is capable of working with both classic CAN and CAN FD protocols. Many USB-bus based tools are currently available. In addition to providing visibility to the bus traffic, these tools are also capable of generating frames and are an invaluable aid in debugging. An oscilloscope with built-in CAN FD triggering or decoding is essential for debugging.

Throughout this document, the terms MCAN and CAN FD are used interchangeably. While CAN FD refers to the protocol, MCAN refers to the peripheral in the MCU that implements the protocol. The project files for examples described in this document are available for download as part of MSPM0-SDK.