CAN总线由哪些帧格式组成?各自有什么特性?
扫描二维码
随时随地手机看文章
在下述的内容中,小编将会对CAN总线的相关消息予以报道,如果CAN总线是您想要了解的焦点之一,不妨和小编共同阅读这篇文章哦。
一、CAN总线
CAN总线的物理层是将ECU(Electronic Control Unit-电子控制单元,又称“行车电脑”、“车载电脑”等)连接至总线的驱动电路。ECU的总数将受限于总线上的电气负荷。物理层定义了物理数据在总线上各节点间的传输过程,主要是连接介质、线路电气特性、数据的编码/解码、位定时和同步的实施标准。
理论上,CAN总线上的节点数几乎不受限制,可达到2000个,实际上受电气特性的限制,最多只能接100多个节点。
CAN的数据链路层是其核心内容,其中逻辑链路控制(LOagie Link Control,LLC)完成过滤、过载通知和管理恢复等功能,媒体
访问控制(Medium Access Control,MAC)子层完成数据打包/解包、帧编码、媒体访问管理、错误检测、错误信令、应答、串并转换等功能。这些功能都是围绕信息帧传送过程展开的。
CAN总线的特点包括:
1、具有实时性强、传输距离较远、抗电磁干扰能力强、成本低等优点;
2、采用双线串行通信方式,检错能力强,可在高噪声干扰环境中工作;
3、具有优先权和仲裁功能,多个控制模块通过CAN 控制器挂到CAN-bus 上,形成多主机局部网络;
4、可根据报文的ID决定接收或屏蔽该报文;
5、可靠的错误处理和检错机制;
6、发送的信息遭到破坏后,可自动重发;
7、节点在错误严重的情况下具有自动退出总线的功能;
8、报文不包含源地址或目标地址,仅用标志符来指示功能信息、优先级信息。
二、帧格式及其特性
数据帧由七种不同的位域(Bit Field)组成:帧起始(Start of )、仲裁域(Arbitration Field)、控制域(Control Field)、数据域(DataField)、CRC域(CRC Field)、应答域(ACK Field)和帧结尾(End of )。数据域的长度可以为0~8个字节。
1)帧起始(SOF):帧起始(SOF)标志着数据帧和远程帧的起始,仅由一个“显性”位组成。在CAN的同步规则中,当总线空闲时(处于隐性状态),才允许站点开始发送(信号)。所有的站点必须同步于首先开始发送报文的站点的帧起始前沿(该方式称为“硬同步”)。
2)仲裁域:仲裁域由标识符和RTR位组成,标准帧格式与扩展帧格式的仲裁域格式不同。标准格式里,仲裁域由1l位标识符和RTR位组成。标识符位有ID28~IDl8。扩展帧格式里,仲裁域包括29位标识符、SRR位、IDE(Identifier Extension,标志符扩展)位、RTR位。其标识符有ID28~IDO。为了区别标准帧格式和扩展帧格式,CANl.0~1.2版本协议的保留位r1现表示为IDE位。IDE位为显性,表示数据帧为标准格式;IDE位为隐性,表示数据帧为扩展帧格式。在扩展帧中,替代远程请求(Substitute Remote Request,SRR)位为隐性。仲裁域传输顺序为从最高位到最低位,其中最高7位不能全为零。RTR的全称为“远程发送请求(Remote TransmissionRequest)”。RTR位在数据帧里必须为“显性”,而在远程帧里必须为“隐性”。它是区别数据帧和远程帧的标志。
3)控制域:控制域由6位组成,包括2个保留位(r0、r1同于CAN总线协议扩展)及4位数据长度码,允许的数据长度值为0~8字节。
4)数据域:发送缓冲区中的数据按照长度代码指示长度发送。对于接收的数据,同样如此。它可为0~8字节,每个字节包含8位,首先发送的是MSB(最高位)。
5)CRC校验码域:它由CRC域(15位)及CRC边界符(一个隐性位)组成。CRC计算中,被除的多项式包括帧的起始域、仲裁域、控制域、数据域及15位为0的解除填充的位流给定。此多项式被下列多项式X15+X14+X10+X8+X7+X4+X3+1除(系数按模2计算),相除的余数即为发至总线的CRC序列。发送时,CRC序列的最高有效位被首先发送/接收。之所以选用这种帧校验方式,是由于这种CRC校验码对于少于127位的帧是最佳的。
6)应答域:应答域由发送方发出的两个(应答间隙及应答界定)隐性位组成,所有接收到正确的CRC序列的节点将在发送节点的应答间隙上将发送的这一隐性位改写为显性位。因此,发送节点将一直监视总线信号已确认网络中至少一个节点正确地接收到所发信息。应答界定符是应答域中第二个隐性位,由此可见,应答间隙两边有两个隐性位:CRC域和应答界定位。
7)帧结束域:每一个数据帧或远程帧均由一串七个隐性位的帧结束域结尾。这样,接收节点可以正确检测到一个帧的传输结束。
以上就是小编这次想要和大家分享的有关CAN总线的内容,希望大家对本次分享的内容已经具有一定的了解。如果您想要看不同类别的文章,可以在网页顶部选择相应的频道哦。