本文为网上资料搬运,实在是PPT作者做的内容质量非常高,在这里感谢作者分享。资料来源地址不详,如有内容冲突,请联系我,谢谢。
CAN: Controller Area Network. - BOSCH Company for cars.
CAN最初是由德国的BOSCH公司为汽车监测、控制系统而设计的。现代汽车越来越多地采用电子装置控制,如发动机的定时、注油控制,加速、刹车控制(ASC)及复杂的抗锁定刹车系统(ABS)等。由于这些控制需检测及交换大量数据,采用硬接信号线的方式不但烦琐、昂贵,而且难以解决问题,采用CAN总线上述问题便得到很好地解决。
CAN 特点 | 叙述 |
节点多主 | 可以多主方式工作,网络上任意一个节点均可以在任意时刻主动地向网络上的其他节点发送信息,而不分主从,通信方式灵活。 |
节点有优先级 | 网络上的节点(信息)可分成不同的优先级,可以满足不同的实时要求。 |
非破坏性仲裁总线机制 | 采用非破坏性位仲裁总线结构机制,当两个节点同时向网络上传送信息时,优先级低的节点主动停止数据发送,而优先级高的节点可不受影响地继续传输数据。 |
CAN节点示意:
且目前的车都不止一个CAN总线,根据不同的速率需求,CAN也不一样。
单个CAN - BUS的组成:
CAN收发器 | 安装在控制器内部,同时兼具接受和发送的功能,将控制器传来的数据化为电信号并将其送入数据传输线。 |
数据传输终端 | 是一个电阻,防止数据在线端被反射,以回声的形式返回,影响数据的传输。 |
数据传输线 | 双向数据线,由高低双绞线组成。 |
CAN总线数据交换基本原理:
CAN线束:
为了提高数据传递的可靠性,CAN数据总线系统的两条导线(双绞线)分别用于不同的数据传送,这两条线分别称为CAN-High线和CAN-Low线。
CAN电平:
在显性状态时,CAN-High线上的电压值会升高一个预定值(对CAN驱动数据总线来说,这个值至少为1V)。而CAN-Low线上的电压值会降低一个同样值(对CAN驱动数据总线来说,这个值至少为1V)。于是在CAN驱动数据总线上,CAN-High线就处于激活状态,其电压不低于3.5(2.5V+1V=3.5V),而CAN-Low线上的电压值最多可降至1.5V(2.5V-1V=1.5V)。
因此在隐性状态时,CAN-High线与CAN-Low线上的电压差为0V,在显性状态时该差值最低为2V。
差动信号放大器用CAN-High线上的电压(UCAN-High)减去CAN-Low线上的电压(UCAN-Low),就得出了输出电压,用这种方法可以消除静电平(对于CAN驱动数据总线来说是2.5V)或其它任何重叠的电压。
CAN信号的传输:
例如: