ESP32和ESP8266下载方法及下载失败排查
前言
ESP32和ESP8266都是乐鑫科技(Espressif Systems)推出的微控制器,它们在物联网(IoT)领域非常受欢迎。ESP32和ESP8266虽然在性能方面会有些差别,但是它们下载的方式基本上一样的,现在一起来了解一下关于ESP32和ESP8266的下载方式以及烧录失败时的排查。
下载方式
ESP32和ESP8266的下载方式有如下两种:
下载方式一:
Arduino IDE中在确保已经安装好ESP32和ESP8266相关插件后,打开对应程序(此处以ESP8266为例):
1.首先把相应的库文件手动加入:
库文件添加有两种方式:
(1)直接添加ZIP库文件:
(2)将库文件复制粘贴到 Arduino IDE安装文件夹的库文件夹中:
2.选择对应开发板型号和COM后进行烧录:
3.点击左上角“上传”,待左下角显示上传成功后则表示程序已经成功上传到开发板了:
此时,按一下复位键程序就可以运行了;
由于ESP32和ESP8266下载方式基本上是一样的,所以ESP32在 Arduino IDE中的烧录方式同理如上;
下载方式二:
1.首先把下载好的flash_download_tool软件打开(此处以ESP32为例):
2.选择正确的开发板型号和工作模式,点击“OK”:
3.选择对应COM和需要下载的固件文件以及设置需要烧录到的地址:
4.一般烧录前需要将IO0拉低至GND,拉低后点击“START”,开始后一些没有自动下载电路的板子或者模组会需要你同步上电,让ESP32进入烧录模式,按提示进行同步上电即可,等待烧录完成左下方会显示“完成”:
此时将IO0拉回高电平,再按一下复位程序就可以运行了;
由于ESP32和ESP8266下载方式基本上是一样的,所以ESP8266在flash_download_tool中的烧录方式同理如上;
日常中我们在使用 Arduino IDE或者flash_download_tool软件烧录时会遇到一些烧录失败的情况,接下来我们来排查一下这些现象;
下载失败排查
Arduino IDE下载时:
(1)在给开发板下载程序时,选错了开发板的型号,会显示开发板不存在或者没有连接到开发板,现象如下:
(2)下载端口选择错误、没有进入烧录模式(主要是IO0和复位),会显示连接不上并且等待超时,现象如下:
(3)如果下载前没有添加相应的库文件,下载时会显示找不到对应的文件或目录,现象如下:
(4)当串口波特率过大时,下载时会有以下现象:
(5)当下载端口被占用时,会有如下现象:
(6)在arduinoIDE 中未安装和选择对应的开发板,在编译下载时会显示找不到头文件:
flash_download_tool下载时:
(1)在串口选择错误或者com被占用,还有可能是供电不足,会有如下现象:
(2)一般固件要对应自己模块的flash芯片的大小,下载了错误的固件会有如下现象:
(3)efuse损坏。由于静电的原因导致芯片损坏,下载软件的efuse校验无法通过。现象如下:
(4)如果卡在了等待上电过程,在确认接线无误的情况下,将RST引脚接地即可;
(5)下载波特率过大。有部分串口芯片的下载波特率并不支持1500000, 甚至由于接线方式的原因、使用的烧录线品质较差、线太长等原因导致太高的波特率下载容易失败,需要适当降低下载波特率。现象如下: