简单认识dbc文件

dbc概述

DBC(CAN data base)是描述网络上所有电子节点(ECU)之间CAN通信信息的数据库文件。
注意三个关键词:网络、电子节点和CAN信息,通常一个DBC文件只能包含一个CAN网络的节点信息。

dbc文件的编辑

安装 CANoe 软件后会带有 CANdb.exe 工具,使用此工具可以打开、编辑和创建 dbc 文件。

dbc 属性

不同的DBC属性决定不同功能的报文, 一般实际项目中涉及的报文为4类:应用报文,诊断报文,网络管理报文,XCP报文。不同作用的报文其在协议栈中的信号流路径是不同的。

报文类型Type
应用报文Norma / APP
网络管理报文NM
诊断报文DIAG
xcp报文XCP

dbc 文件内容浅析

请添加图片描述

左侧树形目录对应:

Networks —— 网络
Network nodes —— 电子节点
Messages & Signals —— CAN信息

除此之外,还有ECUs和Environment variables两项,ECUs下包含的其实是每个ECU的Network Node和Environment Variables,Environment Variables在使用CANoe仿真节点时会用到。

dbc - Networks

Networks 从网络的视角来观察总线上存在的节点、报文和信号。
注意:Networks下面只有一个CAN网络信息
请添加图片描述

Tx Messages: 列出该网络上所有的报文,实际就是每个节点发送报文的集合。
Signals: 列出该网络总线上所有的信号。
各个节点: 单个节点的收发信号

dbc - ECUs

ECUS 下有各个 Network Node, 在这个节点下有 Environment variables 和 Network Node两项。
其中 Network Node 下的是单个节点的收发信号。

dbc - Network nodes

请添加图片描述
与Networks不同,Nodes部分从单个节点的视角来观察与节点相关的总线报文及信号,以 BMS 节点为例,展开后下面包含Tx Messages、Rx Messages、Mapped Tx Signals(映射Tx信号)以及Mapped Rx Signals(映射Rx信号)。

  • Tx Messages:节点发送报文
  • Rx Messages:节点接收报文
  • Mapped Tx Signals:节点发送信号
  • Mapped Rx Signals:节点接收信号

那这里的收发报文信号和树型目录最下部的Messages和Signals有什么区别呢:
Messages与Signals下包含的报文信号比节点下的报文信号要多,并且有可能会包含实际没用到的报文信号,因为所有创建的报文信号都会在Messages与Signals下显示,但只有映射到节点的报文信号才会在Network及Node下显示。

dbc - Messages

Message是CAN总线上传输信息的最小单位,一条Message最大包含8个Byte的数据(CAN FD则最大支持64个Byte的数据)
Messages从用途角度可以分为三大类:应用(APP/Normal)报文、网络(NM)报文和诊断(DIAG)报文。

dbc - Signals

Signal 是 Message 里最小的元素单位,通过在某条报文上右击选择Edit Message打开报文编辑窗口,然后选择Layout选项卡可以查看当前报文的信号布局:
请添加图片描述

dbc的用途

软件开发方面主要配合Vector的Geny或Davinic Configuration协议栈配置工具来实现CAN通信栈的配置及代码生成;
软件测试主要用Vector的CANoe等测试工具来实现节点仿真、报文解析等功能。

  • 1
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值