8000 GitHub - twoflyliu/ecanspy3
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

twoflyliu/ecanspy3

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ecanspy3

基本功能

ecanspy3是一个类似于VehicleSpy3的一款应用软件,主要功能是进行CAN总线测试。

功能列表

当前版本的ecanspy3支持以下功能:

  • 支持广成科技的USB CAN盒作为CAN输入输出设备
  • 支持加载dbc,并且自动解码CAN总线上的信息
  • 支持发送多个报文,并且提供比较友好的界面来改变要发送报文中的信号值
  • 支持周期性发送和触发性发送
  • 支持报文接收报文的软件滤波
  • 支持接收报文有滚动和更新模式,在滚动模式下,可以看多所有的数据,在更新模式下可以看到最新数据
  • 支持接收报文的树状显示,顶层级别显示报文信息,叶子级别显示解码后的信号信息
  • 支持数据保存功能,注意数据保存最多只能保存最新的30万条信息
  • 支持实时保存功能
  • 支持主题切换,当前支持两套主题,一套是默认主题,一套是黑色炫酷主题
  • 支持项目相关操作(新建项目,保存项目,另存为项目)

性能优势

  • 报文发送周期误差可以控制在10ms之内
  • 总线上即使很高,CPU使用率也不会很高(更新模式:实测在4%左右, 滚动模式下:实测不超过10%),内存占用也是确定的,
  • 可以显示的最新报文数目为35万条
  • 接收显示的数据量即使非常大(35万条),可以做到滑动自如,不卡屏

软件快照

  1. 白色主题

滚动模式

white-theme-scrolll

更新模式

white-theme-update

  1. 黑色主题

滚动模式

white-theme-scrolll

更新模式

white-theme-update

下载

download

使用指导

前置步骤

  1. 因为本程序支持的CAN设备是广成科技的CAN设备,所以你需要有个广诚科技的USB CAN盒

  2. 安装号USB CAN盒驱动,并且和电脑连接起来

软件使用步骤

  1. 点击工具按钮关闭CAN设备,只有在CAN设备关闭的情况下,才可以进行后续操作(解释下为什么使CAN设备默认开启,因为此程序带有项目保存功能,当下次启动的适合 ,会自动加载上次的项目, 所以就不需要再次进行配置了,直接使用就行了),如下图所示:

usage-step1

  1. 加载DBC文件(这个是信号编码和解码的前提,并且发送操作也是依赖这一步骤), 入下图所示:

首先,点击加载DBC按钮

usage-step21

然后,选择要加载的DBC文件, 点击打开

usage-step22

  1. 选中要发送的报文,然后右键弹出菜单,选择copy to transmit,入下图所示:

usage-step31

当执行第三步后,会在整个窗口的发送面板中加载所选择的发送报文信息,并且发送面板中的信号窗体中会自动显示当前报文的所有信号

usage-step32

  1. 启动CAN设备, 如下图所示:

usage-step4

  1. 如果想发送哪个报文,值需要将对应报文的CheckBox选中,即可 usage-step5

  2. 如果想改变哪个信号的值,只需要点击发送面板中,信号窗口中的对应信号的相关单元格(附加说明:+,-按钮,物理值单元个和原始值单元值,都可以改变信号的值,并且对于有物理含义 的信号,可以直接在物理信号单元格中输入你想输入的物理值,内部有算法找到一个最接近的值)

点击+/-按钮修改信号值

usage-step61

点击物理值单元格来信号值

usage-step62

usage-step63

项目结构介绍

1. dbc4cpp文件 73A8

此文件夹是解析dbc库的项目文件夹,此项目最新产生dbc4cpp.a dbc4cpp.dll文件

此库内部因为实现考虑使用者就是ecanspy3 QT程序,所以内部容器就是使用QT库内的容器库,所以此库目前仅支持QT程序,不能用于普通的c++程序中。

2. dbc4cpp_test文件夹

此文件夹使dbc4cpp库的一个使用demo项目,所以如何使用dbc4cpp.dll可以参考此文件夹

3. ecanspy3文件夹

此文件夹是主项目QT工厂所在的目录,此项目最新产生可执行的ecanspy3.exe文件

本应用软件使用QT进行界面开发,内部主要使用view + model, 保证在总线负载很大的情况下,也不会占用太多的资源。

感兴趣的同学,可以先熟悉下QT库,然后在参与项目的开发

4. dist文件夹

此文件夹包含每个版本的最终释放的程序,其中每个版本文件夹下都有两个文件夹,一个叫packaged, 一个叫unpackaged, 现在说下区别:

  • packaged 这个文件夹下只有一个文件ecanspy3.exe程序,这个程序使打包后的程序。使用这个程序后,你不需要考虑有没有缺XXX.dll文件了, 但是它有个劣势,其占用的内存会偏多
  • unpackaged 这个文件夹下只会一个ecanspy3.exe文件,还有好多其他的dll文件,你如果使用此文件夹下的ecanspy3.exe的话,那么需要就此文件夹下对应的dll文件也拷贝过去,这样才 不会运行出错,这儿虽然拷贝不太方便,但是它相对于前者的优势是内存占用正常,不会偏多

总结 packaged文件夹下的程序拷贝(安装)方便,运行时内存占用偏高;unpackaged文件夹下的程序拷贝(安装)不方便,很容易出现缺少XXX.dll文件的问题,但是运行时内存相比较于前者 会少很多。推荐packaged下的程序

致谢

  • 感谢QT库
  • 感谢Vector公司的发明DBC文件格式
  • 感谢dracula项目

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0