CAN总线系统-通过CAN的数据传输

来自:A汽车维修保养轮胎
3年前
已收藏
收藏
阅读数
169
回复数
0

CAN的数据传输通过一根双线数据线进行。信息发射器必须通过这两根导线向接收器传送接收器需要的所有信息。为此,发射器必须告知信息适用于谁(地址)和信息的内容。 为了识别传输时的故障,还传递用于校验的附加信息。信息传输通过大量数值为“0”或“1”的位的排列,即通过两个定义的电平实现。此排列受一个规定的分类系统控制,此系统方面通过数字技术描述;另一方面在一个所谓的数据电码(也称数据协议)中专门为CAN作了规定。 (一)CAN数据电码的结构: 这里简要介绍CAN数据电码的基本结构。在对总线系统进行诊断时,不是信息的内容具有决定意义,而是在总线导线上传送的信号的电平具有决定意义。CAN数据电码的结构如图1-23所示。


CAN数据电码已划分成各个区,而这些区又由规定数量的位组成。 ①起始区标记一个待传送信息的开始。 ②在状态区中说明信息规定用于哪个控制模块。此外,如果两个控制模块试图在相同的时刻传递一个信息,将在这里规定数据传输的优先权。 ③检查区说明接着要传递的信息由多少位组成。 ④数据区包括实际的信息,由最多一个64位的排列组成。 ⑤安全区用于识别传输故障。 ⑥信息接收器借助确认区的位通知发射器,它们已接收到信息。 ⑦接收到有错误的信息时,结束区为接收器提供通知发射器的途径。因此发射器再次重复传送信息。 CAN数据电码由许多位构成,控制模块根据各个区中的位识别,数据区的信息规定用于哪个控制模块,信息有什么内容,信息的内容是否已被正确接收。并且所有信息只通过两根导线,各个位依次传递,即串行传递。 CAN总线系统设计成每个控制模块都能够发送和接收信息。为此没有固定的时间顺序而是每个控制模块原则上能够随时向其他控制模块发送信息。假如同时有多个控制模块想发送信息,为了避免这种“自由”导致数据总线上发生混乱,CAN总线系统装备了一个优先权控制系统。 CAN数据电码的检查区内的位序列说明,相应的控制模块具有何种优先权。如果同时有多个控制模块想发送信息,则具有最高优先权的控制模块优先发送。优先权检测通过一种被称为按位仲裁的特殊技术实现。
(二)数据传输的抗干扰强度通过导线进行的数据传输可能受车辆中的不同干扰源影响。车辆中的典型干扰源是在运行过程中或在通过开关断开或接通电路时产生火花的部件。其他干扰源包括移动电话和发射台,即所有产生电磁波的装置。通过导线进行数据传输时的典型干扰源如图1-24所示。 为了防止干扰数据传输,数据总线导线被相互纹合。数据的传递方式为,在两根导线上相应的电平反向。如果在一根数据总线导线上的电压约为0V,则在另一根导线上的电压约为5V;反之亦然。于是对信号差而言,产生一个比单个信号更大的电压振幅。如果干扰信号影响CAN双线数据线,则两根芯线中的每一根都在相同的方向上受到相同程度的影响。 因为信息被以推挽的方式输入到导线上,每根导线的零位线将因干扰移动相同的量,然而两个电压的偏差保持不变。因此,干扰对要传递的信号没有影响。 CAN的两根导线被称为CANH(高)和CANL(低)。CANH与CANL上的反向电平抗干扰性如图1-25所示。

(四)显性和隐性电位: 在相应的数据电码中,为 PT-CAN和K-CAN规定了0和1信号的电平。如果CAN导线的信号处在静止位置,人们就称其为隐性电位。如果有数据传递,则每根导线上的电平在隐性静止电位和显性工作电位之间波动。 PT-CAN的显性和隐性电位见表1-3。
PT-CAN的信号电平如图1-27所示。
K-CAN的显性和隐性电位见表1-4。
(五)单线运行模式在KCAN网络中,为了提高行驶安全性,如果导线之一有故障,那么收发器能够接收另一条导线的数据,即具有单线数据传输能力。这时两根CAN导线中的哪根有故障不重要,这种当前的运行模式被称作单线运行模式。 PT-CAN网络通常不提供这种能力,然而在特殊情况下可紧急运行,实现伪单线运行。

上一篇下一篇
参与回答(0条评论)
用户头像
上传
用户头像
{{item.nickname}}{{item.pubtime}}回复
回复图片
用户头像
上传
用户头像
{{item1.nickname}}回复 {{item1.othername}} {{item1.pubtime}} 回复
回复图片
用户头像
上传
查看全部回复{{item.replylist_count}}条 查看全部
收起回复 收起全部
{{isLoadList==1?'加载中...':(isLoadList==2&&(list.length <=3||(list.length>3&&!is_hidden))?'没有更多内容了':'查看更多回答')}}
返回顶部

返回顶部