跳转至

Windows10下的固件烧录

概要

本编教程中,1Z实验室主要为大家详细讲解在Windows10下对ESP32刷入MicroPython固件的具体流程。

开始之前

在开始之前,你应该仔细阅读本系列教程中之前的章节:

MicroPython固件烧录指南

阅读完成之后,你需要做到:

  • 下载MicroPython的固件到本地

  • 了解到烧录MicroPython固件需要使用到的工具

  • 把你的ESP32设备用一根正确的的数据线连接到你的电脑

解决Windows上的驱动问题

在windows10系统上,大部分的外设硬件在接入到主机的时候,系统都会自动去检索相对应的驱动程序,但也不排除个别检索不到的情况。所以请先检查你的ESP32开发板在系统中的驱动程序是否正常安装。

查看设备列表,检查驱动程序

右键我的电脑 >> 点击属性:

点击设备管理器:

如图,发现问题所在:

下载CP2102驱动程序

点击下载链接后进入如图所示的界面

解压下载的文件:

进入解压后的目录,按照图示运行对应的安装程序:

安装CP2102驱动程序

点击下一步

点击完成,即完成安装

再次查看设备列表

重复之前的 查看设备列表,检查驱动程序步骤

至此,设别驱动安装完毕。

获取工具

MicroPython固件烧录指南一文中笔者有提到:

为ESP32烧录MicroPython固件需要使用的工具:

- Python3

- pip python的包管理器,用来下载esptool模块

- esptool 一个用于给ESP32刷入固件的Python工具模块

接下来我们重点讲解如何在Windows10上获取这些工具。

获取Python和pip

如果您使用从python.org下载的Python 2> = 2.7.9或Python 3> = 3.4,或者您正在使用虚拟环境,则已经安装了pip.

如上所述,如果我们使用3.4版本以上的Python,pip是一并安装好的,因此,我们将在获取Python时,一并获取pip。

下载Python

点击python.org链接后浏览器页面如图所示:

你可以下载最新版本的Python3.7.1 , 如果你比较保守,那么也可以下载Python3.6.x即任意一版Python3.6

笔者属于激进主义者,喜欢追求新鲜的事物,喜欢追赶时代的前沿,所以我选Python3.7.1,接下来笔者以Python3.7.1为示例,安装Python。

安装Python

双击下载好的exe可执行文件

如图, 不要忘记勾选 Add Python 3.7 to PATH

之后

尝试运行Python

win + R 呼出运行面板,输入python后回车

如果你看到如下图所示的命令行窗口,则表示Python已经可以正常使用了。

尝试运行pip

pip是Python的包管理器。

win + R 呼出运行面板,输入cmd后回车,召唤命令行窗口,输入pip list回车

pip list

如果出现如上图所示的输出,则证明Python的包管理器pip可以正常使用。

获取esptool

我们需要使用Python的包管理器pip来获取esptool,在命令行窗口中输入如下命令进行安装:

pip install esptool

安装过程如上图中红色线框中所示。

使用esptool开始刷入固件

万事俱备,我们可以开始为ESP32刷入MicroPython固件了。

擦除flash

为了确保刷入的成功率,我们最好先将ESP32的flash擦除,在命令行窗口中输入如下模板的指令:

esptool.py --port <你的ESP32端口号> erase_flash

注意:笔者的端口号是COM3,你应该将 <你的ESP32端口号> 替换为你自己的端口号,如果忘记,请跳转到步骤 *再次查看设备列表 来获取正确的端口号*

所以笔者应该输入的指令是

esptool.py --port COM3 erase_flash

执行指令后的输出如上图所示。

接下来我们开始刷入固件。

刷入MicroPython固件

还记得最开始下载的固件吗?

如图所示找到该固件下载后存放的位置,然后获得该路径。

进入命令行窗口,键入刷入固件的指令模板为:

esptool.py --chip esp32 --port <你的ESP32端口号> write_flash -z  0x1000 <你的固件存放的路径> 

注意:笔者的端口号是COM3,你应该将 <你的ESP32端口号> 替换为你自己的端口号,如果忘记,请跳转到步骤 *再次查看设备列表 来获取正确的端口号*

注意:你应该将 <你的固件存放的路径> 替换为你自己的正确的固件存放路径

笔者应该输入的指令为:

esptool.py --chip esp32 --port COM3 write_flash -z 0x1000 C:\Users\Fuerm\Downloads\esp32-20181030-v1.9.4-679-ge328a5d46.bin

回车,开始刷入固件,等待一段时间。

看到如上图所示的输出,即代表刷入完成。