APM.ardupilot 源码笔记2
来源:互联网 发布:亦强软件 酷骑 编辑:程序博客网 时间:2024/04/29 20:48
源码:Apm.ardupilot 各个版本
本例:以 3.1.0_rc1 为例分析
APM硬件: 版本2.0以上
By: devel
哎呀,一不小心忙的忘了写这个了。。。今天有空,赶快补上。。。。。。
1.源代码放置结构
图中显示了源代码的结构,我主要讨论的是图中箭头所指的ArduCopter和libraries.其中ArduCopter是旋翼飞行器的代码,libraries包含了所有需要的库函数头文件等。
打开libraries,可以看到好多的库文件:
而打开Arducopter文件夹,里面是旋翼飞行器的整个源代码:
要讨论的就是这两个文件夹,其余的暂且不管。
2.IDE的进击:
打开之前提到的软件也就是:打开后长成这个样子:
之前提到过,红色区域内的Ardupilot是其区别于一般Arduino IDE的标志。
为了之后的看代码和编译代码顺利进行,首先要配置一下编译器(其实也可以用其他的软件来看代码或者编译,如vs,但是需要安装一些插件,配置工作也会多一点,效果最终的确要好些,但是这个简单并且简洁,所以先用这个(-_-!)…)
接下来是IDE的设置,很简单,如下:
1)
菜单栏FileàPreferences:然后如下图:
(注意:改好地址后要重新启动IDE才可以改变)
按照图中步骤,终于是呼唤出来源代码。。。:
说到右上角的下拉切换tab,这个改过的Arduino IDE有一点小bug:它到不了底-_-(也就是说,最后几个tab看不到。。。),但是,alt+ctrl+ß或者alt+ctrl+à这两个快捷键可以左右切换tab,于是乎就解决了这个问题,如果用其他的IDE自然没有这个问题了。。。。
好了,一切就绪:可以分析代码了^_^!!!
3.攻坚战拉锯战的开始:源代码
左图是IDE中下拉后可以看到的tab,还有一些下拉不下去的是右边红线下面的那些文件(.pde/.c/.h类型的)。
作为一个标准的Arduino 编程环境些的程序最为显著的就是它的和,那么它们在哪里。。。
就在ArduCopter这个tab里面;
(其实,整个源代码的英文注释已经够详细了,仔细去研究应该差不多,但是太多了!!!为了减少日后自己/别人再看时的负担,挑出一些自己研究的多一点的地方总结一下,能少一坑则少一坑!!!)
今天先简单的看下setup()和loop()的代码结构:
Setup()里面一堆的初始化函数,至于他们的作用,日后详细道来。
说起loop()里面的东西,话就多了。。先简单的提下:初看一下,loop()里面有个fast_loop(),在fast_loop()函数里面主要进行一些需要比较快的任务,但是,并不是只有一个fast_loop(),在setup()函数之前我们可以看到一张时间表:
左边的红框框圈出来其他的一些xxx_loop();频率各不相同;整个看起来就是一个小操作系统了,其实代码真正有内涵的东西是他的那些库,非常值得借鉴学习!!
- APM.ardupilot 源码笔记2
- APM.ardupilot 源码笔记1
- ArduPilot/APM源码学习笔记(一)
- Ardupilot -- APM源码笔记(重制)~序言
- Ardupilot -- APM源码笔记三(重制)~ 传感器驱动程序
- Ardupilot -- APM源码笔记四(重制)~ 线程机制
- Ardupilot -- APM源码笔记一(重制)~ APM源码基本结构
- Ardupilot -- APM源码笔记二(重制)~ Ardupilot 链接库引导
- Ardupilot 源码笔记(1)
- Ardupilot源码UART_test 分析笔记(1)
- APM启动流程及ArduPilot函数入口
- 开源自动导航系统 ArduPilot/APM
- APM启动流程及ArduPilot函数入口
- Pixhawk源码笔记一:APM代码基本结构
- Pixhawk源码笔记一:APM代码基本结构
- APM源码导航
- APM源码导航目录
- ArduPilot源码学习--(一)--MAC下编译ArduPilot源码
- C语言数组和链表删除元素速度比较
- 菜鸟笔记——MVP浅解
- expect学习笔记及实例详解
- hdu 3681 Prison Break(状压dp+二分)
- 关于session和cookie的简单理解
- APM.ardupilot 源码笔记2
- 新知客
- 装饰模式、装饰器模式、代理模式、外观模式区别
- java读书笔记:LinkendList源码解读(基于jdk1.8)
- 数据结构之队列
- APM.ardupilot 源码笔记1
- 没有互联网的世界一隅
- 【POJ 2104】K-th Number 【主席树入门题】
- 我们改变太多吗