3、开发环境搭建:安装Python、Thonny IDE、树莓派系统烧录、ESP32 MicroPython固件刷写

好,咱们正式开始动手了。这一章要做的,就是把所有武器都准备好。说白了,就是给电脑装上Python,给树莓派烧个系统,再给ESP32刷上MicroPython固件。嗯,这三件事做完,你才算真正入了门。

我刚开始带团队的时候,发现很多新人卡在环境搭建这一步。不是装不上,就是版本不对。折腾半天,代码一行没写,心态先崩了。所以这一章,我会把每个坑都指出来。你跟着我的节奏走,半小时内全部搞定。

3.1 安装Python:选对版本很重要

Python版本这事儿,我吃过亏。有一回项目赶进度,我随手装了最新的Python 3.12,结果项目里用到的几个库还没适配。折腾了两天才发现是版本问题。从那以后,我学乖了——稳定版永远比最新版靠谱

推荐版本:Python 3.10.x 或 3.11.x

这两个版本兼容性最好,主流库都支持。别追新,稳字当头。

安装步骤很简单,我列出来:

  1. 打开Python官网,找到Downloads页面
  2. 选择Windows版本(或macOS/Linux对应版本)
  3. 下载时注意选64位的安装包
  4. 安装时一定要勾选「Add Python to PATH」
  5. 一路Next,搞定

注意:「Add Python to PATH」这个选项,我见过至少十个人忘了勾。后果就是你在命令行里敲python,系统告诉你找不到命令。还得手动配环境变量,麻烦得很。所以,勾上它。

装完之后怎么验证?打开命令行,输入:

python --version

如果显示Python 3.10.x,恭喜你,第一步完成。

3.2 Thonny IDE:专为嵌入式准备的编辑器

你可能听说过PyCharm、VS Code。但说实话,做嵌入式开发,尤其是跟MicroPython打交道,Thonny才是我的首选。为什么?因为它轻量、开箱即用,而且自带MicroPython支持。你不需要装一堆插件,打开就能连ESP32。

我个人习惯用Thonny做快速原型验证。项目初期,代码量不大,Thonny的简洁界面反而让人专注。等代码规模上去了,再切换到VS Code也不迟。

安装Thonny:

  1. 去Thonny官网下载对应版本
  2. Windows用户直接双击安装包,一路默认
  3. macOS用户拖到Applications文件夹
  4. Linux用户用包管理器安装:sudo apt install thonny

装完之后打开,你会看到一个非常清爽的界面。左边是代码编辑区,右边是Shell交互区。嗯,这就是你接下来写代码的主战场。

小技巧:Thonny默认是英文界面。如果你想换成中文,点击Tools → Options → General,在Language里选择简体中文,重启即可。

3.3 树莓派系统烧录:别用老方法了

以前烧树莓派系统,得下载镜像、用Win32DiskImager、还要解压。步骤多,容易出错。现在不一样了,树莓派官方出了个工具叫Raspberry Pi Imager,一键搞定。

我记得第一次用这个工具的时候,心里还嘀咕:能靠谱吗?结果用了一次就回不去了。太方便了,连SSH和WiFi配置都能提前设好。

操作步骤:

  1. 下载并安装Raspberry Pi Imager
  2. 插入SD卡(建议16GB以上,Class 10速度)
  3. 打开Imager,选择设备型号(比如树莓派4B)
  4. 选择操作系统:推荐Raspberry Pi OS (32-bit) 或 (64-bit)
  5. 选择SD卡
  6. 点击右下角的齿轮图标,可以提前配置:
    • 设置主机名
    • 启用SSH
    • 配置WiFi
    • 设置用户名和密码
  7. 点击「写入」,等待完成

重要提醒:烧录过程中不要拔SD卡。我见过有人心急,写到一半拔了,结果卡废了。耐心等进度条走完,也就几分钟的事。

烧录完成后,把SD卡插到树莓派上,通电。第一次启动会有点慢,大概一两分钟。之后你就可以通过SSH连进去了。

3.4 ESP32 MicroPython固件刷写

ESP32这块芯片,我用了好几年。说实话,它性价比极高。几块钱的东西,能跑WiFi、蓝牙,还能接各种传感器。但前提是——你得先给它刷上MicroPython固件。

为什么要刷MicroPython?因为原厂固件是用C语言写的,开发门槛高。MicroPython让你用Python写代码,调试方便,迭代快。我在项目中做原型验证,都是用MicroPython。等逻辑稳定了,再考虑用C做性能优化。

刷写步骤:

  1. 下载MicroPython固件(.bin文件),去MicroPython官网找ESP32对应的版本
  2. 安装esptool工具:pip install esptool
  3. 用USB线连接ESP32到电脑
  4. 查看端口号:Windows是COM口,Linux/macOS是/dev/ttyUSB0或/dev/ttyACM0
  5. 擦除原有固件:
esptool.py --port COM3 erase_flash
  1. 刷写新固件:
esptool.py --port COM3 --baud 460800 write_flash --flash_size=detect 0 esp32-20230426-v1.20.0.bin

注意:刷写时,很多ESP32开发板需要按住BOOT按钮,再按一下EN按钮,然后松开BOOT。这样才能进入下载模式。我第一次刷的时候不知道这个,折腾了半小时。后来发现,有些开发板会自动进入下载模式,但大部分需要手动操作。

刷完之后怎么验证?打开Thonny,点击右下角选择解释器,选「MicroPython (ESP32)」,端口选对应的COM口。如果连接成功,Shell里会出现MicroPython的版本信息。

验证小技巧:在Shell里输入print('Hello, ESP32!'),如果能看到输出,说明固件刷写成功,环境搭建完毕。

3.5 环境验证:确保一切就绪

最后一步,咱们做个快速验证。打开Thonny,连接ESP32,在Shell里输入:

import machine
import time

led = machine.Pin(2, machine.Pin.OUT)
while True:
    led.value(1)
    time.sleep(0.5)
    led.value(0)
    time.sleep(0.5)

如果ESP32开发板上的LED开始闪烁,恭喜你——环境搭建全部完成。你已经有了一套完整的传感器数据采集开发环境。

嗯,到这里,咱们的「武器库」算是建好了。下一章,我会带你写第一行真正有用的代码——从传感器读取数据。准备好了吗?