1. ESP32 开发环境搭建:工欲善其事,必先利其器

各位同学,咱们正式开始。做嵌入式开发,第一件事就是把“家伙事儿”备齐。Arduino IDE 虽然看起来简单,但背后要配置的东西其实不少。我刚开始带项目时,就见过有人卡在板级支持包下载这一步,折腾了一下午。咱们今天把这步走稳了,后面写代码才痛快。

1.1 为什么选 Arduino IDE?

说实话,ESP32 的开发方式有好几种:ESP-IDF(乐鑫官方框架)、PlatformIO、MicroPython……但我个人习惯用 Arduino IDE 入门。原因很简单——门槛低,生态好。

  • 上手快:装好就能写,不用折腾 Makefile 和 CMake。
  • 库多:你要的传感器驱动、显示驱动,社区基本都封装好了。
  • 调试方便:串口监视器一键打开,看日志、调参数都很顺手。

当然,如果你以后要做量产产品,ESP-IDF 是更优的选择。但咱们课程是实战驱动,先把原型跑起来再说。

1.2 安装 Arduino IDE

去官网下载最新版(目前是 2.x 系列)。我建议你下载 Windows 版 或 macOS 版,Linux 用户用包管理器装也行。

小提示:安装路径不要带中文,否则后面编译可能报一些奇怪的错。我吃过这个亏。
  1. 打开 arduino.cc/en/software,选对应系统版本下载。
  2. 双击安装包,一路默认选项即可。
  3. 安装完成后,打开 IDE,界面应该是英文的。别慌,后面可以改中文。

1.3 配置 ESP32 板级支持包

Arduino IDE 默认不支持 ESP32,需要手动添加板级支持包(Board Support Package,简称 BSP)。说白了,就是告诉 IDE:“我要用 ESP32 这颗芯片,你把它的编译工具链和库给我准备好。”

操作步骤如下:

  1. 打开 Arduino IDE,点击 File → Preferences。
  2. 在 Additional Boards Manager URLs 输入框里,粘贴以下地址:
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
注意:如果你在中国大陆,这个地址可能下载很慢。我曾经等过半小时没反应。建议用手机热点或科学上网试试。实在不行,可以手动下载离线包。
  1. 点击 OK 保存。
  2. 然后点击 Tools → Board → Boards Manager。
  3. 在搜索框输入 ESP32,找到 ESP32 by Espressif Systems,点击 Install。

安装过程大概 5-10 分钟,取决于你的网速。安装完成后,你会看到 INSTALLED 的提示。

1.4 安装 USB 转串口驱动

ESP32 开发板通过 USB 连接到电脑,但电脑需要识别它的串口芯片。常见的串口芯片有两种:

芯片型号 常见开发板 驱动下载
CP2102 ESP32 DevKit V1(很多淘宝板) Silicon Labs 官网
CH340 NodeMCU-32S、便宜板子 WCH 官网
FT232 一些高端开发板 FTDI 官网

怎么判断你的板子用哪种?看板子上的 USB 接口附近,一般会印着芯片型号。或者插上电脑,打开设备管理器,看“端口 (COM 和 LPT)”下面显示什么。

我的经验:CH340 的驱动在 Windows 10/11 上有时会自动装好,但 CP2102 经常需要手动装。别偷懒,先装好驱动再连板子。

1.5 选择开发板与测试

驱动装好后,把 ESP32 开发板插到电脑上。打开 Arduino IDE,按以下步骤操作:

  1. 点击 Tools → Board → ESP32 Arduino,选择你的板型。大部分通用板选 ESP32 Dev Module 就行。
  2. 点击 Tools → Port,选择你板子对应的 COM 口(Windows)或 /dev/cu.usbserial-xxx(macOS)。
  3. 点击 Tools → Upload Speed,建议选 115200。速度太快容易掉线。

然后我们来写一个最简单的测试程序——点亮板载 LED:

void setup() {
  pinMode(2, OUTPUT);  // 大部分 ESP32 开发板的板载 LED 接在 GPIO2
}

void loop() {
  digitalWrite(2, HIGH);
  delay(1000);
  digitalWrite(2, LOW);
  delay(1000);
}

点击 Upload 按钮(右箭头),等待编译和上传。如果一切顺利,你会看到板子上的 LED 开始一秒一闪。

常见坑:上传时如果报错 A fatal error occurred: Failed to connect to ESP32,多半是因为你没按住 BOOT 键。上传前按住 BOOT 键不放,点上传,等出现 Connecting... 时松开。有些新板子支持自动复位,就不用按了。

1.6 本章知识体系总览

下面这张图把咱们刚才讲的内容串起来了。你对照着看,心里就有谱了。

ESP32 开发环境搭建流程 Arduino IDE 安装 ESP32 板级支持包配置 USB 转串口驱动安装 开发板选择与端口配置 上传测试程序验证 常见问题 • 下载慢 → 换源/离线包 • 上传失败 → 按住 BOOT • 端口不识别 → 装驱动 • 编译报错 → 检查路径

1.7 避坑指南

最后,我把这些年踩过的坑总结一下,你遇到了直接对照着查:

  • 下载 BSP 超时:我曾经在公司内网配环境,死活下不下来。后来发现是防火墙把 raw.githubusercontent.com 给拦了。解决办法:用手机热点,或者手动下载离线包放到 %LOCALAPPDATA%/Arduino15/staging/packages 目录下。
  • 上传时一直 Connecting:按住开发板上的 BOOT 键不放,直到出现 Connecting... 字样再松手。有些板子需要按 EN 键复位一下。
  • 串口监视器乱码:检查波特率是否设置正确。ESP32 默认串口输出波特率是 115200,别选成 9600。
  • 板子插上没反应:换一根数据线。很多 USB 线只能充电,不能传数据。我抽屉里至少有五根这样的“废线”。
一句话总结:环境搭建的核心就三步——装 IDE、配 BSP、装驱动。每一步都可能出幺蛾子,但别怕,对照上面的流程走一遍,基本都能搞定。