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
SAEJ1939协 相关文章:
- SAE J1939协议(五)(12-12)
- 基于CAN总线和SAE J1939协议的汽车仪表设计(11-26)
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)