SPRAD59 October 2023 TMS320F280039
C2000 Real-time MCUs feature three types of Controller Area Network (CAN) modules: eCAN, DCAN and MCAN. While eCAN and DCAN only support classic CAN, MCAN supports both classic CAN and CAN FD. Devices such as TMS320F2838xD, TMS320F2838xS, TMS320F28003x and TMS320F280015x feature both DCAN and MCAN modules. Some C2000 devices only feature the MCAN module since it supports both classic CAN and CAN FD. Although all of the aforementioned CAN modules are compliant with the CAN protocol standard, none of them are software-compatible with each other. Specifically, the DCAN and MCAN module employ a completely different architecture and hence, register and bit structure. This warrants a very different programming approach between the modules. This document is intended to ease the migration from DCAN to the MCAN module. It discusses the most common operations such as module initialization, bit-timing configuration, message RAM configuration, buffer and FIFO configuration, data transmission, reception (with filtering) and error handling. It explains how these operations are done in DCAN and MCAN modules. Code snippets are shown as warranted.