Skip to content

Latest commit

 

History

History
46 lines (30 loc) · 1.32 KB

File metadata and controls

46 lines (30 loc) · 1.32 KB

USB-Multi-Protocol-Transreceiver-Upper

基于 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 许可。本项目代码随附于此。