基于 Qt6 的多协议通信上位机,通过串口连接 USB-CAN-Router 硬件,实现对 CAN、USART、SPI、I2C、ADC 等外设总线的远程操控与数据监控。
- CAN — 发送/接收 CAN 报文,支持标准帧/扩展帧、RTR
- USART1 / USART2 — 两路串口数据收发,支持 HEX/ASCII 显示
- SPI — SPI 总线读写,支持写入数据并指定读取长度
- I2C — 两路 I2C 读写,支持设备地址、内存地址读写
- ADC — 模拟信号采集,支持触发模式(Auto / Normal / Single)、采样率设置、虚拟示波器实时波形
- System — 查询设备信息,在线配置各通道波特率/速率
- Qt 6.6+ (Core, Gui, Widgets, SerialPort)
- CMake 3.16+
- 编译器支持 C++20
cmake -B build -DCMAKE_PREFIX_PATH="<Qt安装路径>"
cmake --build build --config Release将编译产物与 Qt 动态库放在同一目录,或使用 Qt 部署工具:
windeployqt build/Release/Router_Upper.exe通信帧格式:Header (1B) + Channel (1B) + Length (2B, little-endian) + Payload
- 下行 (PC → 设备):Header =
0xAA - 上行 (设备 → PC):Header =
0xBB
Qt 使用 LGPL v3 许可。本项目代码随附于此。