SAE J1939: CAN网络协议深度解析

需积分: 10 6 下载量 59 浏览量 更新于2024-08-17 收藏 1.33MB PPT 举报
"这篇学习资料主要介绍了SAE J1939协议,这是一种在商用车辆如货车、客车以及农业和林业机械中广泛使用的高速通信网络协议。它基于CAN 2.0B,提供了ECU之间的闭环控制通信标准。J1939协议由美国汽车工程师协会SAE制定,旨在为电子系统创建开放互联结构,标准化ECU间的通信。报文格式是J1939的一个关键部分,使用29位ID的扩展帧格式,确保每个节点拥有唯一的源地址,避免了标识符冲突。协议数据单元(PDU)是J1939组织信息的方式,包含优先级、保留位、数据页、PDU格式、PDU细节、源地址等多个字段。PDU可以通过一个或多个CAN数据帧发送,最大可发送1785字节的数据。报文的优先级用于优化报文延迟,一般控制类报文的优先级为3,其他为6,但可以根据需要调整。" 本文详细解析了SAE J1939协议,这是一个由美国汽车工程师协会(SAE)的卡车和公共汽车电气电子委员会下的控制和通信分委会制定的通信协议,主要针对商用车辆。J1939协议建立在CAN 2.0B的基础上,为电子控制单元(ECU)间的通信提供了一套标准架构,以实现不同ECU之间的高效、可靠的数据交换。 报文格式是J1939的核心部分,使用了扩展帧格式,即29位的CAN标识符,每个节点都有一个独特的源地址,防止了在通信过程中出现相同的标识符导致的冲突。PDU(Protocol Data Unit)是数据帧中的ID和数据部分的组合,包含7个预定义的场,比如优先级P、保留位R、数据页DP、PDU格式PF、PDU细节PS、源地址SA和数据内容。PDU可以通过一个或多个CAN数据帧发送,最大可传输1785字节,这对于传递大量数据非常有用。 J1939的优先级机制允许优化报文的延迟,其中3位的优先级字段用于设置报文的紧急程度,通常控制报文的优先级设为3,而其他类型设为6,但可以根据系统需求进行调整。此外,报文中的保留位R目前尚未使用,保持为0,以备将来扩展。 SAE J1939协议是商用车辆通信的关键技术,它提供了一套全面的规则来管理和调度ECU之间的通信,确保了网络的有效性和可靠性。通过理解其报文格式和PDU的概念,开发者能够更好地设计和实现符合J1939标准的通信系统。