随着汽车的不断发展,车上ECU也越来越多,各个ECU间的通信也愈发复杂,传统点对点的连接方式导致车上线束不断增多,使得汽车重量增加,同时也限制了汽车的空间。这时博世公司开发了CAN总线来进行各ECU间的通信,使的通信更加方便。
1.什么是CAN总线?
CAN是控制器局域网络(Controler Area Network,CAN)的简称,是一种串行通信网络,目前已广泛应用于汽车等行业。关于它的优点等各位读者在进行深入学习后就会有所感悟(感觉在不了解的前提下谈优点纯属扯淡)!
考虑信号干扰等因素的影响,CAN的物理层的传输介质一般多为双绞线,且以差分信号的形式传输;其中一条信号线为CAN_H,另一条信号线为CAN_L,汽车上的各个ECU都接在上述双绞线上,组成有一个简单地CAN网络进行通信,其结构如下图所示。
2.CAN的工作原理
CAN总线进行数据传输是通过CAN_H和CAN_L两条信号线的电压差来完成,通常用显性电平(Dominant Voltage)和隐性电平(Recessive Voltage)来表示,其中显性电平用逻辑“0”,隐性电平用逻辑“1”表示。
当总线上没有数据发送时,CAN_H和CAN_L的电平都为2.5V,此时为隐性电平(1);当总线上有信号发送时,CAN_H的电平升高到3.5V,CAN_L的电平降为1.5V,此时为显性电平(0),这一系列的0和1就组成了一帧帧的报文。
3.CAN信号的传输过程
Transmit:CAN控制器将ECU传来的信号转换为逻辑电平。CAN收发器接收逻辑电平之后,再将其转换为差分电平输出到CAN总线上。
Receive:CAN收发器将CAN_H 和 CAN_L 信号线上传来的差分电平转换为逻辑电平输出到CAN控制器,CAN控制器再把该逻辑电平转化为相应的信号发送到ECU上。
其传输过程如下图所示:
本节先总体介绍下CAN总线的结构及其工作原理,下节将介绍CAN网络的数据传输,欢迎大家关注点赞。
及时学习,以共同进步,终成大佬!