DBC格式解析(以文本形式打开)

Posted isAndyWu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DBC格式解析(以文本形式打开)相关的知识,希望对你有一定的参考价值。

我们先来看一段数据
BO_ 1024 VOLTAGE01: 8 BMS2
 SG_ V01 : 7|[email protected]+ (0.001,0) [0|0] "" Vector__XXX
 SG_ V02 : 23|[email protected]+ (0.001,0) [0|0] "Unit2" Vector__XXX
 SG_ V04 : 42|[email protected]+ (0.001,0) [0|0] "Unit3" Vector__XXX
 SG_ V03 : 28|[email protected]+ (0.001,0) [0|0] "" Vector__XXX

SG_ V01 : 7|[email protected]+

此处的7是起始位置,

|16表示数据长度是16位

@0表示是Motorola格式(Intel格式是1),+表示是无符号数据

关于7的起始位置,和Intel格式或者是Motorola格式是有关的,如果是Intel格式,起始位通常是0。

(0.001,0)

0.001是分辨率,表示得到的CAN信号需要乘以0.001才可以使用。0表示偏移量。偏移量是干什么用的呢,比如我们计算温度的时候,用无符号型数据,但是温度有零下,怎么表示呢,我们用0这个偏移量,比如(0.5,-40)就表示得这个数据乘以0.5,再减去40,这样就能表示零下40度的数据,精度是0.5度。两个字节最大能表示255,乘以0.5大概剩下127.5,然后减掉40,就得出,我们数据的范围是从(-40度到87.5度)这样的数据范围显然是无法满足我们的要求的,所以可能要1个半字节甚至2个字节才能表达完整的温度,或者牺牲精度为代价。

[0,0]

是表示最大值和最小值,定义一个值的范围,通常不用管。

--------------------- 本文来自 杨林土豆 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/xinjitmzy/article/details/79043322?utm_source=copy 

以上是关于DBC格式解析(以文本形式打开)的主要内容,如果未能解决你的问题,请参考以下文章

解析 .dbc 文件并生成 C++ 代码以表示每个消息的类/结构(对于目标 ECU)

CSV文件保存数字为文本形式后再次打开后数字任然显示为科学计数法的问题?

解析:JSON 文本没有以数组或对象开头,并且允许未设置片段的选项

如何从设置中获取数据并发送到此片段

ios - Heroku 和 MongoDb 上的自定义解析服务器错误 3080:JSON 文本没有以数组或对象开头,并且允许未设置片段的选项

为啥以文本形式打开图像文件会打印出奇怪的字符?