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

一:转发链接 

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

  • 9
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值