
文章目录
1. 背景
J1939是一种用于商用车辆的通信协议,它定义了一套车辆电子控制单元之间进行数据通信的规范。J1939协议通常用于车载网络,可以连接多个ECU(Electronic Control Units)或节点,以便它们可以相互通信并共享数据。这种通信协议可以用于传输诸如引擎和传动系统的参数、车辆诊断信息、传感器数据等。J1939广泛应用于商用车辆领域,如卡车、公共汽车和农用机械。
嵌入式是一门强应用学科,通讯协议是应用实现的纽带,学习和了解一种通讯协议对嵌入式内功的修炼大有裨益。
博主奉行的宗旨是,任何技术都要建立在实用价值的体现上,否则了解和掌握它,纯属浪费时间。
该系列博文的风格是以实战为主,理论辅之。
2. 要点
- J1939是在CNA2.0B之上的应用层协议,注意重点是应用层协议;
- J1939的所有报文ID都是29bit的扩展帧;
- J1939是根据PGN来区分报文类型的,J1939的帧ID中包含PGN信息,记住并理解下图,就算是掌握了J1939的“精髓”:

注意,上图是从CAN的链路层抽象出来的,如果不明白,请跳转
J1939是一种用于商用车辆的通信协议,定义了车辆电子控制单元之间的数据通信规范。它基于CAN2.0B应用层,所有报文ID为29位扩展帧。协议通过参数组编号(PGN)区分报文类型,并使用优先级、数据页、PDU格式等字段来组织数据。PGN和可疑参数编号(SPN)用于标识和区分参数组内的具体参数。
订阅专栏 解锁全文
7439

被折叠的 条评论
为什么被折叠?



