本文共 1039 字,大约阅读时间需要 3 分钟。
src:目录是源码目录
存放所有的源码,源码的查看
都应该在这里。
mavlink:是MAvlink的库目录
,源码要调用这个库
,如果我们要修改
和添加MAVLINLK消息
ID也是在这个目录下面。
NuttX:是NuttX的系统库,如果做二次开发,很少用到这个库
。
cmake:是存放的Cmake编辑脚本文件夹,其中Cmake/Configs是存放的不同硬件的编译脚本
,nuttx_mindpx-v2_default是PIXHAWK这个硬件的编辑脚本,如果要添加驱动
,添加系统功能的模块函数
,要修改里面的编译选项
,保证添加的模块文件
,能够被编译到。
ROMFS:是文件系统文件夹。里面存放的飞控系统的启动脚本
,我们要修改启动脚本主要在这个文件夹里面。src/Romfs/px4fmu_common/init.d ,如rcS主要的启动脚本,还有其他的rc.XXX的脚本,传感器脚本,参数脚本等等,反正负责系统初始化的,如果自己定写了个功能模块要随系统启动那么就在这里添加启动。和linux系统的启动脚本非常相似。
msg:是存放UORB消息
主题的地方,如果要二次开发添加消息主题
,就在这个文件夹里面添加修改
。
其中Drivers
是驱动文件夹,包括了所有的传感器驱动
,三轴
,地磁,加速度,超声波…
Examples
是实例文件夹,入门PIXHAEK开发的一些很好的例子就在里面,其中最经典的是 px4_simple_app这个例子,要搞明白进程间通信UORB就是这个例程。 Modules
是功能模块文件夹,什么位置估计
,位置控制
,指令控制....
都在这个文件夹,也是二次开发主要要修改的文件夹
。
Systemcmds
是系统指令文件夹
,都是飞控的支持的命令的源码
。比如top命令,reboot命令等等,这些命令都可以在终端操作
。这是modules
的文件夹下面的东西,很清楚,姿态估计
,位置估计
,位置控制
,导航
,UORB源码
等等相当于飞控代码的核心。 这是Drivers
文件夹里面的内容,可以看到所有的传感器驱动都在这里面,气压计,GPS,加速度,地磁,光流
等等。 这个src目录就是源码,里面有所有的子目录都有CmakeList.txt
编译脚本文件,我们一般在modules
里面添加我们自定义的代码,drivers
是传感器驱动目录,lib
是库目录,systemcmds
是系统命令。
CmakeList.txt
启动脚本修改: 转载地址:http://ljwzi.baihongyu.com/