kaiyun官方注册
您所在的位置: 首页> 通信与网络> 业界动态> 为什么CAN信号传输中要插入反码位

为什么CAN信号传输中要插入反码位

2016-07-23
来源:ZLG致远电子

  熟悉CAN通讯的工程师们一般都会见过“反码位”一专业术语,但它到底是什么?到底有什么用?也许很多人对其并没有深入的理解,本文将让大家对此不再迷惑。

  数据数字编码具有很多方法,诸如非归零(NRZ)、曼彻斯特或脉宽编码,它们的区别在于用来表示一个位的时隙的数目不同,如图 1所示。非归零电平编码的信号电平在整个位时间里保持不变,因此只需要一个时隙来表示一个位。而曼彻斯特编码的信号在一个位时间内发生变化,因此需要两个时隙来表示一个位。曼彻斯特编码的优点是每个位都有一个信号边沿用来实现位同步(Self-clocking code)。但是曼彻斯特编码和非归零编码相比,在相同的位时间(位频率)时,位速率只能达到非归零码一半。由于非归零编码的信号电平可长时间保持不变(取决于所传输的数据),因此有必要采取适当的措施以确保不超过两个信号沿之间最大允许的时间间隔。重新同步点之间最大的时间间隔由节点振荡器的误差决定。重新同步可通过应用“位填充”的方法实现。这种方法是在一定数量的恒定位电平之后将一个反码插入到位流中。

1.jpg

  图 1 NRZ和曼彻斯特编码的位表示

CAN协议中应用的是带位填充(填充宽度为5位)的NRZ信号编码,它保证了具有足够同步能力的最高传输性能。这种类型的编码还提供非常良好的信号辐射特性(总线辐射的能量大致上和传输信号的频率以及信号边沿的数量成比例)。

  CAN协议中应用NRZ编码的部分包括SOF、仲裁场、控制场、数据场、数据帧和远程请求帧的CRC序列。发送器一检测到5个连续相同值的序列,它就会在实际传输的位流中插入一个反码位。数据帧或远程帧剩下的部分(CRC分隔符、ACK场和EOF)都有一个固定的形式(隐性电平),并且不采用位填充进行发送。出错和超载帧也是如此。


本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306116;邮箱:aet@chinaaet.com。
Baidu
map