Windows10下的固件烧录¶
概要¶
本编教程中,1Z实验室主要为大家详细讲解在Windows10下对ESP32刷入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
回车,开始刷入固件,等待一段时间。
看到如上图所示的输出,即代表刷入完成。