[STM32F1]

请问CAN如何设置标准帧

[复制链接]
1206|8
手机看帖
扫描二维码
随时随地手机跟帖
小缘|  楼主 | 2019-11-27 14:41 | 显示全部楼层 |阅读模式
        CAN_FilterInitStructure.CAN_FilterNumber=0;          //过滤器0
           CAN_FilterInitStructure.CAN_FilterMode=CAN_FilterMode_IdMask;
          CAN_FilterInitStructure.CAN_FilterScale=CAN_FilterScale_32bit; //32位
          CAN_FilterInitStructure.CAN_FilterIdHigh=0x0000;
          CAN_FilterInitStructure.CAN_FilterIdLow=0x0000;
          CAN_FilterInitStructure.CAN_FilterMaskIdHigh=0x0000;//32位MASK
          CAN_FilterInitStructure.CAN_FilterMaskIdLow=0x0000;
          CAN_FilterInitStructure.CAN_FilterFIFOAssignment=CAN_Filter_FIFO0;//过滤器0关联到FIFO0
        CAN_FilterInitStructure.CAN_FilterActivation=ENABLE; //激活过滤器0

          CAN_FilterInit(&CAN_FilterInitStructure);//滤波器初始化

求教:假如我想设置标准帧的ID为0x56C,应该怎么设置CAN_FilterInitStructure.CAN_FilterIdHigh和dCAN_FilterInitStructure.CAN_FilterIdLow 的值 ?

使用特权

评论回复
mmuuss586| | 2019-11-29 09:50 | 显示全部楼层

使用特权

评论回复
香水城| | 2019-11-29 11:57 | 显示全部楼层
这个得要自己配,对着手册来。
STM32 CAN过滤器的几个术语

使用特权

评论回复
heimaojingzhang| | 2019-12-11 13:15 | 显示全部楼层
手册上写的挺清楚的

使用特权

评论回复
guanjiaer| | 2019-12-11 13:16 | 显示全部楼层
或者用代码生成工具

使用特权

评论回复
观海| | 2019-12-11 13:17 | 显示全部楼层
对着寄存器说明自己设置是一样的

使用特权

评论回复
八层楼| | 2019-12-11 13:19 | 显示全部楼层
默认的就是标准帧吧

使用特权

评论回复
晓伍| | 2019-12-11 13:22 | 显示全部楼层
是的  无需设置 默认的就是

使用特权

评论回复
ningling_21| | 2019-12-11 13:31 | 显示全部楼层
这里的CAN_FilterId和CAN_FilterMaskId是配合使用的,意思是CAN_FilterId指出需要屏蔽ID的什么内容,什么格式;CAN_FilterMaskId是指CAN_FilterId的每一位是否需要过滤,若CAN_FilterMaskId在某位上是1的话,ID对应位上的数值就必须和CAN_FilterId该位上的一样,保持一致,反之则是“不关心”。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

2

帖子

0

粉丝