朋友是做这个项目的,我这里安利买了FlySky-i6X,搭配一个X6B的接收机。
接收机的样子
解码的一角
在源码里面只有三个文件,剩下是我写的和添加的
机器人的运动是使用遥控器的控制的,所以在代码中也有接收的代码。
在文件里面,SBUS作为一个对象在最后被建立
先分析一个接收的函数给大家看
我们知道SBUS就是个串口的协议,SO,需要使用一个串口
大致意思就是,拿到一个段数据进行一个简单的头数据匹配,是的话,就复制到内存区。
每次都会解码通道信息,这个地方是8个,剩下的需要自己加
数据在使用以前需要被限幅
所以要通过这样的处理
这里是使用了6个通道,做了一个范围的转换
代码的初始化的时候就要打开要使用的串口和SBUS
在主循环里面RXSsbus()函数被读取
函数读取的数据发送在这里,两个旋转一个油门
左右+高度
一些变量的名字太随意了,我有点看不懂了,最近很忙,闲下来研究一下。
不过好像应该去看PID的知识?我这个算知识的盲区了。其次代码的大概有2K+的样子,也算一个不小的工程量。