【STM32+ESP8266上云连载①】给ESP8266烧录AT固件

文章目录

  • 一、给NodeMCU烧录固件
    • 1.1硬件准备
    • 1.2软件准备
    • 1.3AT固件下载
    • 1.4配置设置
    • 1.5开始烧录
  • 二、给ESP8266-01S烧录固件
    • 2.1硬件准备
    • 2.2AT固件下载
    • 2.3连线
    • 2.4烧录配置
  • 三、给ESP-12E/F/S单片烧录固件
  • 四、指令测试
    • 4.1HTTP测试
    • 4.2MQTT测试

我在使用ESP8266的时候遇到了一些问题,像给固件烧录、和单片机结合使用MQTT协议给云服务器发送数据等。乐鑫有提供基础的AT固件,可以正常使用模组的一些基本的功能,但是针对MQTT协议需要烧录专门的固件使用。因此,我将自己解决遇到的问题解决方法写一下,希望可以帮到你。

一、给NodeMCU烧录固件

由于一般购买的NodeMCU模组引脚比较全,并且将串口也引出,因此在下载固件使用的时候更方便,仅仅需要一条数据线即可(一般都是micro-usb数据线,并且就是可以进行数据传输的那种)。

1.1硬件准备

  • 安装windows操作系统的电脑一台
  • 数据线一根
  • NodeMCU模组

    使用数据线连接到电脑,并且可以正常识别到设备。
    如果不能正常识别需要考虑:
    1、是否安装了CH340串口驱动或者CP2102串口驱动
    2、或者考虑芯片串口是否损坏
    3、数据线是否不支持数据传输

1.2软件准备

  • 使用官方提供的烧录工具Flash Download Tools(点击链接下载)

【STM32+ESP8266上云连载①】给ESP8266烧录AT固件_第1张图片

其中的【doc】文件夹包含下载软件的具体使用方式介绍

解压后,双击exe即可打开软件,下图为界面打开样式

【STM32+ESP8266上云连载①】给ESP8266烧录AT固件_第2张图片

  • 选择需要下载的设备类型【ESP8266】模式为【Develop】,点击【ok】即可
  • 进入到路径配置和烧录参数配置界面

【STM32+ESP8266上云连载①】给ESP8266烧录AT固件_第3张图片

1.3AT固件下载

  • 有关乐鑫系列模组的详情介绍界面
    本界面提供有ESP8266不同系列的购买链接和介绍文档

【STM32+ESP8266上云连载①】给ESP8266烧录AT固件_第4张图片

  • 进入到安信可的相关固件下载界面(点击直达)

【STM32+ESP8266上云连载①】给ESP8266烧录AT固件_第5张图片

进入到界面可以看到不同类型的固件,有专门的云服务固件,有MQTT相关的固件,本次要进行MQTT测试,因此就是要下载MQTT透传固件即可,它包含了和MQTT协议相关的AT指令。

  • 点击固件下载并解压打开
    可以看到里面有一个文件夹,进入后显示一个bin文件,后缀为【4M

【STM32+ESP8266上云连载①】给ESP8266烧录AT固件_第6张图片

固件4其中文件的后缀是【4M】因此可以下载到NodeMCU,也就是ESP12E/F/S上,但是针对ESP8266-01系列就不可以了,需要下载小的固件,后缀为【1M】的。

1.4配置设置

  • 打开下载软件,进入到配置界面
  • 选择固件的绝对路径,并填写后面的下载起始地址【0x0

【STM32+ESP8266上云连载①】给ESP8266烧录AT固件_第7张图片

  • 配置SPI_SPEED为【40MHz
  • 配置SPI_MODE为【DIO
  • 不勾选【DoNotChgBin
  • 手动选择串口
  • 将下载速率拉满到【1500000
  • 最后的配置界面为

【STM32+ESP8266上云连载①】给ESP8266烧录AT固件_第8张图片

1.5开始烧录

  • 点击左下角的【START】,等待进度条到最后
  • 完成下载后显示【FINSH完成

【STM32+ESP8266上云连载①】给ESP8266烧录AT固件_第9张图片

从这里可以看到软件检测到设备的Flash大小是4MB,因此下载上面选择的MQTT固件完全可以

一般情况下不需要额外的操作,NodeMCU自身带有下载检测模式,自动将芯片设置为下载模式。

  • 打开任意一个串口调试助手,进行简单测试
    按下NodeMCU的复位键,可以看到打印的信息:

【STM32+ESP8266上云连载①】给ESP8266烧录AT固件_第10张图片

可以看到打印出来max地址、固件版本、编译时和最后的ready

二、给ESP8266-01S烧录固件

倘若你手里面有一个烧录架那就更好了,但是我说的方法是在没有烧录架,只有USB转TTL的情况下的方法。

2.1硬件准备

  • 安装windows操作系统的电脑一台
  • 数据线一根
  • ESP8266-01模组

2.2AT固件下载

  • 选择第七个固件直达链接

【STM32+ESP8266上云连载①】给ESP8266烧录AT固件_第11张图片

  • 点击固件下载并解压打开
    可以看到里面有一个文件夹,进入后显示一个bin文件,后缀为【1M

【STM32+ESP8266上云连载①】给ESP8266烧录AT固件_第12张图片

固件7其中文件的后缀是【1M】因此可以下载到ESP826601上

2.3连线

  • 根据ESP8266的下载模式,需要将GPIO0连接到【GND

【STM32+ESP8266上云连载①】给ESP8266烧录AT固件_第13张图片

  • USB转TTL和ESP8266的连线
UAB转TTL ESP8266-01S
RXD TXD
TXD RXD
3.3V VCC
GND GND
GND IO0
GND RST

2.4烧录配置

  • 配置的方法同NodeMCU

【STM32+ESP8266上云连载①】给ESP8266烧录AT固件_第14张图片

  • 烧录操作
    将USB转TTL和ESP8266-01S按照上面的接线图连接,然后按下软件上左下角的【START
    然后将接线的RST断开,然后下载状态将会变化,等待进度条走完即可
  • 烧录完成

【STM32+ESP8266上云连载①】给ESP8266烧录AT固件_第15张图片

  • 打开任意一个串口调试助手,进行简单测试
    将【IO0】从【GND】断开,然后将【RST】拉低后断开,可以看到打印的信息:

【STM32+ESP8266上云连载①】给ESP8266烧录AT固件_第16张图片

到此为止,MQTT固件烧录已经完成,你可以应对大多数情况下的固件烧录了
同时,你也可以烧录其他类型的固件进行测试,但是需要注意的是需要进行Flash存储大小的匹配

三、给ESP-12E/F/S单片烧录固件

烧录方式同上。

四、指令测试

4.1HTTP测试

4.2MQTT测试

你可能感兴趣的:(STM32,ESP8266,esp8266,上云,STM32,单片机,C语言,MQTT)