pixhawk原生固件笔记

常用资料

名称简介
官方文档虽然是官方文档,但是很多地方并没有讲清楚
github issues最全面的开发者问题集锦
被删除的官方文档(已被删除,此处为谷歌快照)此教程详细介绍了如何自己实现一个固定翼飞控
被删除的官方文档(已被删除,此处为谷歌快照)此教程详细介绍了如何更改自启动脚本
Freeape博客国内一个四旋翼爱好者撰写的博客,基于老版本的px4写的,一些概念已经不适用,但仍然是非常宝贵的资料。
知乎达人的回答大神在知乎上的回答,较详细解释了各个模块的作用
Mr.A的博客另一位国内爱好者的博客,较底层。

代码执行流程

  1. 编译时将cmake/configs/nuttx_px4fmu-v2_default.cmake文件中配置的模块全部编译并烧写到固件中去。
  2. 地面站的配置会在flash中生成/fs/mtd_params文件,该文件包含了飞行器的各类信息(机架,校准信息,飞行模式等)。
  3. 启动pixhawk,执行/Firmware/ROMFS/px4fmu_common/init.d/rcS,该文件会读入之前生成的参数文件,进而选择执行哪一个脚本文件。(如选择DJI450机架会执行/Firmware/ROMFS/px4fmu_common/init.d/rc.mc_apps和/Firmware/ROMFS/px4fmu_common/init.d/4011_dji_f450),它们的主要作用为启动飞控所需的各类软件。
  4. 不同模块通过uORB通信。

常见问题

  • 问题描述:编译后报错Error: "arm-none-eabi-ld: region `flash' overflowed by 10244 bytes" while building px4fmu-v2_default
    解决方法:此错误是由于你的编译器版本太低。将arm-none-eabi升级到最新版本,然后执行make clean make px4fmu-v2_default
    升级方法:在https://launchpad.net/gcc-arm-embedded/+download上下载最新版本gcc,解压后将得到的四个文件夹直接复制到\px4\toolchain文件夹下替换即可。
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值