[控制系统] 基于SAE1939车载CAN通信协议之数据帧

[复制链接]
 楼主| 海中水 发表于 2017-6-6 17:55 | 显示全部楼层 |阅读模式
     CAN总线通信协议中数据帧由7个不同的位域组成,分别为帧起始、仲裁域、控制域、数据域、CRC域、应答域和帧结束。标准数据着呢的报文格式如下图所示。
捕获.PNG
      数据帧各个位域定义如下:

    帧起始(SOF):就是数据帧和远程帧的开始,它由一个“显性”位构成。CAN的同步规则表明,只有当总线空闲(隐性)时,节点才能开始发送信号,而全部的节点都得同步于第一个开始发送信息的节点的帧起始前沿。

    仲裁域:仲裁域由标识符(ID)和远程发送请求位标志(RTR)组成。对于CAN2.0A标准,其仲裁域由长度为11位的标识符和RTR位组成,标识符位有ID28~ID18。对于CAN2.0B标准,仲裁域包括长度为29位的标识符、SRR位、IDE位和RTR位组成,标识符位有ID28~ID18。

    控制域:控制域由6位组成,包括2个保留位和4个数据长度码。其中2个保留位必须发送显性位,4位的数据长度码指出数据域的字节数目。

    数据域:发送缓冲区的数据按照长度代码指示长度发送,数据域一般由被传送的数据组成,它可为0~8个字节,每个字节8位,首先发送的是最高位。

    CRC域:由CRC域(15位)以及1位CRC界定符组成。

    应答域:应答域由发送方发出的2个隐性位组成,包括应答间隙(ACK SLOT)和应答界定符(ACK DELIMITER)。在应答域中,所有接收到正确的CRC序列的节点,都会在发送节点的应答间隙上将发送的隐性位改为显性位。应答界定符是应答域的第二个隐性位。因此,应答间隙两边有两个隐性位,即CRC界定符合应答界定符。

    帧结束:每一个数据帧或远程帧均有一串7个隐性位组成帧结束域结尾,这样可以使得接收节点能正确地检测一个帧的传输结束。

您需要登录后才可以回帖 登录 | 注册

本版积分规则

824

主题

11374

帖子

83

粉丝
快速回复 在线客服 返回列表 返回顶部

824

主题

11374

帖子

83

粉丝
快速回复 在线客服 返回列表 返回顶部