STM32H743+CubeMX-解决FDCAN控制器无法接收远程帧

一. 前言

第一次接触STM32H7的FDCAN控制器时,觉得要使用它并不容易,很多参数需要配置。接着,按照硬石科技STM32H743教程的FDCAN章节,一步一步对FDCAN控制器进行配置。最后,终于能正常收发CAN报文。但是,事情总是不会那么简单地结束。 刚配置的FDCAN控制器居然无法接收远程帧。

二. STM32H743编程参考手册

碰到工程问题,应该第一时间查看《STM32H743编程参考手册》。在手册的56.3.2章节上找到一个流程图,这个流程图表示滤波器可以拒绝远程帧。按照这个思路查看一下配置FDCAN的代码,看看到底哪里配置了拒绝接收远程帧。
在这里插入图片描述

三. HAL_FDCAN_ConfigGlobalFilter( )

HAL_FDCAN_ConfigGlobalFilter()是配置FDCAN的滤波器关键的函数之一,由它决定FDCAN控制器是否决绝接收远程帧。
函数FDCAN2_RX_Filter0_Init()的目的是初始化FDCAN的滤波器,最后一步调用了HAL_FDCAN_ConfigGlobalFilter( )。
在这里插入图片描述
如上图所示,如果需要接收远程帧的话,HAL_FDCAN_ConfigGlobalFilter()的第三个与第四个入口参数需要用宏DISABLE。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wallace Zhang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值