概述
本文基于S32SDK,通过UML的方法,分析S32K1 MCU的FlexCAN模块的使用。
CAN作为一个通讯模块,最基本的三个接口便是初始化、发送、接收,构建好这三个接口,能够更好的开发我们上层的应用。
CAN初始化
使用PE进行配置代码生成,CAN初始化直接调用DRV_Init进行初始化,配置一下接收MB或者接收FIFO即可在后续开始接收,发送MB在发送时配置。
CAN接收
CAN FD不支持RX FIFO,DMA只适用于RX FIFO接收。
对于Classic CAN,可以使用RX MB (的中断)或者RX FIFO(的中断或DMA)将消息接收到我们的变量中。
S32SDK通过提供HW