Ubuntu下编译 cleanflight

cleanflight 基于baseflight, 是支持多悬翼和固定翼飞控程序

MultiWii 的代码违反很多软件工程原则,baseflight 也是,而cleanfligh 力图改善软件质量,提高可维护性。包括


1)通过完善的测试实现更可靠的code, 
2)更好的可维护性

3)更容易加入新特性

4)软件模块化更好,更易复用

cleanflight 支持Naze, CC3D 等,下面介绍 Ubuntu下如何编译

详细见:https://github.com/cleanflight/cleanflight/blob/master/docs/development/Building%20in%20Ubuntu.md


1)安装git 和toolchain

 编译 ardupilot 已经介绍过了,在 http://blog.csdn.net/span76/article/details/49782015


2)下载源代码

git clone https://github.com/cleanflight/cleanflight.git


3)编译

cd cleanflight

make TARGET=NAZE


大概1分钟,就得到了 cleanflight_NAZE.hex, 把这个 firmware上传到nave就可以用了

arm-none-eabi-size ./obj/main/cleanflight_NAZE.elf 
   text    data     bss     dec     hex filename
 121156     208   14120  135484   2113c ./obj/main/cleanflight_NAZE.elf

arm-none-eabi-objcopy -O ihex --set-start 0x8000000 obj/main/cleanflight_NAZE.elf obj/cleanflight_NAZE.hex

同理,用

make TARGET=CC3D

得到 cleanflight_CC3D.hex

arm-none-eabi-size ./obj/main/cleanflight_CC3D.elf 
   text    data     bss     dec     hex filename
 123180     376   13104  136660   215d4 ./obj/main/cleanflight_CC3D.elf
arm-none-eabi-objcopy -O ihex --set-start 0x8000000 obj/main/cleanflight_CC3D.elf obj/cleanflight_CC3D.hex


目前支持的TARGET( 也就是支持的飞控板了) 如下

ALIENWIIF1 ALIENWIIF3 CC3D CHEBUZZF3 CJMCU COLIBRI_RACE EUSTM32F103RC MOTOLAB NAZE NAZE32PRO OLIMEXINO PORT103R RMDO SPARKY SPRACINGF3 STM32F3DISCOVERY


你可能感兴趣的:(Pilot)