# modbus_Debugger_qt **Repository Path**: clint315/modbus_-debugger_qt ## Basic Information - **Project Name**: modbus_Debugger_qt - **Description**: modbus qt调试客户端 - **Primary Language**: Unknown - **License**: GPL-3.0 - **Default Branch**: dev - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-10-22 - **Last Updated**: 2025-10-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Modbus TCP/RTU 调试客户端 一个功能完整的Modbus协议调试客户端,支持TCP和RTU两种通信模式。 ## 功能特性 ### 支持的协议 - **Modbus TCP**: 通过TCP/IP网络通信 - **Modbus RTU**: 通过串口通信 ### 支持的功能码 - **0x01**: 读线圈(Read Coils) - **0x02**: 读离散输入(Read Discrete Inputs) - **0x03**: 读保持寄存器(Read Holding Registers) - **0x04**: 读输入寄存器(Read Input Registers) - **0x05**: 写单个线圈(Write Single Coil) - **0x06**: 写单个寄存器(Write Single Register) - **0x10**: 写多个寄存器(Write Multiple Registers) ### 主要功能 - 支持TCP和RTU模式切换 - 串口参数完全可配置(波特率、校验位、数据位、停止位) - 支持多种Modbus功能码 - 数据显示支持十进制和十六进制格式 - 实时日志记录所有操作 - 写入支持单值或逗号分隔的多个值 ## 编译要求 - Qt 6.x(推荐6.10.0或更高版本) - CMake 3.16或更高版本 - MinGW 13.1.0或更高版本(Windows) - Qt SerialBus模块 - Qt SerialPort模块 ## 编译步骤 ### Windows (MinGW) 1. 确保已安装Qt和MinGW工具链 2. 打开PowerShell,设置环境变量: ```powershell $env:PATH = "E:\Qt\Tools\mingw1310_64\bin;" + $env:PATH $env:CMAKE_PREFIX_PATH = "/Users/clint/Qt/6.10.0/mingw_64" ``` 3. 创建构建目录并编译: ```powershell cd ModBusDebugger mkdir build cd build cmake -G "MinGW Makefiles" -DCMAKE_PREFIX_PATH="/Users/clint/Qt/6.10.0/mingw_64" .. cmake --build . -j 4 ``` 4. 运行应用程序: ```powershell $env:PATH = "E:\Qt\6.10.0\mingw_64\bin;" + $env:PATH .\ModBusDebugger.exe ``` ### 使用Qt Creator 1. 打开Qt Creator 2. 打开项目文件 `CMakeLists.txt` 3. 配置构建套件(选择MinGW编译器) 4. 点击"构建"按钮 5. 点击"运行"按钮 ## 使用说明 ### TCP模式 1. 选择"Modbus TCP"选项 2. 输入服务器IP地址和端口(默认502) 3. 点击"连接"按钮 4. 配置从站ID、功能码、起始地址和数量 5. 点击"读取"或"写入"按钮 ### RTU模式 1. 选择"Modbus RTU"选项 2. 选择串口和配置参数(波特率、校验位等) 3. 点击"连接"按钮 4. 配置从站ID、功能码、起始地址和数量 5. 点击"读取"或"写入"按钮 ### 写入操作 - 单个值:直接输入数字,例如:`100` - 多个值:用逗号分隔,例如:`100,200,300` - 支持十六进制:例如:`0x64,0xC8,0x12C` ## 项目结构 ``` ModBusDebugger/ ├── CMakeLists.txt # CMake配置文件 ├── main.cpp # 程序入口 ├── mainwindow.h # 主窗口头文件 ├── mainwindow.cpp # 主窗口实现 ├── mainwindow.ui # UI设计文件 ├── ModBusDebugger_zh_CN.ts # 中文翻译文件 └── README.md # 本文件 ``` ## 技术细节 ### 依赖的Qt模块 - **Qt::Widgets**: 图形界面 - **Qt::SerialBus**: Modbus协议支持 - **Qt::SerialPort**: 串口通信 ### 关键类 - `QModbusTcpClient`: TCP客户端 - `QModbusRtuSerialClient`: RTU串口客户端 - `QModbusDataUnit`: 数据单元 - `QModbusReply`: 响应处理 ## 常见问题 ### Q: 编译时找不到Qt **A**: 确保设置了正确的CMAKE_PREFIX_PATH环境变量,指向Qt安装目录。 ### Q: 串口连接失败 **A**: 检查串口是否被其他程序占用,确保串口参数配置正确。 ### Q: 读取超时 **A**: 检查从站地址是否正确,确保Modbus服务器正在运行。 ### Q: 写入失败 **A**: 确保地址范围正确,某些寄存器可能是只读的。 ## 版本历史 - **v0.1**: 初始版本 - 支持Modbus TCP/RTU - 支持基本的读写操作 - 中文界面 ## 许可证 本项目仅供学习和调试使用。 ## 作者 ModBus调试工具开发团队 ## 更新日志 ### 2025-10-21 - 修复了Qt 6.10.0弃用API警告 - 将`QModbusRtuSerialMaster`更新为`QModbusRtuSerialClient` - 改进了构建配置 - 添加了完整的README文档