1、ESP32开发环境搭建:Arduino IDE安装、ESP32板级支持包配置、驱动安装、第一个Blink程序。
好,咱们直接开始。学ESP32,第一件事就是把开发环境搭起来。别小看这一步,我见过太多人卡在环境配置上,代码写好了却烧不进去,急得直跺脚。今天我就带你一步步搞定它。
1.1 下载并安装Arduino IDE
Arduino IDE,说白了就是个写代码、烧程序的工具。它免费、轻量、跨平台,对新手特别友好。我个人习惯用Windows系统,但Mac和Linux也完全没问题。
下载地址: 去官网 arduino.cc 找「Software」页面,选对应你操作系统的版本。我建议下载 1.8.x 的稳定版,别急着追新。2.0版虽然界面好看,但有些库兼容性还没跟上。
安装步骤:
- Windows用户:直接运行安装包,一路点「下一步」。注意勾选「安装USB驱动」那个选项。
- Mac用户:把.app文件拖进Applications文件夹就行。
- Linux用户:解压后运行
install.sh脚本。
1.2 配置ESP32板级支持包
Arduino IDE默认只支持自家的板子。要让它能认ESP32,得手动添加板级支持包。嗯,这里要注意,操作顺序别搞反了。
具体操作:
- 打开Arduino IDE,点击菜单栏 文件 → 首选项。
- 在「附加开发板管理器网址」那个框里,粘贴下面这个链接:
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
- 点击「好」保存。然后去 工具 → 开发板 → 开发板管理器。
- 在搜索框输入
ESP32,找到由 Espressif Systems 提供的那个包,点击安装。
安装完成后,在「工具 → 开发板」菜单里,你应该能看到一大串ESP32的型号列表。选你手头的那款,比如 ESP32 Dev Module 或 NodeMCU-32S。
1.3 安装USB转串口驱动
为什么需要这个?因为ESP32通过USB连电脑时,其实走的是串口协议。电脑得认识这个串口芯片才行。
市面上常见的ESP32开发板,用的串口芯片主要有两种:
| 芯片型号 | 常见厂商 | 驱动下载 |
|---|---|---|
| CP2102 | Silicon Labs | 官网搜CP210x驱动 |
| CH340 | 南京沁恒 | 官网搜CH340驱动 |
怎么判断你的是哪种?看板子上的小芯片,上面印着字呢。或者插上USB后,去设备管理器看「端口(COM和LPT)」下面有没有出现未知设备。
避坑指南: 我曾经帮一个学员远程调试,他板子插上电脑完全没反应。折腾了半小时,最后发现是USB线的问题——那根线只能充电,不能传数据。所以,请一定用数据线,别用充电线。
1.4 第一个程序:Blink(点灯)
环境搭好了,来写个经典的点灯程序。这就像学编程时的「Hello World」,虽然简单,但能验证整个链路是否通畅。
步骤:
- 在Arduino IDE中,点击 文件 → 示例 → ESP32 → GPIO → Blink。
- 你会看到一段代码。别急着改,先看看它长什么样:
// 这个示例代码会让ESP32板载的LED闪烁
// 大多数ESP32开发板的LED连接在GPIO2
void setup() {
pinMode(2, OUTPUT); // 将GPIO2设置为输出模式
}
void loop() {
digitalWrite(2, HIGH); // 点亮LED
delay(1000); // 等待1秒
digitalWrite(2, LOW); // 熄灭LED
delay(1000); // 等待1秒
}
- 把ESP32通过USB线连到电脑。
- 在 工具 → 开发板 里选对你的型号。
- 在 工具 → 端口 里选对COM口(Windows一般是COM3、COM4之类的)。
- 点击左上角的 → 箭头(上传按钮)。
上传成功后,你会看到板子上的LED开始一秒一闪。嗯,成了。恭喜你,ESP32开发环境正式搭建完毕。
1.5 常见问题与解决
我整理了几个新手最容易碰到的问题,你遇到了可以直接对照:
- 编译报错: 检查板级支持包是否安装完整。有时候网络中断会导致包损坏,重装一次就好。
- 上传失败: 检查端口是否选对,驱动是否安装。或者试试上面说的「强制下载模式」。
- LED不亮: 有些开发板的板载LED不在GPIO2上。比如ESP32-CAM系列用的是GPIO4。查一下你的板子原理图。
- 串口监视器乱码: 波特率没设对。Blink程序没用到串口,但如果你后面用到了,记得把右下角的波特率调到和代码里
Serial.begin()一致。
好了,这一章就到这。环境搭好了,后面咱们就能放开手脚玩了。下一章我会带你用Node-RED做个简单的数据可视化,把ESP32采集的温度湿度显示在仪表盘上。想想就有点小激动,对吧?