报文解析
报文组成
一般报文主要有以下几个参数(比较全的情况下)
例:
解析报文时主要用到的是帧ID和帧数据
帧ID
接收到的帧ID是十六进制的形式,由29位标识符转换的,目前大多数的通信协议中都直接给出了相应的帧ID,不需要换算。
标识符PGN:
· P:优先级,有3位,可以有8个优先级(0~7)
· R:保留位,有 1位,固定为0
· DP:数据页,有1位,固定为0
· PF:报文的代码,有8 位
· PS:报文的目标地址(也就是报文的接收方),有8位
· SA:报文的源地址(也就是报文的发送方),有8位
BMS与VCU之间的29位标识符PGN
以上29位标识符 二进制 转换为 十六进制 为 ID=0x0CFF7C03
帧数据
帧数据一般由8个字节组成,根据相关通信协议来对应其中的含义,比如BMS发送的报文,byte3对应电流的低字节,byte4对应电流高字节
BMS与VCU之间的报文
报文解析
CAN报文解析就是用帧数据中相应的字节,根据具体的通信协议解析,计算出对应的物理信号的值。
数据类型的定义:
value = recv(byte)*scale+offset
例:
帧ID=0x0CFF7C03
帧数据:12 34 12 34 12 FF FF FF
电流 = 3412*0.1-1000=333A
本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理