前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >利用CANdb++ Editor在DBC文件中进行报文解析(详细教程)

利用CANdb++ Editor在DBC文件中进行报文解析(详细教程)

作者头像
全栈程序员站长
发布2021-04-07 10:46:13
8.1K0
发布2021-04-07 10:46:13
举报
文章被收录于专栏:全栈程序员必看

摘要: CANdb++是汽车CAN总线DBC文件的编辑软件。由于官网下载的文件存在bug,在这里我将官网和修复bug的文件一并进行上传(所有的文件都在这里了)。下面提供CANdb++软件的使用教程。

CANDB++软件下载连接: https://download.csdn.net/download/RNG_uzi_/12967834

目录:

1、CANdb++软件安装

安装完成后会提示缺少Cdbstat.dll文件,这里我已经将该文件放到下载文件的主目录文件夹下。需要复制Cdbstat.dll文件,复制到C:\Windows\SysWOW64

在这里插入图片描述
在这里插入图片描述

2、DBC文件添加帧CAN_ID和信号CAN_Signal

DBC(Data Base CAN)文件用于描述单个CAN网络的通信,DBC文件格式比较固定、不会产生歧义和理解误差,便于交流。下面在已有的DBC中增加帧Frame ID和信号Signal。

软件示意图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.1、打开“CANdb++ Editor”,在”Signals”中增加一个信号;

(1)新建项目

图片来源于网络
图片来源于网络

(2)右击“Signals”,在上下文中选择“New”,弹出如下对话框

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(3)编辑“Signal‘New_Signal_6’”对话框中的信息; ?编辑信号基本信息: 修改前:

在这里插入图片描述
在这里插入图片描述

修改后:

在这里插入图片描述
在这里插入图片描述
代码语言:javascript
复制
注:
“Name:”表示该信号的名称;
“Length[Bit]:”表示该信号的长度,以Bit度量;
“Byte Order:”表示数据格式,有“Motorola(大端模式)”,“Intel(小端模式)”可选,根据实际情况选择;
“Value Type:”表示数据是有/无符号类型(若偏移量为0,需要表示负数,则该项选择Signed; 若偏移量为负数,需要表示负数,则该项选择Unsigned。);
“Factor:”表示分辨率;
“Offset:”表示偏移量;
“Minimum:”和“Maximum”表示该信号实际范围;
“Init.Value:”表示该信号的初始值;
“Unit:”表示单位。
解析数据时:实际的信号物理值 = 分辨率 * CAN信号值 + 偏移量

?对该信号添加备注: 修改前:

在这里插入图片描述
在这里插入图片描述

修改后:

在这里插入图片描述
在这里插入图片描述

2.2、在“CANdb++ Editor”右侧的”Message”中增加一个ID;

(1)右击“Message”,在上下文中选择“New”,弹出如下对话框;

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(2)编辑“Message‘New_Message_4’”对话框中的信息; ?编辑ID基本信息: 修改前:

在这里插入图片描述
在这里插入图片描述

修改后:

在这里插入图片描述
在这里插入图片描述
代码语言:javascript
复制
注:
“Name:”表示新增ID的名称;
“ID:”用十六进制表示,如果是标准帧,范围:0~0x7FF;
“DLC:”表示新增ID实际的长度,最大为8.

(3)添加该ID的信号: 修改前:

在这里插入图片描述
在这里插入图片描述

修改后:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(4)定义该ID发送节点: 修改前:

在这里插入图片描述
在这里插入图片描述

修改后:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(5)将信号拖动到合适的位置 修改前:

在这里插入图片描述
在这里插入图片描述

修改后:

在这里插入图片描述
在这里插入图片描述

(6)定义该ID的周期和发送类型 修改前:

在这里插入图片描述
在这里插入图片描述

修改后:

在这里插入图片描述
在这里插入图片描述

(7)给该ID添加备注:

在这里插入图片描述
在这里插入图片描述

2.3、对ID中的信号添加接收的节点;

(1)双击Message里ID中的信号(最底层文件):

在这里插入图片描述
在这里插入图片描述

修改前:

在这里插入图片描述
在这里插入图片描述

修改后:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.4、对ID中的信号增加“值描述”;

(1)在菜单栏中选择“View”à“Value Tables”

在这里插入图片描述
在这里插入图片描述

(2)在空白的位置右击,并在上下文中选择“New”;

在这里插入图片描述
在这里插入图片描述

(3)在弹出的对话框中,编辑相关信息;

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(4)对Message中的信号增加“值描述”。 ?双击Message里ID中的信号:

在这里插入图片描述
在这里插入图片描述

?对该信号增加“值描述” 修改前:

在这里插入图片描述
在这里插入图片描述

修改后:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

综上,新增CAN_ID和CAN_Signal已经完成。

发布者:全栈程序员栈长,转转请注明出处:https://javaforall.cn/2131.html原文链接:

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020年11月8日 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、CANdb++软件安装
  • 2、DBC文件添加帧CAN_ID和信号CAN_Signal
  • 2.1、打开“CANdb++ Editor”,在”Signals”中增加一个信号;
  • 2.2、在“CANdb++ Editor”右侧的”Message”中增加一个ID;
  • 2.3、对ID中的信号添加接收的节点;
  • 2.4、对ID中的信号增加“值描述”;
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档