打印
[APM32F4]

APM32F405/F411四轴飞行器飞控地面站升级指南

[复制链接]
607|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
joengchao|  楼主 | 2023-8-31 15:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 joengchao 于 2023-8-31 15:16 编辑

Betaflight Configurator 是海内外四轴飞行器/穿越机玩家常用的Betaflight开源飞控固件对应的配置器,目前的最新版本为10.9.0。
Betaflight 固件支持一系列STM32 MCU,包括STM32F405/F411/F722/F745/H743/G473;对于关心国产芯片、需要低成本飞控的小伙伴,极海半导体提供PIN-TO-PIN、寄存器兼容的APM32F405/APM32F411 MCU。APM32F4系列基于ARM Cortex M4 with FPU内核,APM32F405支持全速与高速OTG,APM32F411支持全速OTG和2路模拟比较器,适合经典的四轴飞行器飞控开发。

近期,有专业用户将Betaflight固件移植到APM32中,各项功能正常,使用Betaflight Configurator自带的USB虚拟串口,调参丝滑。但拉低BOOT0进入DFU模式时,软件却无法识别芯片的Bootloader驱动。聪明的玩家可以从源码中看出问题:DFU功能会筛选不同USB设备的制造商编码和产品编码(Vendor ID & Product ID),而不同的MCU厂商,其DFU功能的编码不同!STM32 DFU Bootloader: 0483:DF11; APM32 DFU Bootloader: 314B:0106

针对APM32因USB DFU无法通过筛选导致无法更新固件的问题,Betaflight Configurator官方已经通过修改源码解决,该修改将在下一版本10.10.0上线,详情可以访问GitHub“Add APM32 DFU Bootloader to USB Devices' filters” 链接:https://github.com/betaflight/betaflight-configurator/pull/3556

版本更新前,可以使用两种方式,在硬件不作改动、固件更新方式不变的前提下达到目的:
方案1:绕开开源软件的DFU筛选,使用附件1提供的极海自主DFU软件及DFU驱动,烧录Betaflight Configurator编译出的.hex文件,可以识别虚拟串口设备;

该方案需要使用极海DFU驱动,搭配Geehy Prog软件,支持双语、串口ISP+USB DFU、离线烧录。

方案2:使用附件2,替换源码的js文件夹,再次打开BF地面站,可以正常识别APM32 DFU设备,提前体验新版本。
该方案需要操作Zadig为芯片刷入WinUSB驱动,随后按常规DFU流程操作即可。

对四轴飞行器飞控开发感兴趣的同学,可以参考极海文章“一芯两控 | 极海APM32F411开发实例--非同轴双电机控制”https://mp.weixin.qq.com/s/jdnah2ENNiD6EGJ5SYhJBg ;四轴飞行器电调欢迎选用APM32F051系列,详情可寻极海官网~

方案2 BetaFlight_DFU.zip

6.45 MB

方案1 Geehy_DFU.zip

7.98 MB

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

13

帖子

0

粉丝