微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > SAE J1939协议(三)

SAE J1939协议(三)

时间:12-12 来源:互联网 点击:
SAE J1939协议数据链路层

>>>>

基本概念

1.帧(Frame):组成一个完整信息的一系列有序的数据位,帧又被划分为成几个域,每个域包括了预定义类型的数据。

2.CAN数据帧(CAN Data Frame):组成CAN协议帧所必需的有序位域,以帧起始(SOF)开始以帧结束(EOF)结尾

3.标准帧(Standard Frame):CAN2.0A规范中定义的使用11位标识符的CAN数据帧。

4.扩展帧(Extended Frame):CAN2.0B规范中定义的使用29位标识符的CAN数据帧

5.报文(Message):指一个或多个具有相同参数组编号的CAN数据帧

6.包(Packet):一个单一的CAN数据帧就是一个包。当一条报文包含参数组的数据长度小于等于8个字节时,这样的报文也称为包。

7.多包报文(Multipacket Messages):当具有相同参数组编号的所有数据需要使用多个CAN数据帧来传输时使用的一种J1939报文。每个CAN数据帧拥有相同的标识符,单在每个包中数据不同。

>>>>

CAN标准帧与扩展帧格式

图1


图2

CAN数据帧组成:帧起始(SOF)、仲裁域、控制域、数据域、循环冗余校验域(CRC)、应答域(ACK)、帧结束(EOF).

>>>>

协议数据单元(PDU)

协议数据单元由七部分组成,分别是优先级,保留位,数据页,PDU格式,PDU特定域(可作为目标地址、组扩展或专用),源地址和数据域。PDU被封装在一个或多个CAN数据帧中,通过物理介质传输到其他网络设备。每个CAN数据帧只能有一个PDU。

图3

1.优先级(P)

这三位仅在总线传输中用来优化报文延迟,接受者对其忽略。报文优先级可从最高0(000)设置到最低7(111)。所有控制报文的缺省优先级是3(011),其他所有报文、专用、请求和ACK报文的缺省优先级是7(110)。当定义新的参数编号,或总线上通信量变化时,优先级可以升高或降低。当报文被添加到应用层,将给出一个推荐的优先级。OEM可以对网络做相应调整,优先级域应当时可重编程的。

2.保留位(R)=>扩展数据页位(EDP)

3.数据页位(DP)


图4

4.PDU格式(PF)

PF域,8位。确定PDU的格式,也就是组成PGN的域之一。协议规定:PF<240为PDU1格式;PF=240~255为PDU2格式。

5.PDU特定域(PS)

PS域,8位。它的定义取决于PDU格式,根据PDU格式它可能是目标地址或者组扩展。PDU1格式下PS域是目标地址;PDU2格式下PS域为组扩展(GE)值。

6.目标地址(DA)

这个域定义了报文发送到特定目标的地址。注意,对于任何设备,如果其他地址与接收到的报文的目标地址不同应忽略此报文。所有设备作为报文的响应者应对全局目标地址(255)作出监听和响应。

7.组扩展(GE)

组扩展与PDU格式域的低四位(注意:当PDU格式域最高四位被置1,说明PS域是组扩展)规定了每个数据页4096个参数组。

>>>>

PDU1格式下的PGNs


图5

>>>>

PDU2格式下的PGUs


图6

>>>>

PGNs分配模板

图7

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top