ArduPilot简介
源码地址:
https://github.com/ArduPilot/ardupilot/
参考:
http://ardupilot.org/dev/docs/learning-the-ardupilot-codebase.html
基本结构
分为五个部分:
1.vehicle code
2.shared libraries
3.hardware abstraction layer (AP_HAL)
4.tools directories
5.external support code (i.e. mavlink, dronekit)
vehicle code
在最顶层目录,包含四种固件:Plane,Copter,APMrover2和AntennaTracker。他们之间有很多相似的地方
AP_HAL硬件抽象层
所在目录\libraries\AP_HAL_XXX
。可移植到不同的平台。其中AP_HAL定了其他代码通用的接口
external support code外部支持代码
PX4NuttX:the core NuttX RTOS used on Pixhawk boards(NuttX RTOS实时操作系统)
PX4Firmware:the base PX4 middleware and drivers used on Pixhawk boards(PX4的中间件和驱动程序)
uavcan:the uavcan CANBUS implementation used in ArduPilot(can总线)
mavlink:the mavlink protocol and code generator(mavlink协议)
最新文章
- Android之自定义控件-城市选择
- JS 页面加载触发事件 document.ready和window.onload的区别
- 远程连接mysql容易遇到的2个问题
- 25 个增强iOS应用程序性能的提示和技巧 应用程序性能的提示和技巧
- ios 开发 收起键盘的小技巧
- java.io中流的操作:字节流、字符流
- RAD,V模型
- C# DEBUG 调试信息打印及输出详解
- centos6.5安装vmware-tools
- 使用 C# 对文件进行压缩和解压
- web容器线程数和程序中线程阻塞导致 请求超时
- Elasticsearch安装ik中文分词插件(四)
- 了解 : angular $filter stateful
- 二分图的最大匹配——最大流EK算法
- JavaScript的数组实现队列与堆栈的方法
- java序列化和反序列化中的serialVersionUID有啥用
- 分布式监控系统(类zabbix)
- 使用jsoup轻松爬数据
- 概念:dependency injection, IOC, vs callback
- FreeRTOS 任务与调度器(1)
热门文章
- Java基础教程:多线程杂谈——Volatile
- C# .NET 杀进程
- Python之可变参数,*参数,**参数,以及传入*参数,进行解包
- Centos7网络连接
- 安装Windows和Ubuntu双系统2
- android基础---->;ContentProvider的使用
- git 版本控制中回溯到某个历史版本
- 特征抽取: sklearn.feature_extraction.FeatureHasher
- Qt 编译出错“undefined reference to `vtable for”
- [.Net] 一句话Linq(递归查询)