STM32H743+CubeMX-解决FDCAN控制器无法接收远程帧
生活随笔
收集整理的這篇文章主要介紹了
STM32H743+CubeMX-解决FDCAN控制器无法接收远程帧
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 一. 前言
- 二. STM32H743編程參考手冊
- 三. HAL_FDCAN_ConfigGlobalFilter( )
一. 前言
第一次接觸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。
總結
以上是生活随笔為你收集整理的STM32H743+CubeMX-解决FDCAN控制器无法接收远程帧的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: anjular.js表单验证实例
- 下一篇: java swing 注册事件_比较Ja