← Swipe for prev/next tutorial →
intermediate Level

我的无人机我定义

修改无人机的起飞音效、电机转速范围和 LED 灯效,理解代码结构。

⏱️ 1 小时 📋 完成初级教材

概述

在本项目中,你将学习如何修改无人机的代码,包括起飞音效、电机转速和 LED 灯效,深入理解无人机的代码结构。

你将学到什么

  • C 语言数组和宏定义
  • ESP-IDF 项目结构
  • 代码编译和烧录流程
  • 蜂鸣器、LED 和电机控制

所需材料

物品数量说明
ESP32-S3 无人机1已组装完成
电脑1安装 VS Code + ESP-IDF 插件
USB 数据线1用于编程

步骤 1:打开项目

  1. 解压 starter_code.zip
  2. 用 VS Code 打开文件夹

步骤 2:查看代码结构

了解项目的文件组织:

文件功能
main.c主函数,控制飞行流程
buzzer.c蜂鸣器控制,负责音效
led.cLED 控制,负责灯效
motors.c电机控制,负责转速

步骤 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:修改电机转速

打开 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:编译烧录

  1. F1,输入 ESP-IDF: Build 编译项目
  2. F1,输入 ESP-IDF: Flash 烧录到无人机

步骤 6:测试效果

  1. 开机,听起飞音效是否变了
  2. 按测试按钮,看电机转速是否更快

故障排除

编译失败

  • 检查 ESP-IDF 环境是否正确安装
  • 确认代码语法没有错误

烧录失败

  • 检查 USB 连接
  • 确认驱动程序已安装

成就感

恭喜你!你已经成功修改了无人机的代码,理解了基本的代码结构。这是成为飞行工程师的第一步!

下一步

在下一个项目中,你将学习如何调整 PID 参数,让无人机飞得更稳定。

继续项目 02:PID 调参挑战 →

← 教程