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

2023-12-14 10:56:42

一:转发链接?

?“目前网络上看到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。

文章来源:https://blog.csdn.net/weixin_53592457/article/details/134986987
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。