ARDrone controller using c++
- Ardrone.cpp
无人机的类实现
- Ardrone.h
无人机的类声明
- Float2Int_Union
浮点型与整型的联合体
- Main.cpp
主控制函数
- MemoryLibrary.h
读二进制信息的函数库(不需要读懂,只要会用即可)
- NavigationData_Struct.h
导航数据的结构体
- 能获取无人机导航数据包大小并显示无人机电量
- 不能控制无人机飞行,需要另写消息响应函数
- 无UI界面
- 在VS2012中新建控制台程序的空项目
- 把所有文件拷贝到工程目录下
- 在vs项目中新建现有项
- 把主机连接无人机的wifi(非常重要)
- 运行程序
- 若连接正常,且持续接收显示导航数据包大小,并持续发送唤醒指令,则通过测试;否则不通过。
- 调试程序,通过初级测试
- 理解代码逻辑与系统工作流程
- 增加键盘消息响应模块
- 测试基本飞行函数:takeoff,flyUp...等函数
- 增加UI模块:显示无人机导航数据
- 增加无人机旋转功能,
- 测试无人机任意角度飞行,如:实现往东偏南20度飞行等
更新了2个文件:Ardrone.cpp 和 Main.cpp
- 排除
last_at_cmd_
成员变量内存泄露的情况 - 增加代码错误报告与错误定位
- 增加项目代码注释
更新了所有文件
- 纠正
last_at_cmd_
成员变量内存泄露的预测,不存在内存泄露 - 增加代码错误报告与错误定位
- 增加大量的函数注释,增加函数编写解释,引用开发手册的页码
- 统一了注释规范,几乎所有函数都有一个统一格式的注释,在main文件中有注释说明
- 注释规范如下:
/** * 复杂函数注释介绍 * (空行) * @解释: * @param: 参数1 % 注释 * @param: 参数2 % 注释 * (空行) * @return: 返回值 % 写出在什么情况下,返回什么值 * @author: 函数作者 * @updated: 修改者1 * @updated: 修改者2 * @update: 最近一次修改时间 **/