老7
发布于 2026-08-26 / 1 阅读
0
0

ESP32学习笔记(一)

ESP32学习笔记(一)

1. 开发环境及搭建

1.1 开发框架

市面上主流的开发框架有两种:

  • Arduino IDE:适合初学者和快速原型验证。它的优势在于生态丰富、上手极快,几行代码就能点亮 LED 或连接 Wi-Fi。

  • ESP-IDF (Espressif IoT Development Framework):乐鑫官方的底层开发框架。虽然门槛较高,但它基于 FreeRTOS,支持多任务并发,且能对底层寄存器、内存布局进行精细控制。如果希望深入理解嵌入式系统,或者项目涉及复杂的团队协作与 CI/CD 流程,强烈建议直接上手 ESP-IDF。

1.2 开发环境

方案一:VS Code + Espressif 官方插件

对于大多数开发者,使用 Visual Studio Code 配合 Espressif 官方插件是目前最理想的组合。它提供了图形化界面、自动配置以及断点调试功能,极大降低了配置工具链的痛苦。

核心步骤:

  1. 安装 VS Code:前往官网下载并安装。

  2. 安装插件:在扩展商店搜索 Espressif 并安装官方插件。

  3. 一键配置:点击左侧 ESP-IDF 图标,选择 “Set up an ESP-IDF environment”。推荐选择 Express Install,插件会自动下载 ESP-IDF 框架、Xtensa GCC 编译器、Python 依赖包等核心组件。开发包有点大,目前最新6.02版有3.2G,如果从GitHub下载需要多等一会儿,好在有从镜像源下载的选择。

  4. 创建与烧录:在插件面板中点击 “Create a new project” 创建项目。连接开发板后,点击绿色播放按钮选择 “Build and Flash”,固件便会自动下载。

方案二:ESP-IDF 命令行手动搭建

如果偏好掌控一切,或者需要在 Linux/macOS 环境下进行原生开发,可以直接使用命令行搭建。

我没有码农的职业操守压力,暂时不考虑这个。问问AI,可以得到专业指导。

方案三:Arduino IDE

有不少网上资源和开发板的例程是在Arduino的环境下开发的,安装Arduino IDE也是个不错的选择。

核心步骤:

  1. 下载并安装Arduino IDE, https://www.arduino.cc/en/software/。据说,最好不要安装在C盘(系统盘)以避免权限问题。

  2. 在Arduino IDE中,点击File -> Preferences, 找到 Additional board manager URLs, 在文本框中加入以下网址

 https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json

还可以加入国内镜像网址

https://jihulab.com/esp-mirror/espressif/arduino-esp32/-/raw/gh-pages/package_esp32_index_cn.json

点击OK保存设置。

  1. 安装ESP32核心包。点击菜单 Tools -> Board -> Board Manager…, 弹出Board Manager边栏。搜索 “ESP32”,找到“ESP32 by Espressif Systems”, 点击”Install“,耐心等待安装完成。

  2. 用USB线连接一块开发板。如无法识别端口,通常需要安装USB转串口驱动(如CH340或CP2101驱动)。

  3. 点击 工具 -> 开发板,在列表中选择您的具体开发板型号(如果不确定,通用型号通常可选择 ESP32 Dev Module 或 ESP32 Wrover Module)。

1.3 初次运行示例项目可能遇到的问题

  1. 端口无法识别:如果 IDE 找不到开发板,请检查 USB 线是否仅支持充电。确认系统已安装正确的 USB 转串口驱动(如 CH340 或 CP2102)。Windows 下在“设备管理器”查看 COM 端口,Linux/macOS 下查看 /dev/ttyUSB* 设备。

  2. 烧录失败:部分开发板在首次烧录时可能无法自动进入下载模式。可以尝试按住开发板上的 BOOT 键,再点击烧录按钮,待提示连接成功后再松开。

  3. 依赖库缺失:在 Arduino IDE 中,若提示库缺失,可通过 项目 > 加载库 > 管理库 搜索安装,或手动将库解压至 ~/Documents/Arduino/libraries/ 目录。

  4. 权限问题(Linux/macOS):若遇到无法写入文件或访问端口的报错,通常需要提权处理,例如运行 sudo chown -R $USER:$USER ~/.arduino15 修复权限。

  5. ESP-IDF v6.02:目前Espressif官方最新的6.02版,对比之前的v5.4,对依赖库的目录结构做了大幅调整。很多网上或开发板提供的例程代码还是在以前的版本上开发的,如果直接build,会显示很多找不到头文件的错误。为此需要找到这些头文件新的存储位置,并更新例程项目components下面CMakeLists.txt的内容,加入依赖库的新位置。比如,gpio, i2c, spi这三个库在以前的版本中都放在/components/driver里,6.0.2版会分别放在 /components/esp-driver-gpio, /components/esp-driver-i2c和/components/esp-driver-spi里,原来的CMakeLists.txt里依赖库设置看起来可能是

set(requires
         driver
)

6.0.2里需要改成

set(requires 
        esp-driver-gpio
        esp-driver-i2c
        esp-driver-spi
)


评论