本程序LabVIEW2015环境下测试通过。 本程序搭配433M数传电台测试使用。 内置S.BUS解析功能。 用于移动机器人远程数据传输。 数传电台1端连接本程序,1端连接电源后将串口2、3短接。测试通讯距离。
2023-02-24 09:24:43 42KB LabVIEW S.BUS解析 串口读写
1
SBUS调试助手,S-Bus解析软件.delphi源码. Delphi7开发环境下采用SPComm实现100kbps波特率,解析SBUS协议后将各通道数值及杆量以数字和进度条的形式显示.WIN7环境下已测试.(SBUS信号经硬件反向即为TTL串口信号,波特率100kbps( 100000 ),8位数据,偶校验(even),2位停止位)
2021-12-14 18:03:55 789KB SBUS S.BUS S-BUS sbus调试
1
STM32是一款基于ARM Cortex-M内核的微控制器,由意法半导体公司(STMicroelectronics)生产,广泛应用于各种嵌入式系统设计,包括飞行控制系统、机器人、物联网设备等。在本项目“S.BUS STM32解析程序”中,我们将讨论如何利用STM32处理器解析FUTABA的S.BUS通信协议,并实现PWM波输出。 S.BUS是FUTABA公司推出的一种用于遥控模型系统的多通道双向数字通信协议。相比于传统的PPM(Pulse Position Modulation)信号,S.BUS提供了更高的数据传输速率、更稳定的信号质量以及更好的抗干扰能力。它能支持最多18个通道的数据传输,同时还能提供故障检测功能,增强了系统的可靠性和安全性。 在STM32中解析S.BUS协议,首先需要理解S.BUS协议帧的结构。一个完整的S.BUS帧通常包含起始位、16个通道数据、奇偶校验位和结束位。每个通道数据以11位的二进制格式表示,其中前10位用于编码通道值,第11位为通道标志位。STM32需要通过串行接口(如USART或SPI)接收这些连续的数字信号,并进行解码处理。 解析过程通常分为以下步骤: 1. 接收数据:STM32的串行接口配置为接收模式,监听S.BUS信号线上的数据。可以使用中断服务程序来捕获每个数据位的到来。 2. 检测起始位:S.BUS帧的起始位是一个低电平,STM32需要识别这个特定的信号边缘,作为帧开始的标志。 3. 解码通道数据:接着,STM32逐位读取并解码16个通道的11位数据,将它们转换成对应的模拟控制值。每个通道的值范围通常是1000到2000,代表伺服电机或马达的最小到最大角度或速度。 4. 计算奇偶校验:S.BUS协议还包括一个奇偶校验位,用于检查数据传输的正确性。STM32需要计算接收到的所有数据位的奇偶性,并与接收到的校验位进行比较。 5. 检测结束位:S.BUS帧以高电平的结束位结束。当检测到该高电平时,STM32知道一帧数据已经完整接收。 6. 错误处理:如果在接收过程中发现错误,如奇偶校验不匹配或数据帧格式错误,STM32可能需要采取重传策略或忽略错误帧。 7. PWM波输出:解析完S.BUS数据后,STM32会根据每个通道的值生成相应的PWM波。这通常通过定时器和比较单元实现,通过设置定时器的预装载值和比较值来调整PWM脉冲的宽度,从而控制输出的电压或电流。 在实际应用中,FUTABA SUBS成功版本的代码可能包含了一些关键函数,如`sbus_init()`用于初始化串口和相关寄存器,`sbus_decode()`用于解码接收到的S.BUS数据,以及`pwm_generate()`用于生成PWM波。这些函数的实现细节将直接影响到整个系统的性能和稳定性。 "S.BUS STM32解析程序"项目涉及到STM32微控制器的串行通信、数据解析、错误处理以及PWM生成等多个关键知识点,对于理解和开发遥控模型系统具有重要的实践意义。通过深入学习和实践,开发者可以掌握高级遥控系统的设计技术。
2019-12-21 21:57:29 2.72MB S.BUS SBUS
1
航模遥控器S.BUS协议的采集完整程序。主控采用STM32F103ZET6,本程序已在futaba的航模遥控器和乐迪 T8FB 遥控器上连接应用。完美运行。
2019-12-21 19:58:28 5.82MB SBUS 航模遥控 STM32
1
在STM32F407单片机上实现完整的Futaba S.BUS协议。使用DMA双向数据传输。
2019-12-21 18:53:08 4KB S.BUS STM32
1