我的无人机我定义
在本项目中,你将学习如何修改无人机的代码,包括起飞音效、电机转速和 LED 灯效,深入理解无人机的代码结构。
你将学到什么
Section titled “你将学到什么”- C 语言数组和宏定义
- ESP-IDF 项目结构
- 代码编译和烧录流程
- 蜂鸣器、LED 和电机控制
| 物品 | 数量 | 说明 |
|---|---|---|
| ESP32-S3 无人机 | 1 | 已组装完成 |
| 电脑 | 1 | 安装 VS Code + ESP-IDF 插件 |
| USB 数据线 | 1 | 用于编程 |
步骤 1:打开项目
Section titled “步骤 1:打开项目”- 解压
starter_code.zip - 用 VS Code 打开文件夹
步骤 2:查看代码结构
Section titled “步骤 2:查看代码结构”了解项目的文件组织:
| 文件 | 功能 |
|---|---|
main.c | 主函数,控制飞行流程 |
buzzer.c | 蜂鸣器控制,负责音效 |
led.c | LED 控制,负责灯效 |
motors.c | 电机控制,负责转速 |
步骤 3:修改起飞音效
Section titled “步骤 3:修改起飞音效”打开 buzzer.c,找到 tone 数组:
// 原始代码:起飞音效uint16_t tone[] = {440, 880, 440, 0}; // A4, A5, A4, 静音修改为《欢乐颂》前两句:
uint16_t tone[] = {330, 330, 392, 392, 440, 440, 392, 0}; // E4, E4, G4, G4, A4, A4, G4, 静音步骤 4:修改电机转速
Section titled “步骤 4:修改电机转速”打开 motors.c,找到 MOTORS_TEST_RATIO 宏:
#define MOTORS_TEST_RATIO (uint16_t)(0.2*(1<<16)) // 20% 转速修改为 30% 转速:
#define MOTORS_TEST_RATIO (uint16_t)(0.3*(1<<16)) // 30% 转速步骤 5:编译烧录
Section titled “步骤 5:编译烧录”- 按
F1,输入ESP-IDF: Build编译项目 - 按
F1,输入ESP-IDF: Flash烧录到无人机
步骤 6:测试效果
Section titled “步骤 6:测试效果”- 开机,听起飞音效是否变了
- 按测试按钮,看电机转速是否更快
- 检查 ESP-IDF 环境是否正确安装
- 确认代码语法没有错误
- 检查 USB 连接
- 确认驱动程序已安装
恭喜你!你已经成功修改了无人机的代码,理解了基本的代码结构。这是成为飞行工程师的第一步!
在下一个项目中,你将学习如何调整 PID 参数,让无人机飞得更稳定。