打印
[应用相关]

转发一篇CAN过滤器配置的文章

[复制链接]
554|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
tpgf|  楼主 | 2024-1-21 15:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一:转发链接

“目前网络上看到CAN过滤器讲得最详细的文章”

二:CAN过滤器是CAN总线系统中的一种设备,它用于过滤和选择总线上的数据帧。

        在CAN总线系统中,每个设备都可以发送和接收数据帧。然而,在某些情况下,我们可能只对某些特定的数据帧感兴趣,而忽略其他数据帧。CAN过滤器可以帮助我们实现这一目标,可以过滤掉我们不感兴趣的数据帧,只接收我们感兴趣的数据帧。这可以减少CPU的处理负担,提高系统的效率。

        此外,CAN过滤器还可以对接收到的数据帧进行过滤和排序。例如,如果多个设备同时发送数据帧,CAN过滤器可以根据优先级或ID对它们进行排序,确保数据帧按照正确的顺序被接收和处理。

        总之,CAN过滤器是CAN总线系统中非常重要的设备,它可以帮助我们过滤掉不感兴趣的数据帧,提高系统的效率和可靠性。

三:CAN过滤器有两种模式:列表模式和掩码模式。

CAN过滤器的列表模式:

在列表模式下,过滤器配置了两个32位寄存器,用于存储指定的ID。具体来说,每个ID占用32位,这意味着过滤器可以接收与指定ID完全匹配的数据帧。

此外,列表模式还分为16位模式和32位模式。在16位模式下,每个ID占用16位,最多可以存储4个ID。这种模式通常用于标准帧,其中ID的高11位被存储。而在32位模式下,每个ID占用32位,最多可以存储2个ID。这种模式通常用于扩展帧,其中ID的高29位被存储。

CAN过滤器的掩码模式:

在掩码模式下,过滤器由两个单元组成:匹配ID和掩码。被过滤的ID号和匹配ID号会和掩码进行按位与运算后再进行匹配。只有对应的掩码为1的位才会被匹配。这意味着,通过指定一个掩码,可以过滤掉不符合特定条件的数据帧。

需要注意的是,过滤器的位宽也有所不同,包括16位过滤器和32位过滤器。每个过滤器可以绑定一个CAN接收中断,经过过滤器过滤的帧会进入该过滤器绑定的接收中断对应的FIFO。
————————————————
版权声明:本文为CSDN博主「嵌入式小宁」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_53592457/article/details/134986987

使用特权

评论回复
沙发
cr315| | 2024-1-22 16:52 | 只看该作者
很详细

使用特权

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

本版积分规则

2028

主题

15903

帖子

13

粉丝