COMTool 详细使用教程
目录
- [快速上手(5分钟入门)](#快速上手5分钟入门)
- [串口基础收发操作](#串口基础收发操作)
- [协议插件配置与使用](#协议插件配置与使用)
- [定时发送与脚本执行](#定时发送与脚本执行)
- [TCP/UDP 网络调试](#tcpudp-网络调试)
- [图表与曲线绘制](#图表与曲线绘制)
- [终端模式](#终端模式)
- [多语言设置](#多语言设置)
- [配置导入导出](#配置导入导出)
- [常见问题与故障排查](#常见问题与故障排查)
快速上手(5分钟入门)
1.1 启动程序
# 进入目录
cd D:\工业协议\商业产品\开源工具包\COMTool\comtool
# 双击运行
comtool.exe
- 首次运行自动生成配置文件
- 界面默认中文,顶部菜单:`文件` `设置` `工具` `帮助`
1.2 打开串口(最基础操作)
- 选择端口:顶部下拉框 `端口` → 选择目标 COM 口(如 `COM3`)
- 设置参数:
- 波特率:`9600`(默认,按设备手册修改)
- 数据位:`8`
- 停止位:`1`
- 校验位:`None`
- 打开:点击 `打开串口` 按钮 → 状态灯变绿
- 测试发送:
- 发送区选择 `HEX` 模式
- 输入:`01 03 00 00 00 01`(标准 Modbus 读保持寄存器示例)
- 点击 `发送` → 接收区显示返回报文
成功标志:接收区出现数据行,含时间戳和收发数据
串口基础收发操作
2.1 编码模式切换
| 模式 |
适用场景 |
发送输入示例 |
接收显示示例 |
| ASCII |
文本协议、AT 指令 |
`AT\r\n` |
`OK\r\n` |
| TEXT |
中文/多语言文本 |
`你好设备` |
`设备就绪` |
2.2 收发区功能
| 功能 |
操作 |
说明 |
| 自动换行 |
勾选 `自动换行` |
根据换行符分隔 |
| 时间戳 |
勾选 `显示时间戳` |
每条数据附带时间 |
| 统计 |
查看底部统计栏 |
收发字节数、包数 |
| 清空 |
点击 `清空` |
仅清界面,不影响日志 |
2.3 发送区功能
| 功能 |
操作 |
说明 |
| 发送历史 |
上/下方向键 |
最近命令自动记忆 |
| 定时发送 |
设置 `发送间隔(ms)` |
按间隔循环发送 |
协议插件配置与使用
3.1 创建协议插件
- 菜单 `工具` → `协议插件` → `新建插件`
- 在弹窗中编写协议解析逻辑(Python 代码)
- 配置协议名称、触发条件、解析规则
- 点击 `保存` → 插件生效
3.2 插件管理
- `工具` → `协议插件` → `管理`
- 支持导入/导出插件文件(`.py`)
- 插件文件存放于 `plugins/` 目录
3.3 使用插件解析数据
- 串口打开后,数据自动经过插件解析
- 解析后的结构化数据显示在界面中
- 支持协议数据的图形化展示
定时发送与脚本执行
4.1 定时发送
- 在发送区输入要发送的数据
- 设置 `发送间隔(ms)`(如 `1000`)
- 点击 `定时发送` 按钮 → 开始循环发送
- 再次点击 → 停止发送
4.2 脚本执行(终端模式)
- 菜单 `工具` → `终端` → `新建脚本`
- 编写 Python 脚本:
# 示例:自动读取串口数据并处理
def on_data_received(data):
print(f"Received: {data}")
if data == b"OK":
send_command(b"NEXT")
- `保存` → `运行` → 脚本自动执行
TCP/UDP 网络调试
5.1 TCP Client
- 菜单 `工具` → `网络调试` → `TCP Client`
- 目标地址:`192.168.1.100:8080`
- 点击 `连接` → 状态显示 `Connected`
- 收发操作与串口类似
5.2 TCP Server
- 切换 `Server` 模式 → 监听端口 `8080`
- 点击 `开始监听`
- 客户端连接列表显示:IP、端口、连接时间
- 选择客户端 → 发送数据
5.3 UDP
- 绑定本地端口 `9000`
- 目标 IP:Port `192.168.1.200:9000`
- 支持组播:加入组 `239.0.0.1`
图表与曲线绘制
6.1 打开图表插件
- 菜单 `工具` → `图表` → `打开图表`
- 或点击界面右侧图表面板
6.2 配置数据源
- 选择数据源:串口接收数据 / TCP数据 / 自定义数据
- 配置数据解析规则(正则表达式)
- 设置通道名称、单位、颜色
6.3 图表操作
| 操作 |
方法 |
| 平移 |
中键拖拽 |
| 读数 |
悬停显示数值 |
| 截图 |
右键 `保存图片` |
| 导出数据 |
右键 `导出 CSV` |
终端模式
7.1 打开终端
- 菜单 `工具` → `终端`
- 或使用快捷键 `Ctrl+T`
7.2 终端功能
- 命令行输入和执行
- Python 脚本编写和运行
- 自动化任务执行
- 支持脚本保存和导入
多语言设置
8.1 切换语言
- 菜单 `设置` → `语言`
- 选择目标语言(中文/English/等)
- 重启程序生效
8.2 自定义语言包
- `设置` → `语言` → `导入语言包`
- 选择 `.json` 语言文件
- 自定义翻译内容
配置导入导出
9.1 导出配置
- 菜单 `文件` → `导出配置`
- 选择导出内容(全部/部分)
- 保存为 `.json` 文件
9.2 导入配置
- 菜单 `文件` → `导入配置`
- 选择 `.json` 配置文件
- 选择覆盖/合并
9.3 团队协作
- 将配置文件分享给同事
- 统一串口参数、快捷键设置
- 共享协议插件和命令集
常见问题与故障排查
| 现象 |
可能原因 |
解决方法 |
| 收到乱码 |
波特率/校验不匹配 |
1. 对照设备手册核对 2. 尝试常见组合 |
| TCP连不上 |
防火墙/IP错/端口错 |
1. ping 目标IP 2. telnet 测试端口 |
| 插件不生效 |
插件格式错误/依赖缺失 |
1. 检查插件代码 2. 确认依赖已安装 |
| 程序闪退 |
Python 环境问题 |
1. 确认 Python 版本 2. 重新安装依赖 |
| 图表不显示 |
数据解析失败 |
1. 检查正则表达式 2. 确认数据源正确 |
进阶技巧
10.1 命令行参数
comtool.exe --port=COM3 --baud=115200 --theme=dark
10.2 多实例运行
- 复制整个目录 → 重命名 → 同时运行多实例
- 各实例独立配置文件
10.3 自动化脚本
- 编写 Python 脚本实现自动化测试流程
- 结合终端模式执行批量操作
附录:键盘快捷键
| 快捷键 |
功能 |
| `Ctrl+Shift+O` |
关闭串口 |
| `Ctrl+S` |
发送数据 |
| `Ctrl+T` |
打开终端 |
| `Ctrl+L` |
清空接收区 |
| `Ctrl+F` |
搜索接收区 |
| `F1` |
打开帮助 |
| `Alt+1~9` |
触发快捷命令 1-9 |
提示:本教程基于 COMTool v3.4.1 编写,界面细节可能随版本微调。遇到未覆盖场景,请参考程序内 `帮助` → `在线文档` 或 GitHub Issues: https://github.com/Neutree/COMTool/issues