基于QT的CAN仿真工具(一)----CAN Dbc的格式

本文介绍了CAN DBC文件的格式,用于CAN仿真工具的开发。主要内容包括:1. MessageID与信号名称;2. 信号开始位置与长度;3. Factor与Offset计算物理值;4. 信号值列表与枚举类型;5.极大值与极小值;6. 信号说明。通过解析DBC,可以手动获取所需信息,为编写代码解析DBC奠定基础。
摘要由CSDN通过智能技术生成

 

 

既然是CAN仿真工具,第一篇就讲一下CAN DBC的格式,如何通过dbc文件定位到需要的信号 。下面用到的所有定义都已经做过处理,都是假的,不涉及任何商业使用的数据。

以下内容不针对没有CAN基础的同学,如果有基础问题可以后面留言,不定期回复。以下内容均为原创,转载请注明出处。

各个CAN工具公司都有CANDBC的编辑与查看工具并且都很智能 ,比如Vector的CANOE跟 CAN Alyzer或者intrepidcs的工具都有dbc的工具。那么问题来了,为啥我们还要人工去看看怎么解析 ,因为我们要做的是自己的CAN 工具,CAN dbc 的各种操作都需要自己去实现 ,所以这篇文章就是介绍如何用肉眼去解析CAN dbc,有了人工解析的能力,使用代码解析就手到擒来了。

针对一个信号无非是以下几个内容:

1. 信号所在的MessageID与名字,每个信号都依附于一个MeesageID;

2. 信号的名字,这个信号叫什么名字,有时候信号名字会有变化;

3. 信号的开始位置与长度,及时信号名变化,只要信号的位置与长度不变就不影响该信号的值;

4. 信号的Factor与Offset,由于每个CAN message 包含64bit的数据,只能表示整型,但是汽车中有很多物理量是需要小数点及负数的 ,比如温度,-40度-+40度。因此需要引入factor和offset的概念,在计算物理值的时候需要用以下公式计算:

raw_value*Factor+Offset=Py

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值