怎么做串口调试软件?
嗯 ~~~ 说一下我自己写的串口助手吧, 名字叫 Bittly, 样子呢长下面这个样子
Bittly 指令调试界面
1. 需求确认
一开始使用的是类似于XCOM或者SSCOM之类的串口调试助手,他们的优点是体积小,拿过来就用,可以说平常使用已经够用了。 但是,一旦遇到比较复杂的参数的时候,问题就出来了,需要手动处理进制转换,大小端之类的问题,如果请求参数格式包含多种数据类型,那基本上就离不开计算器了,大概搜索了一下能找到的几款串口调试助手,都有着不同的限制,要么就是操作界面用着很别扭 ~~~
所以我的初始需求就是:
- 不需要手动进行进制间转换,不论是字节还是整型,又或者是长整型,都要自动处理。
- 当请求参数比较复杂,包含多种类型的时候,也能够自动进行处理,而不用使用者处理转换。
- 能够结构化的构建请求参数,文档上说传什么,我就写什么不要拼接或者转换。
- 能够保存指令数据,支持文件夹分类,没有任何数量上的限制。
- 数据响应也需要能够自动解析到结构化数据。
- 数据响应支持波形图模式查看。
2. 实现方式选择
选择一:语言:C++ 框架:QT
虽然是C++,但是使用QT开发,难度上不高,而且组件丰富,库丰富,实现我需要的需求没问题。而且移植性也没得说,基本上能做到到处编译执行。至于缺点嘛, 毕竟是C++,开发速度上就有点慢了。 假设后期我需要增加扩展功能,也比较麻烦 ~~~
选择二:语言:C# 框架: .net
难度不高,开发速度也比较快,也是比较常用的现在开发上位机的方式。 但是一个致命问题就是移植性不高。我不止要在windows上用,linux, mac(虽然买不起,但也要有要在mac上运行的目标 ~~~) 都要能用,因为这个不是一个专用的软件,而是一个工具软件。
选择三:语言:javascript 框架 :electron
难度很不高,速度飞快, 界面好看,库丰富,后续扩展也比较方便快捷,也可以到处打包,缺点就是运行效率有点低,占用空间大,打出来的安装包也大 ~~~
最终选择:javascript + electron
选择理由:我需要解决我的问题为主要目标,串口调试这种工具类的软件,在效率上来说,js 还是足够的。 那么剩下的就是占用空间和安装包大小的问题,但是这两个对于我来说并不是主要问题,我需要功能好用才是主要,毕竟又小又快又漂亮,这有点耗时间 ~~~
3. 工具开发
当需求确认,实现方式确认之后,基本上就到了实际干活的步骤了。
- 创建项目仓库,用来进行版本管理
- 初始化项目开发环境,例如初始化项目,安装依赖包,配置编辑器等
- 写代码,写代码,写代码 …
4. 工具测试
- 确定初始需求是否已经全部实现
- 执行自动化测试脚本来保证不会出现已知的错误信息,以及保证后续更改不会造成影响
- 使用真实设备进行测试确保无问题
5. 正常使用并修改
一般来说,刚刚写完的在正常使用上都会那么丢丢不顺手的地方,根据实际使用情况进行优化修改。
6. 项目发布
比如分发给同事或者其他需要的人,毕竟没有用户的软件和垃圾一样 ~~~
发布之后基本上就是反馈 -> 优化 -> 发布 这个循环了
最后
为了不让 Bittly 成为垃圾, 所以再次推荐一下, 除了做串口调试之外, Bittly 还支持 网络,蓝牙,WebSocket, HTTP, MQTT,Modbus 等多种通讯方式和通讯协议。
另外还有控制面板能够方便的制作一个上位机控制面板,用来测试和功能演示十分不错,
Bittly 控制面板运行状态组件展示
以及集成化测试,文档输出,环境变量管理等功能 ~~~~
小工具集成了各种服务端小工具,例如串口服务端用于模拟一个串口设备, 支持自动回复,手动回复,随机回复,脚本回复匹配回复等等
TCP 服务端小工具
下载 - Bittly 不止是一个串口调试助手 (~ ̄▽ ̄)~bittly.sigechen.com/download?from=001391635651&title=%E6%80%8E%E4%B9%88%E5%81%9A%E4%B8%B2%E5%8F%A3%E8%B0%83%E8%AF%95%E8%BD%AF%E4%BB%B6
目前已在 Github 上开源,欢迎来 star 还有提问题哈 (~ ̄▽ ̄)~
Github - 四格/Bittlygithub.com/sige5193/bittly
怎么做串口调试软件?相关推荐
- 变频器怎么设置_如何利用串口调试软件与变频器通信?
西门子博途的全套视频教程下载! 西门子S7-1500内部培训PPT下载! 每一个做工控的都必须要会利用串口调试软件来和我们的外围设备来做通讯测试.今天我们就来学习怎么用串口调试软件控制台达的这款变 ...
- 用python写的一个串口调试软件
分享一个用pyqt5+pyserial给公司写的串口调试软件 串口的发送和接收都是用多线程写的,实现界面UI与数据部分分离 支持hex发送与解析,还有定时发送功能 ui文件全是用qt desinger ...
- LabWindows CVI 2017开发笔记--串口调试软件实例
一.新建工程 打开LabWindows CVI软件,在桌面新建SerialDebug文件夹用来保存工程文件,在欢迎页点击New–>Project 或者在软件首页点击File–>New–&g ...
- windows串口调试linux工具,推荐一款好用的串口调试软件PuTTY
原标题:推荐一款好用的串口调试软件PuTTY PuTTY是一个Telnet.SSH.rlogin.纯TCP以及串行接口连接软件.较早的版本仅支持Windows平台,在最近的版本中开始支持各类Unix平 ...
- 串口调试软件,功能强大,侦测,拦截,逆向分析串口通汛协议
串口调试软件,功能强大,侦测,拦截,逆向分析串口通汛协议,是RS232 /422/485串行端口的专业工貝软件编号:436653364752811GUANXFENG
- 称重串口调试软件 可以用usb485通信 欧路达称重模块 调试 寻地址 模块和plc
称重串口调试软件 可以用usb485通信 欧路达称重模块 调试 寻地址 模块和plc 编号:4118656219706867天道酬勤
- 利用VSPD、串口调试助手、Keil做串口调试
下面详细介绍下如何用虚拟串口调试串口发送接收程序. 需要用到三个软件:KEIL.VSPD XP5(virtual serial ports driver xp5.1虚拟串口软件).串口调试助手(个人感 ...
- linux下发送hex数据的串口调试软件,linux下模拟串口向计算机发送数据
本人新手 从网上找了个串口通信程序改了改 本来是用单片机向串口发数据测试 但现在手头没有 请问有没有什么别的方法可以用? 非常感谢 | 一.使用工具 Windows XP 串口调试器 C ...
- 如何用QT做串口调试助手Qseriaport类的使用
首先新建工程界面设计 在这里我就不做详述了,注意的一点就是接收框是QPlainTextEdit,我把我的整体放上来,有点丑,你们可以自由发挥. 在写之前我先把我创建的一些全局变量什么的写出来,免得下面 ...
最新文章
- Ruby的.nil? .empty? .blank? .present?区别
- CentOS 6.7 如何启用中文输入法
- EasyUI中Accordion折叠面板的简单使用
- webstorm下debug调试react js程序
- PS制作立体效果——圆柱
- L1-046 整除光棍-PAT团体程序设计天梯赛GPLT
- UE4保存信息到本地
- 周期信号波形识别及参数测量装置(J 题) 【高职高专组】--2021 年全国大学生电子设计竞赛
- FreeRTOS笔记篇:第七章 -- 资源管理(互斥锁、二进制信号量、死锁)
- 二阶混合偏导数连续则相等的证明
- linux端口共享打印机,linux如何共享打印机
- 复习单片机:温度检测 DS18B20(内含:1 DS18B20 介绍+2 硬件设计+3 软件设计+4 实验现象)
- iReport制作报表
- 名词解释:DNS,A记录,子域名,CNAME别名,PTR,MX,TXT,SRV,TTL
- 不管做什么都要全力以赴
- 智能公交考勤系统管理软件设计
- 嵌入式Linux驱动开发基础
- 阜城搜索引擎排名_衡水哪个区最富,哪个县最穷?没想到阜城的排名居然是......
- git log 怎么退出
- 【JAVA知识每日一问】:JDK和JRE的区别是什么?
热门文章
- postman发送post请求一直不成功
- 办公非常好用的网站,一旦使用就无法离开它
- urllib.parse.quote报错surrogates not allowed
- 为什么结婚戒指要带在无名指上?
- Numpy闯关100题,我闯了95关,你呢?
- android studio gradle 添加jar,android studio学习----通过gradle来导入jar包
- bat脚本外部调用cmd_使用脚本控制外部流程-CMD
- oc和swift版本的实时绘制曲线、折线图,股票折线图
- 【大数据平台】基于Spark的美国新冠肺炎疫情数据分析及预测
- 二年级的女儿用计算机算算术,一年级的孩子一分钟口算多少题才算能达标?