工业控制类软件,Windows平台使用C#语言既方便又快捷。在工控领域,串口通讯又是极其常见的需求。于是抽时间写了一个通用的串口调试助手工具,并将工控调试中常用的功能集成在上面,方便调试。源码已在gitee上开源,界面使用wpf实现,源码地址:
BYSerial: Microsoft Windows 串口调试助手 (gitee.com)
https://gitee.com/LvYiWuHen/byserial
简单介绍一下已实现的功能。
程序功能主要分为四大块:
1.串口通讯
2.TCP通讯
3.小工具
4.支持中英文双语切换
5.检查版本更新
6.支持添加快捷命令
7.支持ModbusRTU/ModbusAscii/ModbusTCP调试
一、串口通讯
串口通讯详细功能:
1.后台自动检测串口设备的增减。
2.支持流控。
3.接收发送编码方式同时支持ASCII和HEX方式。
4.ASCII模式时,可设置结束符,例如回车换行等。
5.HEX模式时,支持自动计算标准ModbusRTU的CRC16。
6.发送支持循环发送。
7.接收区显示支持显示发送和显示接收,并可设置发送和接收的字符串颜色。
8.接收区显示支持显示发送和接收的时间,时间格式可自定义。
9.底部显示串口状态,总接收字节数和总发送字节数。各字节数可手动清零。
10.接收区字符串可一键清空。
11.记录发送历史,支持记录最新的10条历史记录。
12.可将接收区显示的字符实时保存到本地txt文档。
二、TCP通讯
TCP通讯详细功能
1.支持TCP Client/TCP Server。
2.TCP Server时,可显示当前连接客户端列表。
3.TCP通讯采取异步方式通讯。
4.支持串口通讯功能中的3-12项。
5.不支持TCP连接断开的自动侦测。
三、小工具
包含的小工具介绍:
1.通用校验方法中包含常用的LRC,XOR,CheckSum,FCS,Modbus-CRC16等校验的计算。
2.数据转换包含整数和小数与16进制HEX的转换。
3.图片与base64互转。
4.数据采集中常用的模拟量与工程量转换计算。
5.ASCII码表。
6.C# 颜色对照表。
7.拾取屏幕颜色。该功能使用鼠标hook实现。通过hook技术可实现拦截或者修改键盘鼠标等的操作,对于有这方面需求的可以参考。
四、检查更新
1.检查更新方式:
利用gitee作为更新检查的服务器,将版本号和下载连接写在gitee项目文件中,实现自动检查更新并提供下载连接的功能
五、快捷命令列表
对于调试时,常用的命令可以在此处设置,方便快速调试。
六、ModbusRTU/ModbusAscii/ModbusTCP调试
暂时嵌入第三方Modbus调试工具,后期再用C#重新实现一遍。
七、相关开源项目
跨平台(linux/windows)串口通讯源码开源连接
xuyuanbao/BaoYuanSerial: A GUI Serial Debug Tool for Linux/Microsfot Window (github.com)
https://github.com/xuyuanbao/BaoYuanSerial
楼主最近还看过