DBC文件解析
关于dbc最全的文章在这里:https://blog.csdn.net/u010808702/article/details/104152745
最新的DBCView的使用方法在(一):https://blog.csdn.net/u010808702/article/details/104202164
最新的DBCView的使用方法在(二):https://blog.csdn.net/u010808702/article/details/104214107
免费的DBC和EXCEL相互转换方法:https://blog.csdn.net/u010808702/article/details/104249739
DBC是vector公司定义的can网络通信文件格式,vector的规范《DBC File Format Document》从下面链接获得
百度网盘:https://pan.baidu.com/s/1GUvfEHv1NQbJ2bL2e7ZL5w
提取码:d622
一、DBC文件介绍(让大家了解DBC是什么)
DBC文件是由德国维克多公司发布的,它被用来描述单一CAN网络中各逻辑节点信息,依据该文件可以开发出来监视和分析CAN网络中所有逻辑节点的运行状态,也可以是有针对性的ECU通信应用软件。
DBC是一种文件格式,.dbc文件是一个ASCII格式的文件,其.dbc扩展名可用于定义CAN网络。
二、DBC解析(DBCView)
下面,让我们带着工具DBCView进一步了解DBC文件的格式。
1)DBC是描述CAN网络节点间的数据通讯的文件:
DBC文件中开头会描述此dbc文件中有多少个节点,例如下面一行:
BU_: Labcar_Receive ABAG ABS EPS GW
这里会少一个默认的vector_xxx节点,在DBCView中会有比较好的拓扑图来显示:
例如下面的3.dbc文件,包括了6个节点连接在CAN网络上
2)dbc文件中会为每个节点定义发送消息,接收消息
紧接着节点之后,dbc文件中会描述节点间MSG传送,例如下面这样:
BO_ 1546 DIAG_Rsp_ABS: 8 ABS
其中BO表示此行描述的是一个MSG,1546是MSG的CANID,DIAG_Rsp_ABS是MSG的名字,8是MSG的size(8个字节), ABS是该MSG由ABS节点发送从来。
在DBCView中,左边树状列表图会表示CANBUS上所有节点,展开节点,就是该节点的所有发送MSG。
BO_ 1546 DIAG_Rsp_ABS: 8 ABS
SG_ Byte2 : 8|8@1+ (1,0) [0|255] "" Labcar_Receive,GW
在BO_下面,会定义该MSG中包含的所有Signal,例如上面SG_ Byte2 : 8|8@1+ (1,0) [0|255] "" Labcar_Receive,GW
DIAG_Rsp_ABS MSG中有一个Signal,名字叫Byte2,名字后面“8|8@1+ (1,0) [0|255] "" ”是Signal的细节,后面再介绍。
Labcar_Receive,GW 是表示改Signal会被Labcar_Receive 和 GW接收,对于Labcar_Receive 和GW来说,也就是他会接收到来自
ABS的DIAG_Rsp_ABS消息,在DBCView中,节点的接收消息会在右边显示。
例如下图所示:3.dbc文件中ABS节点有3个发送MSG,同时从GW节点接收3个MSG。
在DBCView中,用鼠标点击某个MSG,Signal,Node会高亮显示消息的发送和接收路径,如下图,点击了ABS消息后,蓝色线是ABS
节点的所有接收消息。
3)DBC解析---MSG内部Signal排版
在3.dbc文件中,mBrake_1消息内部的signal 如下图所示,包括signal的位置,长度,格式等
4)DBC解析---MSG的attribute
DBC文件除了规定MSG的layout外,还可以定义它的Attribute,具体Attribute的使用,会和OSEK COM规范相关
5)DBC解析---Signal的细节介绍
Signal包括它的大小、位置、值的意义、单位等基本信息。
Signal的Attribute包括了它的Name、default、type等等 如下图所示:3.dbc文件中Signal的基本信息和Attribute
6)DBCView工具的其他特性
以树状图显示CANBUS上所有的Node、Message和Signal。 选中总线上某个Node、MSG或者Signal,和这个相关的内容就会用线连接起来。让您一目了然!
7)DBCView的其他特点:
DBCView是共享软件,需要扫码才能使用。
新版免费了。