通信与联调
页面定位
本页按“先确认链路,再确认协议,最后确认业务逻辑”的顺序整理联调入口。完整项目细节保留在对应专题页。
1 通用联调顺序
- 物理层:确认供电、共地、TX/RX交叉、电平制式和线序。
- 设备层:确认串口号、波特率、IP、端口及驱动是否存在。
- 原始数据层:先持续打印原始字节或网络帧,证明链路一直在线。
- 协议层:核对帧头、长度、大小端、校验、换行符和超时策略。
- 状态机层:检查命令是否被旧任务、保护条件或超时逻辑覆盖。
- 闭环层:最后再调PID、视觉阈值和业务参数。
Warning
“偶尔收到一帧”不能证明通信稳定;“控制器数值正常”也不能证明物理方向正确。联调日志至少要同时记录时间戳、原始输入、解析结果、当前状态和最终输出。
2 串口与视觉主控
- MaixCAM + STM32串口联调完整记录:接线、UART配置、协议、视觉脚本与完整代码。
- 2026 H题接口设计:MSPM0、MaixCAM、步进电机和任务命令的最终口径。
串口无数据时
- 确认双方共地,TX接对方RX。
- 检查3.3 V/5 V电平兼容性。
- 两端先固定相同波特率和
8N1。 - 主控先用中断/DMA接收原始字节,不要一开始就只看解析后的结构体。
- 摄像头程序重启后,检查串口对象是否重新初始化以及旧端口是否仍被占用。
有数据但命令不执行时
- 保存原始帧,确认帧头、长度和结尾字符。
- 记录解析后的命令及当前任务状态。
- 检查任务是否被安全保护、自动回中或旧状态机覆盖。
- 对重复命令设计去重,对关键命令设计确认或状态回报。
3 远程与板端环境
网络不通时
- 板端和电脑分别查看IP、掩码和默认路由。
- 依次测试本机网卡、同网段地址、目标IP和目标端口。
- 多网卡环境要确认实际出站接口,避免无线网、USB网卡、虚拟网卡抢路由。
- SSH能连接但VNC不能连接时,分别检查桌面会话、VNC进程和5900端口,不要继续改SSH。
4 推荐日志字段
timestamp, source, raw_frame, parsed_command, state,
sensor_value, target, output, error_code
现场调参时不要只截取“成功的一轮”。失败轮、人工干预和外界扰动也要标注,否则很容易把偶然结果当成有效参数。
5 延伸专题(待补充)
下面是尚未形成完整文章的方向;在内容和验证步骤补齐前,不把它们当成现成方案:
- ESP32-C3 Wi-Fi TCP 串口桥;
- 电脑端 Python 遥测、PID 下发和 CSV 记录工具;
- 主控端通用命令解析与遥测模块;
- IMU 无线监测、姿态显示与数据记录方案。
已有实测链路请直接阅读 MaixCAM + STM32 串口联调 和 2026 年 TI 杯 H 题复盘,不要在本页重复复制项目代码。