CANas分析软件,DBC文件解析,CAN报文分析,仿CANoe曲线显示
2023.01.01:增加对Kvaser的支持
参考了CANoe写了下面的软件,主要用途是对报文的回放及曲线的分析。
1、CAN连接,支持周立功CAN、CANFD及PCAN
2、DBC解析与生成文件
打开DBC,可以打开已有的DBC文件,内容会在主界面上显示。优先显示中文注释和实际值。
如果用本软件的编辑DBC功能,把协议类型改为:发送帧,就可以在主界面进行DBC的发送模式。
DBC编辑界面:简单直观好用。
点击空白行可增加一行新的内容,可以输入中文,在数据区增加新行时,LSB值会根据上一行的位长度计算出自己的值。
更改数据类型为枚举类型,可以在右侧直观的输入相应的值,值会在新建行时自动加1.
Bit矩阵可以显示当前信号所在的位置。
点击空白行可以增加新的行
3、历史报文解析,支持asc、csv、blf、trc等格式
如果你用的历史报文不是标准格式无法导入,可以把报文另存为CSV格式,其中CSV的格式如下:
对历史数据进行播放:只显示当前DBC的报文
点击开始可以对历史报文进行回放,主界面显示当前报文的实时值。
4、曲线生成,仿CANOE的曲线显示
鼠标中键可以对鼠标所在的区域进行放大与缩小。
对整形与枚举区分显示不同的曲线,与CANoe一致
实时显示:显示连接到CAN后的时间报文。
播放记录:播放当前记录曲线,在播放前要在:报文分析->导入数据,进行历史数据的导入工作。
Y轴适应:Y轴显示当前数据的数值最大值。
X轴适应:X轴显示全部时间数据
X轴竖线:显示两条竖线间的时间t1、t2、和△t
局部放大:放大按住鼠标后,拖选的区域
5、支持J1939报文的解析,可以解析充电桩国标报文
6、UDS故障诊断
可以更改配置后,进行保存,也可导入已存的配置的导入。
支持安全算法DLL的导入 。
7、UDS烧写功能
可以自定义烧定的流程。支持Hex、Bin、S19文件的烧写。
可以保存与导入配置
8、其中安全算法的demo程序如下:
用VS编写,
1 using System;
2 using System.Collections.Generic;
3 using System.Linq;
4 using System.Text;
5
6 namespace UDS //命名空间,不能更改
7 {
8 public class SecurityAccess //类名,不能更改
9 {
10 public byte[] GetKey(byte requestSeed, byte[] seed) //计算KEY函数名称,不能更改
11 {
12 byte[] key = new byte[seed.Length];
13
14 if (requestSeed == 0x01) //发送种子地址1
15 {
16 //安全算法等级1
17 }
18 else if (requestSeed == 0x03)//发送种子地址2
19 {
20 //安全算法等级2
21 }
22
23 return key;
24 }
25 }
26 }
https://pan.baidu.com/s/1nIK4ig2TW4pdCfUxiYL6VA
网盘地址:百度网盘 请输入提取码 提取码:1234
软件的基本功能已更新完毕,后期主要是对其中的BUG进行更改,大家在使用的过程中如果有想要增加的功能或发现了BUG都可留言,我会尽量增加与优化,谢谢。
CANas分析软件,DBC文件解析,CAN报文分析,仿CANoe曲线显示的更多相关文章
- MyBatis 源码分析 - 映射文件解析过程
1.简介 在上一篇文章中,我详细分析了 MyBatis 配置文件的解析过程.由于上一篇文章的篇幅比较大,加之映射文件解析过程也比较复杂的原因.所以我将映射文件解析过程的分析内容从上一篇文章中抽取出来, ...
- 解析.DBC文件, 读懂CAN通信矩阵,实现车内信号仿真
通常我们拿到某个ECU的通信矩阵数据库文件,.dbc后缀名的文件. 直接使用CANdb++ Editor打开,可以很直观的读懂信号矩阵的信息,例如下图: 现在要把上图呈现的信号从.dbc文件中解析出来 ...
- 文件解析库doctotext源码分析
doctotext中没有make install选项,make后生成可执行文件 在buile目录下面有.so动态库和头文件,需要的可以从这里面拷贝 build/doctotext就是可执行程序. ...
- CVE-2012-0003 Microsoft Windows Media Player ‘winmm.dll’ MIDI文件解析远程代码执行漏洞 分析
[CNNVD]Microsoft Windows Media Player ‘winmm.dll’ MIDI文件解析远程代码执行漏洞(CNNVD-201201-110) Microsoft Wi ...
- pcap文件格式及文件解析
第一部分:PCAP包文件格式 一 基本格式: 文件头 数据包头数据报数据包头数据报...... 二.文件头: 文件头结构体 sturct pcap_file_header { DWORD ...
- 通过正则表达式实现简单xml文件解析
这是我通过正则表达式实现的xml文件解析工具,有些XHTML文件中包含特殊符号,暂时还无法正常使用. 设计思路:常见的xml文件都是单根树结构,工具的目的是通过递归的方式将整个文档树装载进一个Node ...
- phpcms V9 首页模板文件解析
在了解了<phpcms V9 URL访问解析>之后,我们已经知道首页最终执行的是content模块下index控制器的init方法. 下面, 我们逐步分析过程如下: 第一.首页默认执行的是 ...
- SharePoint 2013中的默认爬网文件扩展名和分析文件类型
摘要:了解默认情况下 SharePoint 2013 爬网的文件扩展名及其解析的文件类型,可以借此了解搜索可以爬的文件和支持的功能. 如果“管理文件类型”页上的列表包含文件扩展名,爬网组件将仅爬网文件 ...
- android基础知识13:AndroidManifest.xml文件解析
注:本文转载于:http://blog.csdn.net/xianming01/article/details/7526987 AndroidManifest.xml文件解析. 1.重要性 Andro ...
- Android之AndroidManifest.xml文件解析
转自:Android学习笔记之AndroidManifest.xml文件解析 一.关于AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文 ...
随机推荐
- Git介绍下载安装以及基本使用
目录 一.git介绍 二.下载安装git软件 三.基本使用 四.制作忽略文件 五.Git.Gitee.GitHub.Gitlab.bitbucket的区别 六.基础代码操作分类 一.git介绍 git ...
- nutGet操作数据库
在netcoe开发过程中,通过基建生成Razor页面增删改查,通过数据实例生成数据库时,不要手工修改数据库,而且通过程序包管理器控制台命令执行 1.没有数据库第一次新建的时候可以执行add-migra ...
- 在Django中显示MySQL语句
在setting中添加以下内容 LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'handlers': { 'console' ...
- VM中centos7创建后无法上网问题
在VMware 12 Pro上安装完CentOS7发现使用ping www.baidu.com无法ping通 使用以下命令: 1.cd /etc/sysconfig/network-scripts 然 ...
- Python elasticsearch 使用心得
一.配置 python == 3.6/3.8 # 更高版本的elasticsearch会出现doc_type被统一成_doc导致旧版语句报错的情况 pip install elasticsearch= ...
- python启动robotframework-ride失败,解决方案
python启动robotframework-ride提示str(os.path.dirname(rf_file), 'utf-8'))).publish() UnicodeDecodeErro的解决 ...
- LINUX 简单命令学习总结
命令知识点大纲: 一.默认目录的简单介绍 1)/root/用户名:如/root/test1,该目录为普通用户的家目录,所有用户创建后都能在该目录下找到自己对应的目录信息 /etc:该目录为配置文件存放 ...
- VUE学习-mixin混入
mixin混入 混入 (mixin) 提供了一种非常灵活的方式,来分发 Vue 组件中的可复用功能. 组件式混入 // 定义一个混入对象 var myMixin = { created: functi ...
- 你可能不知道的HTML小技巧 面试题小技巧
程序员面试题库分享 1.前端面试题库 (面试必备) 推荐:★★★★★ 地址:前端面试题库 2.前端技术导航大全 推荐:★★★★★ 地址:前端技术导航大全 3.开发者颜色 ...
- Oracle查询表中的各列的列名,数据类型,以及类型长度
SELECT table_name, column_name, data_type,data_length FROM all_tab_cols WHERE table_name = UPPER('ba ...