富斯i6遥控器搭配富斯iA6B接收机与STM32开发板开发指南
遥控器型号:富斯i6,如图1接收机型号:富斯iA6B,如图2开发板:STM32F407(其他型号开发板也是相似的操作)软件环境:Keil5 STM32CUbeMX。
·
1.开发环境介绍
遥控器型号:富斯i6,如图1
接收机型号:富斯iA6B,如图2
开发板:STM32F407(其他型号开发板也是相似的操作)
软件环境:Keil5 STM32CUbeMX
2.说明书资料
2.1遥控器说明书
2.2接收机说明书
航模.fs.ia6b 接收机记录 - Mojies - 博客园
3.与STM32实现通讯的步骤
3.1遥控器与接收机对码

3.2接收机接线图
图三中,红线VCC;黑线GND;绿线为接收机的输出,也就是开发板串口的RX
SERVO可以依据IBUS协议进行输出。
3.3通讯代码实现
这是一个示例代码,可根据自身需求进行修改。
int sbus_to_rc(volatile const uint8_t *sbus_buf, remote_data_t *remote_data)
{
if (sbus_buf == NULL || remote_data == NULL)
{
return -1;
}
uint16_t calc_sum = 0;
uint16_t ori_sum;
uint8_t i;
if( sbus_buf[0] != 0x20 )
return -1;
if( sbus_buf[1] != 0x40 )
return -1;
for( i = 0; i < 30; i++ )
calc_sum += sbus_buf[i];
calc_sum ^= 0xFFFF;
ori_sum = sbus_buf[30] + (sbus_buf[31]<<8);
if( calc_sum != ori_sum )
return -1;
remote_data->ch[0] = sbus_buf[(0)*2+2] + ((sbus_buf[(0)*2+3]&0xF)<<8);
remote_data->ch[0] -= 1500;
remote_data->ch[1] = sbus_buf[(1)*2+2] + ((sbus_buf[(1)*2+3]&0xF)<<8);
remote_data->ch[1] -= 1500;
remote_data->ch[2] = sbus_buf[(3)*2+2] + ((sbus_buf[(3)*2+3]&0xF)<<8);
remote_data->ch[2] -= 1500;
remote_data->num = sbus_buf[(2)*2+2] + ((sbus_buf[(2)*2+3]&0xF)<<8);
if((sbus_buf[(4)*2+2] + ((sbus_buf[(4)*2+3]&0xF)<<8)) == 2000)
{
remote_data->s[0] = 1;
}
else if((sbus_buf[(4)*2+2] + ((sbus_buf[(4)*2+3]&0xF)<<8)) == 1000)
{
remote_data->s[0] = 0;
}
if((sbus_buf[(5)*2+2] + ((sbus_buf[(5)*2+3]&0xF)<<8)) == 2000)
{
remote_data->s[1] = 2;
}
else if((sbus_buf[(5)*2+2] + ((sbus_buf[(5)*2+3]&0xF)<<8)) == 1000)
{
remote_data->s[1] = 0;
}
else if((sbus_buf[(5)*2+2] + ((sbus_buf[(5)*2+3]&0xF)<<8)) == 1500)
{
remote_data->s[1] = 1;
}
else
{
remote_data->s[1] = 0;
}
if((sbus_buf[(6)*2+2] + ((sbus_buf[(6)*2+3]&0xF)<<8)) == 2000)
{
remote_data->s[2] = 1;
}
else if((sbus_buf[(6)*2+2] + ((sbus_buf[(6)*2+3]&0xF)<<8)) == 1000)
{
remote_data->s[2] = 0;
}
if((sbus_buf[(7)*2+2] + ((sbus_buf[(7)*2+3]&0xF)<<8)) == 2000)
{
remote_data->s[3] = 1;
}
else if((sbus_buf[(7)*2+2] + ((sbus_buf[(7)*2+3]&0xF)<<8)) == 1000)
{
remote_data->s[3] = 0;
}
return 0;
}
4.遥控器刷新固件至10通道
4.1准备物料
刷新固件需要用到教练线或者USB转TTL。
4.2下载软件
链接:https://pan.baidu.com/s/19wSvoKoUNgveK-6O1X3LsA?pwd=8384
提取码:8384

4.3视频教程链接:
用USB转TTL串口模块或教练线给富斯i6刷十通_哔哩哔哩_bilibili
(视频以USB转TTL为例,使用教练线同理)
5声明与致谢
出于作者水平限制,本文章不是特别严谨,一些地方是出于实践经验而非专业研究,内容仅供参考,希望能够给大家一些灵感与启发。上述文章如有不严谨、不合理、错误的地方,欢迎指正。
一些资源来自网络,如有侵权,联系删除。
更多推荐



所有评论(0)