本帖最后由 payne_pan 于 2015-11-12 11:26 编辑
cleanflight 基于baseflight, 是支持多悬翼和固定翼的飞控程序 MultiWii 的代码违反很多软件工程原则,baseflight 也是,而cleanfligh 力图改善软件质量,提高可维护性。包括
1)通过完善的测试实现更可靠的code,
2)更好的可维护性 3)更容易加入新特性 4)软件模块化更好,更易复用
cleanflight 支持Naze, CC3D 等,下面介绍 Ubuntu下如何编译
1)安装git 和toolchain
2)下载源代码
3)编译 cd cleanflight make TARGET=NAZE
大概1分钟,就得到了 cleanflight_NAZE.hex, 把这个 firmware上传到NAZE就可以用了 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
|