目录
前言
本篇主要是作者在进行物联网项目的学习过程中,对ESP8266的固件烧写流程的记录。
一、固件烧写的目的
ESP8266本质上是集成了Wi-Fi功能的微控制器,其控制的实现依赖于固件。通常来说,ESP8266模块在出厂的时候会进行基本的AT指令固件的烧写,但是如果要支持像是MQTT透传等功能的时候,单纯的AT指令固件难以满足要求,所以需要对ESP8266进行相应固件的烧写。
二、固件烧写的硬件准备
1.USB转TTL模块
图1 USB转TTL模块
2.硬件连线
图2 ESP8266进行固件烧录时的硬件连线示意图
表1 ESP8266进行固件烧录时的硬件连线表
USB转TTL模块引脚 | ESP8266模块引脚 |
---|---|
3V3 | VCC |
GND | GND |
RX | TXD |
TX | RXD |
GND | IO_O |
三、固件烧写的流程
1.下载ESP8266的FLASH烧录软件
(1)可以在乐鑫的官网中“支持”-“工具”中找到Flash下载工具
(2)下载“Flash下载工具”
(3)下载到电脑的制定文件夹(我这里是下载到路径“D:\ESP8266_FLASH_DOWNLOAD”下,根据自己需要下载即可)后,对“flash_download_tool.zip”进行解压
(4)解压后的“flash_download_tool”如下图所示
2.进行硬件连线
(1)按照前文所述进行ESP8266模块和USB转TTL模块的连线
(2)连接到电脑的USB接口上,可通过指示灯的情况大致判断模块的状态
(3)右键单击“开始”,再打开“设备管理器”
(4)在设备管理器的“端口(COM和LPT)”中查看是否有“USB-SERIAL CH340”的端口,正常情况下,这里是可以正常显示该端口,没有感叹号,并且会在后面的括号中显示相应的端口号,比如:这里我接入的拓展坞的端口COM25,在之后的固件烧写中需要注意这点
CH340驱动下载链接:CH341SER.ZIP下载
3.进行固件烧录
(1)打开固件烧录可执行程序“flash_download_tool_3.9.8_3.exe”
(2)配置芯片类型(Chip Type)为“ESP8266”,工作模式(Work Mode)为“Develop”,然后点击“OK”
(3)然后我们就会进入固件烧写软件的界面,如下图所示
(4)对ESP8266进行固件烧写,我们需要有支持相应功能的固件,这里在安信可官网上下载了一个MQTT透传的AT固件(具体的固件根据需要下载即可)
ESP8266的固件下载链接:AT固件汇总 | 安信可科技 (ai-thinker.com)
点击“...”,然后选择下载好的固件的bin格式文件,勾选路径左侧的“√”,在右侧框中输入“0x00”
(5)再进行SPI Flash和Download Panel的设置:SPI速率设置为80MHz,模式设置为DIO;串口的端口号选择我们之前在“设备管理器”中看到的COM25
(6)点击“START”开始下载
(7)等待下载完成即可
总结
ESP8266固件烧写是通过USB转TTL模块连接电脑与ESP8266模块(需IO0引脚接地进入下载模式),利用乐鑫官方Flash烧录工具将定制固件(如MQTT透传固件)写入Flash的过程,使其支持物联网场景下的自定义开发,实现传感器数据无线传输及云端交互等功能,为项目提供灵活、低成本的硬件解决方案。