1、模块配置寄存器 MCR
DMA
控制DMA功能是否启用。DMA功能只能在Rx FIFO中使用,因此必须断言MCR[RFEN]。当设置DMA和RFEN时,IFLAG1[BUF5I]生成DMA请求,并且不生成RX FIFO中断。
ps:该位只能在冻结模式下写入,因为它在其他模式下被硬件阻止。
0b-禁用RX FIFO的DMA功能。
1b-启用RX FIFO的DMA功能。
(RFEN) ;Rx FIFO Enable
Rx FIFO启用
该位控制Rx FIFO功能是否启用。设置RFEN时,MBs 0至5不能用于正常接收和传输,因为FIFO引擎使用相应的存储区域(0x80-0xDC)以及用作Rx FIFO ID过滤器表元素的附加MBs(最多32个,取决于CTRL2[RFFN]设置)。RFEN还影响表55-32中所述的每个CAN位的最小外围时钟数的定义。
该位只能在冻结模式下写入,因为它在其他模式下被硬件阻塞。注:启用CAN FD操作时无法设置此位(参见FDEN位)。
0b-未启用Rx FIFO。
1b-Rx FIFO已启用。
FD操作是否可以启用
该位使CAN具有灵活数据速率(CAN FD)操作。该位可以在冻结状态下写入仅限模式。
注:FlexCAN能够根据ISO 11898-1传输FD帧格式。
注:如果断言FDEN,则无法设置Rx FIFO启用(RFEN)位。
0b-CAN FD被禁用。FlexCAN能够接收和传输CAN 2.0格式的消息。
1b-CAN FD已启用。FlexCAN能够在CAN和FD中接收和传输消息CAN 2.0格式。
2、配置寄存器
ctrol 1: 时钟源,数据域,仲裁预 百分比
ctrol 2:: ISO CAN FD Enable
为Rx邮箱启用全帧仲裁字段比较
此位控制Rx邮箱过滤器内IDE和RTR位与其对应的位的比较
通过匹配过程在输入帧中存储比特。此位不影响Rx FIFO的匹配
Number Of Rx FIFO Filters
3、错误 与 状态寄存器
4、报文缓存区结构
每个MB由16、24、40或72个字节组成,具体取决于为消息有效负载分配的数据字节数量:分别为8、16、32或64个数据字节。
64字节 接收缓存结构
相关参考:【使用C++开发MCU】05-CAN实例之NXP S32K1 FlexCAN模块_mcucpp的博客-CSDN博客_flexcan mailbox