解析CAN的J1939协议PDU报文

解析CAN的J1939协议PDU报文PF用来确定PDU格式:0——239表示PDU1格式;240——255表示格式2。PDU1格式报文表示向特定或全局地址发送PDU2格式报文表示向全局地址发送PS由PF决定其含义DA表示报文要发送的目标地址GE表示PS在PDU2中与PF的4个最低有效位能够共同确定4096个PDU2格式参数组数据场数据场包含了参数组中的数据内容,通常控制类参数组数据长度等于8;其中

大家好,又见面了,我是你们的朋友全栈君。

解析CAN的J1939协议PDU报文

PF用来确定PDU格式:0——239表示PDU1格式;240——255表示格式2。

PDU1格式报文表示向特定或全局地址发送

PDU2格式报文表示向全局地址发送

PS由PF决定其含义

解析CAN的J1939协议PDU报文

DA表示报文要发送的目标地址

GE表示PS在PDU2中与PF的4个最低有效位能够共同确定4096个PDU2格式参数组

数据场

数据场包含了参数组中的数据内容,通常控制类参数组数据长度等于8;其中未定义的字节以0xFF填充,已备将来分配;如果参数组数据长度超过8,要使用传输协议。

参数组与PGN

参数组数目=[240(PDU1)+16*256(PDU2)]*2(DP)=8672

PGN计算

PDU1格式

PGN=PF*256

PDU2格式

PGN=PF*256+GE

使用举例

解析CAN的J1939协议PDU报文

报文解析

SPN(可疑参数编号)

SPN使用演示

解析CAN的J1939协议PDU报文

解析CAN的J1939协议PDU报文

物理数值=比列系数*总线数值+偏移量

根据上面图片,假如读取到报文中总线数值为100,则其物理温度为=100*1-40=60°

总线数值=(物理数值-偏移量)/比例系数

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/132803.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号