CAN总线的仲裁机制

报文的优先级,是通过对 ID 的仲裁来确定的。根据前面对物理层的分析我们知道如果总线上同时出现显性电平和隐性电平,总线的状态会被置为显性电平, CAN 正是利用这个特性进行仲裁。

对于CAN来说,0为显性,1为隐性。所以当对不同的ID号来进行仲裁时,ID号越小,优先级越高。

CAN总线的仲裁机制

对于标准数据帧和扩展数据帧的仲裁,由于图中黄色所示,标准帧中的RTR为0,SRR中为1,所以标准帧的优先级更高。

(需要注意的是,RTR并不是为了做优先级仲裁而存在的,他的实际含义是,远程传输请求位,它是用于区分数据帧
和遥控帧的,当它为显性电平时表示数据帧,隐性电平时表示遥控帧。)