CAN波形时序解析及详细说明
CAN波形时序解析
===============
总线上执行逻辑上的线“与”时,显性电平的逻辑值为“0”,隐性电平为“1”。
“显性”具有“优先”性,只要有一个单元输出显性电平,总线上即为显性电平。
本文中位指二进制bit位。
1 数据帧组成
2 收发器引脚波形
3 波形数据解析
帧起始段
仲裁段
仲裁段包括:11位基本ID、1位SRR、1位IDE、18位扩展ID、1位RTR。
位填充是为防止突发错误而设定的功能。当同样的电平持续 5 位时则添加一个位的反型数据。
位填充的构成如图所示。
(1) 发送单元的工作在发送数据帧和遥控帧时, SOF~CRC 段间的数据,相同电平如果持续 5 位,在下一个位(第 6 个位)则要插入 1 位与前 5 位反型的电平。
(2) 接收单元的工作在接收数据帧和遥控帧时, SOF~CRC 段间的数据,相同电平如果持续 5 位,需要删除下一个位(第 6 个位)再接收。如果这个第 6 个位的电平与前 5 位相同,将被视为错误并发送错误帧。
控制段
控制段包括:1位r1、1位r0、4位DLC长度码。

数据段
数据段可包含 0~8 个字节的数据。从 MSB(最高位)开始输出。
CRC段
CRC段包括:CRC校验码和CRC界定符。
ACK段
第一位若为显性,表示应答ACK,接收方收到正确消息。若为隐性,表示应答无NAK。图中只有一个发送节点,信号为NAK。
第二位是应答界定符,是一个必须为“隐性”的位。