本文档阐述了匿名上位机通讯协议V2.6版本的各项细节与更新内容,旨在提供更高效、安全的数据传输标准。适合技术开发人员参考使用。
匿名上位机v2.6通讯协议是一种基于STM32微控制器的通讯协议,主要用于飞控系统、遥控系统以及键鼠控制系统等领域。该协议定义了多种帧格式以实现不同功能的数据传输。
1. 自定义数据帧:其格式为0x88+FUN+LEN+DATA+SUM,其中FUN可以是0xA1到0xAA共十个值;LEN表示DATA的长度(不包括0x88、FUN、LEN和SUM)。SUM是从0x88一直到DATA最后一字节的所有内容之和。数据格式可以为uint8、int16、uint16、int32或float,多字节的数据高位在前。共有20个存储器用于存放来自自定义帧的最多30个不同数据。
2. 飞控显示帧:其格式是0x88+0xAF+0x1C加上加速度(ACC)、陀螺仪(GYRO)、磁力计(MAG)和角度(ANGLE)的数据,然后接三个零字节再跟一个SUM。这些数据都是int16类型;ANGLE的roll和pitch数据为实际值乘以100后的整数值,而yaw则为乘以10之后的结果,在上位机显示时需要除回原来的倍数。
3. 遥控、电机PWM及电压显示帧:其格式是0x88+0xAE+0x1C加上油门(THROT)、偏航(YAW)、俯仰(PITCH)和滚转(ROLL),辅助通道AUX1到5的PWM值,以及电压数据后接两个零字节再跟一个SUM。所有这些数值均为uint16类型。
4. 调试帧:其格式是0x88 + 0xAD + len + num + DATA + SUM。len为num与DATA总长度;num表示要改变哪个显示状态,如第一个LED或数字输出等。当更改LED时,只需一个字节的DATA值即可。
5. 键鼠控制帧:其格式是0x8A+0X1C加上油门(THROT)、偏航(YAW)、俯仰(PITCH)和滚转(ROLL),辅助通道AUX1到4的数据后接多个零字节再跟SUM。遥控数据均为int16类型,中值为1500。
6. 校正帧:其格式是0X8A 0X8B 0X1C加上特定的校正标识码(如ACC或GYRO)以及无用的数据后接一个SUM用于飞控参数校正。
7-9. 微调offset帧、读取offset数据帧和PID数据帧:这些格式分别用来发送微调后的偏置值,读取传感器零点偏差信息及获取PID控制参数的设定值。
10. 下位机发送offset帧:该格式为0X88 0XAC 0X1C加上下位机生成并上传给上位机使用的传感器偏移数据后接SUM。
总的来说,匿名上位机v2.6通讯协议是一种功能强大且灵活的通讯方式,适用于多种控制系统的通信需求。