硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1134|回复: 2
收起左侧

[STM32H7] 如何配置STM32H7的FDCAN 滤波器?

[复制链接]

6

主题

68

回帖

86

积分

初级会员

积分
86
发表于 2024-6-1 19:10:46 | 显示全部楼层 |阅读模式
我参考别人的代码,目前能配置接收标准帧,扩展帧收不到。

代码如下:
[C] 纯文本查看 复制代码
void FDCAN1_RX_Filter0_Init(void)
{
   hfdcan1_RX_Filter0.IdType = FDCAN_STANDARD_ID;              /* 只接收标准帧ID */
   hfdcan1_RX_Filter0.FilterIndex = 0;                         /* 滤波器索引0 */
   hfdcan1_RX_Filter0.FilterType = FDCAN_FILTER_MASK;          /* 滤波器类型 */
   //hfdcan1_RX_Filter0.FilterType = FDCAN_FILTER_RANGE;       /* 滤波器类型(允许接收报文的ID范围是FilterID1至FilterID2 */
   
   /* 注意:
    *  1.FDCAN_HandleTypeDef对象句柄的成员RxFifo0ElmtsNbr设置大于0时,表示启用RXFIFO0.
    *  2.
    *  3.如果启用RXFIFO0,那么滤波器必须关联到RXFIFO0,即FilterConfig必须赋值FDCAN_FILTER_TO_RXFIFO0.
    *  4.同理,如果启动RXFIFO1的话,滤波器必须关联到RXFIFO1,即FilterConfig必须赋值FDCAN_FILTER_TO_RXFIFO1.
    *
    */
   hfdcan1_RX_Filter0.FilterConfig = FDCAN_FILTER_TO_RXFIFO0;  /* 滤波器关联到RXFIFO0 */
   hfdcan1_RX_Filter0.FilterID1 = 0x00;                  /* 滤波ID1: 0x00 */
   hfdcan1_RX_Filter0.FilterID2 = 0x00;                  /* 滤波ID2: 0x00 */
	
   if(HAL_FDCAN_ConfigFilter(&hfdcan1, &hfdcan1_RX_Filter0) != HAL_OK)
   {
       Error_Handler();
   }

   /* HAL_FDCAN_ConfigGlobalFilter()
    * 参数2:设置标准帧ID,接收的报文ID没有匹配上滤波器时,选择拒绝接收(没有匹配上时,可以选择放入FIFO0或者FIFO1)。
    * 参数3:设置拓展帧ID,接收的报文ID没有匹配上滤波器时,选择拒绝接收。
    * 参数4:设置是否拒绝远程标准帧,ENABLE代表拒绝接收。
    * 参数5:设置是否拒绝远程拓展帧,ENABLE代表拒绝接收。
    */
   if(HAL_FDCAN_ConfigGlobalFilter(&hfdcan1, FDCAN_REJECT, FDCAN_REJECT, DISABLE, DISABLE) != HAL_OK) /* 设置FDCAN1滤波器0全局配置  */
   {
	   Error_Handler();
   }
}

回复

使用道具 举报

6

主题

68

回帖

86

积分

初级会员

积分
86
 楼主| 发表于 2024-6-1 19:13:44 | 显示全部楼层
我把这里改成 hfdcan1_RX_Filter0.IdType =  FDCAN_EXTENDED_ID;         
但是收不到扩展帧,还有哪里要修改的吗?
无标题.jpg
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117564
QQ
发表于 2024-6-2 01:10:49 | 显示全部楼层
参考此贴的综合CANFD案例,各种配置都做了。


BSP视频教程第26期:CAN/CANFD/CANopen专题,CANFD整个运行机制精讲,图文并茂,配合综合实战演练(2023-05-15)
https://forum.anfulai.cn/forum.php?mod=viewthread&tid=119189


2567.png
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-8-15 02:01 , Processed in 0.041706 second(s), 27 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表