- 33
- 0
- 约 11页
- 2016-07-27 发布于湖北
- 举报
STM32 CAN滤波器、滤波屏蔽器设置详解
STM32 CAN 过滤器、滤波屏蔽器配置总结??
下面内容为转载:
一、在STM32互联型产品中,CAN1和CAN2分享28个过滤器组,其它STM32F103xx系列产品中有14个过滤器组,用以对接收到的帧进行过滤。
1、过滤器组
每组过滤器包括了2个可配置的32位寄存器:CAN_FxR0和CAN_FxR1。这些过滤器相当于关卡,每当收到一条报文时,CAN要先将收到的报文从这些过滤器上过一下,能通过的报文是有效报文,收进相关联FIFO(FIFO1或FIFO2),不能通过的是无效报文(不是发给我的报文),直接丢弃。?
????(标准CAN的标志位长度是11位。扩展格式CAN的标志位长度是29。CAN2.0A协议规定CAN控制器必须有一个11位的标识符。CAN2.0B协议中规定CAN控制器的标示符长度可以是11位或29位。STM32同时支持CAN2.0A/CAN2.0B协议。)????
每组过滤器组有两种工作模式:标识符列表模式和标识符屏蔽位模式。
标识符屏蔽位模式:
可过滤出一组标识符。???时,这样CAN_FxR0中保存的就是标识符匹配值,CAN_FxR1中保存的是屏蔽码,即CAN_FxR1中如果某一位为1,则CAN_FxR0中相应的位必须与收到的帧的标志符中的相应位吻合才能通过过滤器;CAN_FxR1中为0的位表示CAN_FxR0中的相应位可不必与收到的帧进行匹配。
标识符列表模式:
可过滤出一个标识。此时CAN_FxR0和CAN_FxR1中的都是要匹配的标识符,收到的帧的标识符必须与其中的一个吻合才能通过过滤。
注意:CAN_FilterIdHigh是指高16位CAN_FilterIdLow是低16位应该将需要得到的帧的和过滤器的设置值左对齐起。
所有的过滤器是并联的,即一个报文只要通过了一个过滤器,就是算是有效的。?
按工作模式和宽度,一个过滤器组可以变成以下几中形式之一:
(1)?1个32位的屏蔽位模式的过滤器。
(2)?2个32位的列表模式的过滤器。
(3)?2个16位的屏蔽位模式的过滤器。
(4)?4个16位的列表模式的过滤器。
每组过滤器组有两个32位的寄存器用于存储过滤用的标准值,分别是FxR1,FxR2。
在32位的屏蔽位模式下:????有1个过滤器。
????FxR1用于指定这些位的标准值,FxR2用于指定需要关心哪些位。
在32位的列表模式下: ???有2个过滤器。
????FxR1指定过滤器0的标准值,FxR2指定过滤器1的标准值。
在16位的屏蔽位模式下:????有2个过滤器。
????FxR1配置过滤器0,其中,[31-16]位指定要关心的位,[15-0]位指定这些位的标准值。
????FxR2配置过滤器1,其中,[31-16]位指定要关心的位,[15-0]位指定这些位的标准值。
在16位的列表模式下:???? 有4个过滤器。
????FxR1的[15-0]位配置过滤器0,FxR1的[31-16]位配置过滤器1。
????FxR2的[15-0]位配置过滤器2,FxR2的[31-16]位配置过滤器3。
STM32的CAN有两个FIFO,分别是FIFO0和FIFO1。为了便于区分,下面FIFO0写作FIFO_0,FIFO1写作FIFO_1。
每组过滤器组必须关联且只能关联一个FIFO。复位默认都关联到FIFO_0。
所谓“关联”是指假如收到的报文从某个过滤器通过了,那么该报文会被存到该过滤器相连的FIFO。
从另一方面来说,每个FIFO都关联了一串的过滤器组,两个FIFO刚好瓜分了所有的过滤器组。
?每当收到一个报文,CAN就将这个报文先与FIFO_0关联的过滤器比较,如果被匹配,就将此报文放入FIFO_0中。
如果不匹配,再将报文与FIFO_1关联的过滤器比较,如果被匹配,该报文就放入FIFO_1中。
如果还是不匹配,此报文就被丢弃。
每个FIFO的所有过滤器都是并联的,只要通过了其中任何一个过滤器,该报文就有效。
如果一个报文既符合FIFO_0的规定,又符合FIFO_1的规定,显然,根据操作顺序,它只会放到FIFO_0中。
每个FIFO中只有激活了的过滤器才起作用,换句话说,如果一个FIFO有20个过滤器,但是只激话了5个,那么比较报文时,只拿这5个过滤器作比较。
一般要用到某个过滤器时,在初始化阶段就直接将它激活。
需要注意的是,每个FIFO必须至少激活一个过滤器,它才有可能收到报文。如果一个过滤器都没有激活,那么是所有报文都报废的。
一般的,如果不想用复杂的过滤功能,FIFO可以只激活一组过滤器组,且将它设置成32位的屏蔽位模式,两个标准值寄存器(FxR1,FxR2)都设置成0。这样所有报文均能通过。
2、过滤器编号
过滤器编号用于加速CPU对收到报文的处理。
您可能关注的文档
- sci知识讲座.pptx
- SDH误码测试.doc
- SDS1000L示波器产品规范ppt.pptx
- Sec14_冲击响应谱分析.ppt
- SEM 仪器结构及原理.docx
- selenium学习2-启动浏览器.docx
- Semilab 分选机操作手册.doc
- SEM及XRD分析简介.ppt
- seo搜索引擎工作原理简介ppt.ppt
- sensor第2章.ppt
- 湖北省谷城县2024年数学八年级第一学期期末联考试题含解析.doc
- 福建省龙岩市长汀县2024年化学九上期末联考模拟试题含解析.doc
- 2026年咨询行业制造业数字化转型策略分析报告.docx
- 山东省济南市市中区山东省实验中学2024-2025学年高三毕业生四月调研测试生物试题试卷含解析.doc
- 物流配送企业市场竞争分析报告.docx
- 湖北武汉一初慧泉中学2024-2025学年数学七年级第一学期期末检测模拟试题含解析.doc
- 承揽系统合同范本.docx
- 江苏省盐城市初级中学2024年八上物理期末监测试题含解析.doc
- 广东省东莞市横沥爱华学校2025届八上物理期末学业质量监测模拟试题含解析.doc
- 福建省二校2025年下学期高三年级3月月考试卷英语试题试卷含解析.doc
最近下载
- 运筹学题库及答案.doc VIP
- 2012江苏高考数学试卷(含答案).doc VIP
- 2018江苏高考数学.doc VIP
- 多因素身份验证系统设计与实现.docx VIP
- 新概念英语第一册上半册 Lesson15-16 课件.ppt VIP
- 2025 年剖宫产术后护理的最新要点与技巧.docx VIP
- 医院科室排班表.docx VIP
- 楼宇低压配电系统的设计.doc VIP
- 【电脑小知识】:如何使用注册表来恢复误删的Win7便签?.docx VIP
- 班子(在带头强化政治忠诚、提高政治能力;在带头固本培元、增强党性;在带头敬畏人民、敬畏组织、敬畏法纪;在带头干事创业、担当作为;在带头坚决扛起管党治党责任)存在不足.docx VIP
原创力文档

文档评论(0)