使用VScode编译betaflight固件--基于windows平台
- 1、使用git克隆betaflight的开源代码
- 2、betaflight的代码框架分析:
- 3、配置编译环境:
- 4、VScode上编译
betaflight不仅可以在LInux上进行编译也可以在Windows上编译,本文主要介绍在windows平台上使用VScode编译betaflight固件的方法
1、使用git克隆betaflight的开源代码
首先确保你的电脑已经安装了git,然后在电脑本地文件夹内 使用git 命令行克隆仓库
git clone https://github.com/betaflight/betaflight
或者直接到仓库 https://github.com/betaflight/betaflight下载.zip压缩包
2、betaflight的代码框架分析:
代码克隆下来之后,用VSCode打开文件如下:
需要注意的是obj文件夹是经过编译之后才生成的,初次克隆下来是没有这个文件夹的。
src是整个代码的核心文件夹,打开src/main/target,我们就可以看到betaflight目前支持的主控芯片型号,可以看到STM32F1和STM32F3已经不支持了,主流是STM32F4和H7的。
betaflight一个程序要兼容多个主控,因此代码十分复杂,打开程序就会看到很多#ifdefine xxx之类的宏定义。
下面再看看根目录下的Makefile文件:
这个就是配置的编译文件了,在19行可以更改要编译的固件型号,默认编译的是STM32F405固件。
下面就来讲讲怎么编译这个代码,生成.hex文件。
3、配置编译环境:
我们要编译这个代码就得要有对应的编译器,在
这个版本代码编译用的是gcc-arm-none-eabi-10.3-2021.10
https://armkeil.blob.core.windows.net/developer/Files/downloads/gnu-rm/10.3-2021.10/gcc-arm-none-eabi-10.3-2021.10-win32.exe
安装好之后,还要配置系统环境变量
首先在系统信息这里选择高级系统设置:
选择环境变量:
在环境变量里找到 Path,然后编辑
点击新建,浏览选择gcc-arm-none-eabi-10.3-2021.10\bin路径
然后确定保存,重新用VScode打开即可。
4、VScode上编译
直接选择windows的Power Shell终端编译会出错,这里选择Git Bash终端进行编译
输入make即可编译:
稍等片刻就可以看到编译成功生成hex文件
这个文件就放在新建的obj文件夹下
接下来你就可以通过Betaflight Configurator把hex文件烧录进你的飞控了