# 上位机通信协议指南 ## 串口配置 | 参数 | 值 | |---|---| | 波特率 | 921600 | | 数据位 | 8 | | 停止位 | 1 | | 校验位 | None | ## 帧格式总览 所有帧通过帧头 (SOF) 区分类型,checksum = 帧头到数据末尾前一字节的所有字节累加和取低 8 位。 | 帧头 | 长度 | 用途 | |---|---|---| | 0xA5 | 18 | 自动/视觉追踪数据 | | 0xA6 | 10 | 手动控制数据 | | 0xA7 | 3 | 命令 | | 0xA8 | 50 | 调试调参数据 | | 0xA9 | 6 | 前馈输入 | --- ## 5. 前馈输入帧 0xA9 (6 字节) **用途**: 下发前馈输入值到 yaw 电机前馈控制器,在自动和手动模式下均可生效。 ``` [SOF:0xA9][feedforward:4][checksum:1] ``` | 偏移 | 长度 | 类型 | 含义 | |---|---|---|---| | 0 | 1 | uint8 | 帧头 0xA9 | | 1 | 4 | float | 前馈输入值 | | 5 | 1 | uint8 | checksum | **Python 写入示例**: ```python def send_feedforward(ser, feedforward: float): data = bytearray() data.append(0xA9) data.extend(struct.pack(' int: return sum(data) & 0xFF # 所有字节累加取低 8 位 ``` 校验和覆盖范围:**帧头到数据末尾前一字节**的全部字节。接收端在收到数据后也应计算并比对校验和。