了解can总线的人都知道,can总线在的帧数据在总线上传送时,其它的can控制器是通过验收滤波来决定总线上的数据帧的id是否和本节点相吻合,如果与本节点吻合,那么总线上的数据就被存入总线控制器的相应寄存器里,否则就抛弃该数据,从而也能够减轻总线控制器的工作量。换句话说,总线上数据帧的id通过待接收节点的验收滤波后是吻合的,是可以被接收的。
那么,总线控制器是如何进行验收滤波的呢?验收滤波分单滤波和双滤波。标准帧和扩展帧由于id长度不同,它们的两种滤波也有所区别。这里我只重点举一个例子,因为只要理解了一种滤波方式,其它的滤波方式都是类似的,也很容易就理解了。
这里就说扩展帧的双滤波方式。所谓双滤波,就是有两次的滤波,但并非两次滤波都需要通过才双通过,两次滤波只要有一次滤波成功那么就默认滤波通过,可以接收数据了。
如上表所示,acr寄存器是接收代码寄存器,amr是接收屏蔽寄存器。acr一般是需要与对应的id相吻合的,但是如果amr的相应位上设置为1的时候,id的那一位数据可以不和amr的相应位一样,也就是起到屏蔽的作用。
举个例子。如果acr0=11101111,amr0=00000000,那么要想通过验收滤波,必须id.28- id.21=acr0=11101111。如果amr0=00010000,那么id.28-id.21=11111111时,也可以通过验收滤波,因为此时amr0的第五位为1,也就是屏蔽了acr0的第五位。所以id的相应位可以不合acr0一致。
在扩展帧的双滤波方式下,acr0\acr1分别对应id.28-id.13 ,acr2\acr3分别也对应id.28-id.13,这就达到了两次滤波的效果。
另外要说明的一点是:通过验收滤波后符合节点要求的数据就存储到节点的相应寄存器里,其它的帧信息并不做存储。
你不知道的VIVO X21背后的故事
线性稳压器的特点及应用
双面FPC制造步骤有哪些 要经过哪些流程
魅族一年发布14款新机,越来越离不开渠道了
Amazon提供了一种突破浏览器的方法
CAN总线学习笔记:验收滤波
华为支持鸿蒙系统升级的手机型号 鸿蒙操作系统的亮点
关于纯电动汽车的电池续航问题
FPC柔性电路板的补强工艺和不同类型的补强
有关不锈钢螺旋板换热器中管子的防振措施
优傲机器人可以提高福特汽车的生产效率
基于UltraScale+FPGA可编程逻辑DCI互连盒设计
小米AR智能眼镜专利曝光 可通过数据线将眼镜与颈带连接
智能自动化将成为医疗保健行业数字化转型的部分
STM32使用HAL库开发指南
用于数据中心配电的新型4750系列多功能IEC连接器模块
mos管开关工作原理 mos管作为开关工作在什么区
怎么理解电磁炉中电容式触控的原理?看完这篇恍然大悟
一位扬声器设计师对 Dynaudio LYD 48 的见解
L-com诺通发布一系列新型光纤衰减器