嵌入式编程互联网科技

can的ACR和AMR

2017-10-23  本文已影响9人  罗蓁蓁

can的ACR和AMR

can总线中有ACR和AMR。他们是CAN总线实现点对点,一点对多点的重要寄存器。其中AMR是专门为实现一对多而设置的寄存器。因为can控制器实际对网络数据的标识符和本身的ACR值进行比较时还要参考AMR值,当AMR中某位为1时也就意味着ACR中的该位被屏蔽了,任意值都可以接收,也即只比较AMR寄存器中位置为0的位,只要他们符合就接收。

举例:

ACR: 0 1 1 1 0 0 1 0

AMR:0 0 1 1 1 0 0 0

可接收信息0 1 * * * 0 1 0 * * *

其中*为0或1皆可以。

在本例中,由于AMR的第二三四位分别为1,故对于标识ID来说,只要其它位满足就接收该数据包,而不管这三位是0还是1.

上一篇 下一篇

猜你喜欢

热点阅读