第1节 搭建开发环境
本教程将介绍 MicroPython,并指导您配置 ESP32 的 MicroPython 开发环境。
本教程的核心逻辑适用于所有 ESP32 开发板,但所有操作步骤均以 微雪 ESP32-S3-Zero 迷你开发板 为例进行讲解。如果您使用其他型号的开发板,请根据实际情况修改相应设置。
1. 什么是 MicroPython?
MicroPython 是 Python 3 编程语言的一个精简、高效的实现,它经过专门优化,可以运行在微控制器和其它资源受限的环境中。
MicroPython 支持多种微控制器平台。它最低可以在 256KB 闪存和 16KB RAM 的设备上运行。不过,在 ESP32 这样拥有 512KB 以上闪存和 128KB 以上 RAM 的硬件上,你才能获得最完整、最流畅的功能体验。
简单来说,MicroPython 就是运行在单片机上的“迷你版” Python。它允许开发者使用 Python 语法控制硬件,降低了嵌入式开发的入门门槛。
1.1 工作原理
MicroPython 的运行机制主要依赖于烧录在设备内部的固件(Firmware)。
- 交互式解释器 (REPL): 当 MicroPython 固件启动后,会运行一个微型 Python 解释器并进入待命状态。此时,通过串口连接,用户可以进入 REPL(Read-Eval-Print Loop,读取-求值-打印-循环)环境。在此环境中发送的 Python 指令会被立即执行并返回结果,这种即时反馈机制显著提升了调试效率。
- 文件执行机制:
除了交互式输入,MicroPython 也支持运行保存在文件系统中的代码。当设备启动时,会依次尝试运行
boot.py(系统引导脚本)和main.py(用户主程序)。将代码保存为main.py即可实现设备上电自动运行程序。
1.2 和标准 Python 的区别
- 独立实现: MicroPython 并非基于标准 Python (CPython) 的源代码修改而来,而是为了嵌入式环境从头开始编写的。它严格遵循 Python 3 的语法规范,但内部实现不同。
- 功能是子集: 由于微控制器的内存(RAM)和闪存(Flash)非常有限,MicroPython 只包含了标准 Python 的一部分核心库。一些庞大或不适用于嵌入式场景的库(如
numpy、requests的完整版)被移除或用功能更精简的模块替代。 - 硬件支持: MicroPython 的最大特色是增加了用于控制硬件的模块,例如
machine模块(用于控制 GPIO、I2C、SPI 等)和network模块(用于控制 Wi-Fi、蓝牙)。 - 跨平台: 除了 ESP32,MicroPython 还支持许多其他开发板,如 STM32 系列、ESP8266、树莓派 Pico (RP2040) 等。
1.3 与其它 ESP32 开发方式对比
| 特性 | MicroPython | Arduino | ESP-IDF |
|---|---|---|---|
| 学习难度 | 低 | 中 | 高 |
| 开发效率 | 高 | 中 | 低 |
| 性能 | 中 | 高 | 最高 |
| 内存占用 | 较高 | 中 | 可控 |
2. 配置开发环境
Thonny 是一款面向初学者的 Python 集成开发环境 (IDE),其内置了对 MicroPython 的完善支持,可以轻松完成固件烧录、文件管理和代码调试等所有操作。
本教程后续内容将统一基于 Thonny IDE 进行演示。
2.1 安装 Thonny
如果下载速度较慢或下载失败,可以从 此链接(Windows) 下载。
前往 Thonny 官网 下载并安装 Thonny。
2.2 烧录 MicroPython 固件
MicroPython 需要运行在其固件,因此首次使用前需烧录对应的固件。请参考以下烧录方式。
- 通过 Thonny
- 通过 Thonny(自定义固件)
- 网页快速烧录
- 通过乐鑫 Flash 下载工具
此方法操作简便,适合大多数场景。Thonny 会自动下载固件。
-
连接开发板:将 ESP32 开发板通过 USB 数据线连接到电脑。
信息若在后续步骤中遇到连接超时或烧录失败的情况,请尝试手动进入下载模式:按住开发板上的 BOOT 按钮不放,同时插入 USB 线,然后再松开 BOOT 按钮。
-
配置解释器:打开 Thonny,点击窗口右下角的解释器状态框(初始可能显示为 '本地 Python'),然后选择
配置解释器。
-
打开固件烧录工具:在弹出的窗口中,选择
MicroPython(ESP32) 解释器,以及开发板对应端口,然后点击右下角的安装或更新 MicroPython(esptool)链接。
-
选择固件:在
Install MicroPython(esptool)窗口中配置以下参数:信息若界面选项呈灰色不可选,请等待 Thonny 联网更新固件列表。若始终无法刷新固件列表,请使用 通过 Thonny(自定义固件) 安装方式。

- Target port:选择 ESP32 设备对应的端口(如不确定,可拔插设备观察哪个端口消失后重新出现)。
- MicroPython family:根据实际硬件选择芯片型号。
- variant:选择通用的
Espressif xxx。 - version:推荐选择最新的稳定版。
-
开始烧录:点击
安装。Thonny 会自动擦除闪存并烧录新的 MicroPython 固件。等待进度条走完,直到出现Done!提示。
当需要烧录特定版本(如旧版或测试版)的固件时,可通过 Thonny 烧录本地固件。
-
下载固件:前往 MicroPython 官网固件下载页面。根据 ESP32 的芯片型号(如 ESP32, ESP32-S2, ESP32-S3)选择对应的最新稳定版
.bin固件并下载到本地。

-
连接开发板:将 ESP32 开发板通过 USB 数据线连接到电脑。
信息若在后续步骤中遇到连接超时或烧录失败的情况,请尝试手动进入下载模式:按住开发板上的 BOOT 按钮不放,同时插入 USB 线,然后再松开 BOOT 按钮。
-
配置解释器:打开 Thonny,点击窗口右下角的解释器状态框(初始可能显示为 '本地 Python'),然后选择
配置解释器。
-
打开固件烧录工具:在弹出的窗口中,选择
MicroPython(ESP32) 解释器,以及开发板对应端口,然后点击右下角的安装或更新 MicroPython(esptool)链接。
-
选择本地固件:在
Install MicroPython(esptool)窗口中点击右下角的☰按钮,然后点击Select local MicroPython image选择本地固件文件。
-
开始烧录:点击
安装。Thonny 会自动擦除闪存并烧录新的 MicroPython 固件。等待进度条走完,直到出现Done!提示。

通过以下方式快速烧录 MicroPython 固件,无需安装任何工具。请使用 Chrome 或者 Edge 浏览器访问此页面。
此方式目前仅支持 ESP32-S3、ESP32-C3 和 ESP32-C6 开发板。
请先手动将开发板进入下载模式:按住开发板上的 BOOT 按钮不放,同时插入 USB 线,然后再松开 BOOT 按钮。
-
点击下方按钮连接设备并开始烧录 MicroPython 固件。
-
在浏览器左上角选择对应的串口。

-
点击 “Install MicroPython 固件” 按钮,在弹出的窗口中再次点击 “Install” 按钮确认烧录固件。

-
等待烧录完成,直到出现 "Installtion completed!" 提示。烧录完成后即可关闭烧录窗口。

当只需要烧录固件时,可以使用乐鑫官方的烧录工具。
若在后续步骤中遇到连接超时或烧录失败的情况,请尝试手动进入下载模式:按住开发板上的 BOOT 按钮不放,同时插入 USB 线,然后再松开 BOOT 按钮。
-
下载固件:前往 MicroPython 官网固件下载页面。根据 ESP32 的芯片型号(如 ESP32, ESP32-S2, ESP32-S3)选择对应的最新稳定版
.bin固件并下载到本地。

-
下载烧录工具:下载乐鑫官方 Flash 下载工具。
-
配置工具:解压并运行
flash_download_tool.exe。
- 在
ChipType中选择ESP32-S3(或对应的型号)。 - 在
WorkMode中选择Develop。 - 在
LoadMode中选择USB。
各选项详细说明可参考::Flash 下载工具用户指南
- 在
-
设置烧录文件:

-
点击
...按钮,选择刚刚下载的.bin固件文件。 -
在地址(
@)栏输入0。信息请参考 MicroPython 官网下载页面上针对该芯片的具体地址说明(通常 ESP32 原版为
0x1000,S3/C3 为0x0)
-
-
执行烧录:选择正确的
COM端口,设置BAUD波特率(推荐921600或更高以加快速度),然后点击START。等待工具右下角显示FINISH即表示烧录完成。
警告此方法配置项较多,请务必确认芯片型号、固件文件及烧录地址正确无误。对于日常开发,依然推荐使用 Thonny。
2.3 验证开发环境
烧录完成后,接下来验证环境配置是否成功。
-
重连设备:断开 ESP32 与电脑的连接,然后重新连接,并确保 Thonny 右下角的解释器已设置为
MicroPython (ESP32)和正确的端口。注意端口变化烧录 MicroPython 固件后,设备对应的 COM 端口号可能会发生变化(特别是在使用 ESP32-S3/C3 等原生 USB 接口时)。若连接失败,请点击右下角重新选择正确的端口。

-
重启解释器:如果底部的 Shell 窗口无响应,可以点击工具栏上的红色 停止 按钮来重启板载解释器。

-
检查提示符:连接成功后,Shell 窗口中应出现 MicroPython 的版本信息、开发板信息和
>>>提示符,这表示已成功进入 ESP32 上的 MicroPython REPL 环境。
-
运行测试代码:在
>>>提示符后输入第一行 MicroPython 代码,然后按回车:print('Hello, ESP32!')
此时应能立即看到 ESP32 返回了
Hello, ESP32!的消息。
至此,ESP32 MicroPython 开发环境已经搭建完毕,并且成功运行了第一行代码。
