SBUS协议和编解码器

请注意+星号公共帐户,不要错过令人兴奋的内容。

从|转移为什么要安排硬件? StrongerHuang遥控器和无人机之间还有许多通信协议。

通用数据协议如下:1. pwm:需要连接到接收器对于所有PWM输出通道,每个通道必须连接到一组线路。

分析程序需要根据每个通道的PWM高电平持续时间来计算通道值。

2.ppm:所有通道的PWM脉冲宽度的数据格式以固定周期发送,进行一组布线,所有通道的PWM值以一个周期发送,并且解析程序需要区分每个通道的PWM持续时间渠道本身。

3. sbus:每11位代表一个通道值协议,串行通信,但是sbus接收器通常是反向电平,当连接到无人机时,需要连接一个电平反向器,其中大多数都支持sbus飞行控制板已集成反向器,您可以将以旧换新机器直接连接到飞行控制器。

4.xbus:常规通信协议,支持18个通道,大数据包,两种串行通信模式,可以在遥控器的配置选项中进行配置。

接收器不需要特殊配置。

strongHuang 1 SBUS协议说明SBUS本质上是一种串行通信协议,使用100K波特率,8个数据位,两个停止位,甚至进行验证,即8E2串行通信。

SBUS是接收器串行总线du输出,通过该总线,可以获取遥控器上所有控制通道的数据。

目前,许多型号和无人机电子设备都支持SBUS总线访问。

使用SBUS总线获取通道数据非常高效,并节省了硬件资源。

只需一根线即可获取所有通道的数据。

SBUS总线使用TTL电平的反向电平,即标准TTL中的1反向为0,0反向为1。

串行端口波特率是100000,数据位是8位,而2停止位,偶校验。

SBUS数据的帧的长度是25个字节,其中“ 0”是0。

字节是帧头:0x0f;第24个字节是帧结束:0x00;从第1个字节到第22个字节为1-16比例通道的数据字节;在第23个字节中,第7位是数字开关通道18通道,第6位是数字开关通道18通道。

第五位是帧状态标志(判断是否丢失了帧),用于控制接收器上的LED的状态,第四位是失控保护激活标志。

当该位为1时,表示接收器进入失控保护状态。

有三点值得注意:1. SBUS使用负逻辑,因此接收和发送都需要硬件反转(请注意,必须执行硬件反转)。

电路如下。

这是我在Internet上阅读信息时看到的电路。

我实际使用的是上面2的7404电路。

SBUS有两种模式,一种。

高速模式:每4ms发送一次b。

低速模式:每14ms发送一次,这意味着串行端口每4或14ms发送25个字节的数据,这25个字节的数据最多可包含16条消息。

3.100K的波特率不是标准的波特率,常规串行工具无法直接读取它(因此,除非您的计算机编写了非标准的波特率,否则请不要直接使用计算机进行调试)。

标准串行端口),可由微控制器读取。

strongHuang 2特定协议的格式[数据头] [第一个字节] [第二个字节] ...... [22个字节] [标志位] [数据尾]数据头,标志位和数据尾不携带信息,数据头和数据尾是固定的,数据头= 0x0f;数据尾巴= 0x00;数据头(1个字节)+数据(22个字节)+标志位(1个字节)+数据尾部(1个字节)更强Huang 3编码和解码1.编码原理一个信息是二进制11bit,例如1111 1111 111可以表示一个信息,总共有16个这样的信息,并且这16个信息是按顺序排列的。

在字符串中,获得176位(11 * 16)数据,即22字节(176/8 = 22)数据,加上报头和数据尾部奇偶校验位,以形成要通过串行端口发送的消息。

此类信息每4或14 ms发送一次。

因此,这16条信息中的每条信息可以代表的最大值是2 ^ 11 = 2048,这就是它的准确性。

2.标志位的高四位具有特殊含义。

不使用第四位。

根据我的理解,第七位和第六位代表两个数字通道(通道17和18)的信息(即,仅高功率和低功率)。

平坦通道通常用于控制开和关,或者简单地启动或停止例如,1表示启动电动机,0表示停止电动机