目录
一,重点
1、总线 CAN_H 和 CAN_L 之间要连接120欧姆电阻。
2、CAN总线为隐性时(即逻辑电平为1时)总线电压差为0V(图示默认电平都为2.5V)。
CAN总线为显性时(即逻辑电平为0时)总线电压差为2.0V左右(图示电平为3.5V和1.5V)。
3、总线通讯速度在125K到1M 比特率每秒。
二、CAN总线的分类
1、按通信速率分类
高速CAN(High-Speed CAN):高速CAN的通信速率最高可达1Mbps,适用于需要快速数据传输的场合,如汽车引擎控制、刹车系统等关键部件之间的通信。在这些系统中,高速数据传输保证了实时性和系统响应的及时性。
低速CAN(Low-Speed CAN):低速CAN的通信速率通常在125Kbps以下,用于对数据传输速度要求不高的场合,如汽车中的座椅控制、门窗控制等辅助系统。低速CAN的优势在于其低功耗和低成本,适用于对实时性要求不高的应用。
CAN XL是一种高度可扩展的通信技术,涉及比特率和数据字段的长度。其目标是实现高达10+Mbit/s的比特率,并针对面向区域的异构网络体系结构进行了优化,以最优的长度满足未来车载网络的要求。此外,CAN XL还提供了更大的数据字段和更高的可靠性。
2、按数据帧长度分类
经典CAN(CAN Standard):经典CAN是最早定义的CAN协议,它规定了数据帧的最大长度为8字节。这种限制使得经典CAN在传输大量数据时效率较低,但适用于简单的通信需求。
扩展CAN(CAN FD):作为CAN协议的一种扩展,CAN FD引入了灵活的数据速率和数据传输方式。CAN FD支持更大的数据包传输,最大数据帧长度可达64字节,同时通信速率也得到了提升,最高可达5Mbps。这使得CAN FD在高速、大数据量传输方面更具优势。

三、CAN总线的电气特性
1、高速CAN
在高速CAN(Controller Area Network)总线上,逻辑电平的表示是通过测量CAN_H和CAN_L两条线路之间的电压差来实现的。这两条线路在正常工作时,都相对于一个共同的参考点(通常是车身地或底盘地)有不同的电压。
当高速CAN总线上表现为显性电平(逻辑0)时:
CAN_H(High)的电压为3.5V,这是相对于参考点的电压。
CAN_L(Low)的电压为1.5V,也是相对于参考点的电压。
此时,CAN_H和CAN_L之间的电压差是2V(3.5V - 1.5V = 2V)。这个电压差是CAN总线判断为显性电平(逻辑0)的关键。在CAN通信中,显性电平用于表示数据的“0”位。
当高速CAN总线上表现为隐性电平(逻辑1)时:
CAN_H和CAN_L的电压都为2.5V,都是相对于参考点的电压。
此时,CAN_H和CAN_L之间的电压差是0V(2.5V - 2.5V = 0V)。这个电压差是CAN总线判断为隐性电平(逻辑1)的关键。在CAN通信中,隐性电平用于表示数据的“1”位。

2、低速CAN
在低速CAN总线上,逻辑电平的表示与高速CAN类似,也是通过测量CAN_H和CAN_L两条线路之间的电压差来实现的。不过,低速CAN的电压阈值和具体的电压值可能与高速CAN有所不同。
当低速CAN总线上表现为显性电平(逻辑0)时:
CAN_H(High)的电压为4V,这是相对于参考点的电压。
CAN_L(Low)的电压为1V,也是相对于参考点的电压。
此时,CAN_H和CAN_L之间的电压差是3V(4 - 1V = 3V)。这个电压差是低速CAN总线判断为显性电平(逻辑0)的关键。与高速CAN类似,显性电平用于表示数据的“0”位。
当低速CAN总线上表现为隐性电平(逻辑1)时:
CAN_H的电压为1.75V,这是相对于参考点的电压。
CAN_L的电压为3.25V,也是相对于参考点的电压。
此时,CAN_H和CAN_L之间的电压差是-1.5V(1.75V - 3.25V = -1.5V)。注意这里的电压差是负数,这在实际测量中意味着CAN_L的电压高于CAN_H的电压。这个负的电压差是低速CAN总线判断为隐性电平(逻辑1)的关键。与高速CAN类似,隐性电平用于表示数据的“1”位。
因此,低速CAN总线通过测量CAN_H和CAN_L之间的电压差来判断逻辑电平。显性电平(逻辑0)时电压差为正数,隐性电平(逻辑1)时电压差为负数。和高速CAN不同,低速CAN没有规定明确的电压差值,这使得低速CAN比高速CAN有更高的容错性。