记录自用的CAN开发调试工具和上位机
文章目录
- 前言
- 二、CANable开源软硬件
- 三、AMP32F103 方案的自制USB2CAN 调试器
- 四、TTCAN - USB2CANFD调试器
- 二、PyQT开发CAN调试器上位机
- (1)CAN通信速率可设,CAN/CANFD可选
- (2)CAN报文的收发以及解析显示
- (3)根据DBC文件对收发报文进行解包和组包
- (4)UDS功能测试
- (5)FOTA功能(定制化需求)
前言
接触汽车电子软件开发一年的时间里,主要进行CAN通信相关的开发工作,这就不可避免地需要CAN通信调试工具,基本上Vetor的权威工具,比如CANoe属于稀缺资源,排着队才能借到用。至于Pcan、周立功CAN也不是个人能舍得钱买得起的。就只好求助万能的某宝,在工作的过程中不断地寻找合适的(廉价的)CAN调试工具,能满足基本的调试功能就可,也不追求极致的性能和高大上的功能。能用就好,合适就好,价廉的同时能辅助完成自己的开发工作就好。
二、CANable开源软硬件
https://canable.io/getting-started.html
国外非常牛逼的CAN调试器软硬件开源项目,包括硬件原理图PCB设计以及多种可选固件,可以直接刷PCAN的固件,然后就可以开心的使用各种类似PcanView、BusMaster等上位机调试软件。
某宝搜canable就有现成品,以前还有99元,现在好像基本都在200元以上了。
三、AMP32F103 方案的自制USB2CAN 调试器
本来准备买个STM32F103 + TJA1042方案的小开发板,做个UDS和FOTA开发的DEMO,后来在某宝看中了AMP32F103 + TJA1042方案的小开发板,架不住便宜才20多块钱,作为STM32F103的替代品直接买了,反正就是练手用的。后来这个DEMO完成后,基本就闲置了。
再后来,手上的CAN调试工具总被借走,就开始准备捣鼓一个自己专用的CAN调试工具。查了下AMP31F103CB的用户手册,发现该芯片支持USB2和CAN同时工作使用(STM32F103的USB和CAN是不能同时使用的)。然后就利用AMP32官方提供的SDK,基于USB CDC的类,开发了USB虚拟串口转CAN的固件,然后上位机就可以基于串口开发了。(以前做过串口上位机开发,比较熟)。
四、TTCAN - USB2CANFD调试器
后来项目的需求,都开始上CANFD了,这就导致我手上上面两款廉价的CAN调试器无法满足我的调试需求了,某宝上花了60多买了这个USB2CANFD的调试器,也是USB虚拟串口的上位机通信方案。这样稍微修改下之前开发的上位机,基本就可以适配这个调试器了。虽然卖家也提供了上位机,但是用起来就是没有自己开发的上位机顺手和合适。
二、PyQT开发CAN调试器上位机
有了物美价廉的CAN调试器工具,就必须配一个满足自己所有需求的上位机,不然就是摆设啊。用PyQT5开发上位机界面,最后用Python实现上位机的逻辑功能。自己对上位机的基本需求:
(1)CAN通信速率可设,CAN/CANFD可选
(2)CAN报文的收发以及解析显示
(3)根据DBC文件对收发报文进行解包和组包
(4)UDS功能测试
除了基本的诊断功能测试,还提供测试用例自动化测试以及生成报告的功能
(5)FOTA功能(定制化需求)
基于以上的需求和实际开发工作中的需求,不断地完善上位机。
记录自用的CAN开发调试工具和上位机相关推荐
- ubuntu下Qt开发西门子PLC上位机
一条流水线,因为下位机PLC比较固定,用的是1200和1500和倍福IO模块,重要的是逻辑,没什么好写,就写写上位机吧,虽然也就是集成各功能,但作为记录下历程也不错的,也算是新公司一个小小的里程碑了, ...
- python 串口_如何使用Python开发串口通讯上位机(一)
用Python开发串口通讯型上位机,其实并非最优解,本系列更新只为个人学习与总结.如果有C语言底子,嵌入式层面的上位机开发,C++ Builder,C#才是更加好用的利器. 1 什么是上位机 从事过嵌 ...
- python上位机开发实例-python上位机
广告关闭 腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元! 若python上位机接受到的字符为"1',则print出ok,如果字符是 ...
- python做上位机好不_如何使用Python开发串口通讯上位机(完结)
2021的第一份更新,比以往时候来得早一点! 前面两期讲了如何使用pyserial和做好了基本的上位机界面以及与API的联动,今天我们接着完善下代码.1 编码规范的使用 前面两期只是做基础展示用,所以 ...
- python隐藏画笔箭头的函数是hide_Python开发的串行通信上位机程序三部曲第三部分,串口,通讯,用,图形,方式,显示,数据...
用Visual Basic或者C#, LabVIEW等软件开发的上位机界面,和文本式交互界面比较而言,就是可以用图形方式来显示数据.那么python可不可以用图形来显示数据呢?Of course! 和 ...
- python编程与下位机通讯_如何使用Python开发串口通讯上位机(一)
用Python开发串口通讯型上位机,其实并非最优解,本系列更新只为个人学习与总结.如果有C语言底子,嵌入式层面的上位机开发,C++ Builder,C#才是更加好用的利器.1 什么是上位机 从事过嵌入 ...
- python 串口上位机_如何使用Python开发串口通讯上位机(二)
黑色的dos窗口对于大部分来说,页面极为不友好,且操作不方便,因此本篇主要讲讲如何结合QtDesigner创建一个UI并初步与串口Api链接.1 QtDesigner进行上位机页面设计 Python下 ...
- python蓝牙上位机开发_python做上位机 - osc_2frv0wjp的个人空间 - OSCHINA - 中文开源技术交流社区...
参考文章: https://blog.csdn.net/dgut_guangdian/article/details/78391270 https://www.cnblogs.com/lanceyu/ ...
- php做上位机,开发过usb上位机驱动的大虾请看一下(附图)
我不太明白你的意思,既然主机已经检测到我的usb设备,提示我安装驱动,那么说明我在00 09 01 00 00 00 00 00 之前的程序应该都是正确的,而我现在按照ddk+vc+driverst ...
最新文章
- 在吗?认识一下JWT(JSON Web Token) ?
- linux内存释放和使用限制
- c语言已知斜率 求倾角,倾斜解的问题
- c++中delete对象后 调用成员函数_C++类的特殊成员函数及default/delete特性
- 斜度符号标注_机械图纸尺寸标注规则,第1次见,太直观太形象了!测量工程师可以拿去教绘图的了!...
- MPU6050开发 -- Linux下测试
- 随笔:web服务器中建立一个小的个人站点
- Ubuntu 华为开源镜像站 Mirror
- Thumbelina,摘自iOS应用Snow White and more stories
- 天池客流预测–GBDT
- 十次方:机架式服务器和塔式服务器有什么区别?
- 估值模型不适用_十年十倍!绝对估值法是如何引领巴菲特买入可口可乐的?
- 彩虹配色的RGB函数
- android 清理 app,最好用的五大手机清理APP
- AndroidX使用
- IDEA中maven仓库依赖报错:Cannot resolve com.example:product-server:0.0.1-SNAPSHOT
- postgresql10中的pg_stat_statements
- windows xp iis5.1服务器安装
- matplotlib之饼图
- 成都精灵云-C++开发工程师-技术面经(30min左右)