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

文章目录

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

一、给NodeMCU烧录固件

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

1.1硬件准备

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

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

1.2软件准备

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

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

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

1.3AT固件下载

  • 有关乐鑫系列模组的详情介绍界面
    本界面提供有ESP8266不同系列的购买链接和介绍文档
  • 进入到安信可的相关固件下载界面(点击直达)

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

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

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

1.4配置设置

  • 打开下载软件,进入到配置界面
  • 选择固件的绝对路径,并填写后面的下载起始地址【0x0
  • 配置SPI_SPEED为【40MHz
  • 配置SPI_MODE为【DIO
  • 不勾选【DoNotChgBin
  • 手动选择串口
  • 将下载速率拉满到【1500000
  • 最后的配置界面为

1.5开始烧录

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

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

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

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

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

二、给ESP8266-01S烧录固件

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

2.1硬件准备

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

2.2AT固件下载

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

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

2.3连线

  • 根据ESP8266的下载模式,需要将GPIO0连接到【GND
  • USB转TTL和ESP8266的连线
UAB转TTL ESP8266-01S
RXD TXD
TXD RXD
3.3V VCC
GND GND
GND IO0
GND RST

2.4烧录配置

  • 配置的方法同NodeMCU
  • 烧录操作
    将USB转TTL和ESP8266-01S按照上面的接线图连接,然后按下软件上左下角的【START
    然后将接线的RST断开,然后下载状态将会变化,等待进度条走完即可
  • 烧录完成
  • 打开任意一个串口调试助手,进行简单测试
    将【IO0】从【GND】断开,然后将【RST】拉低后断开,可以看到打印的信息:

到此为止,MQTT固件烧录已经完成,你可以应对大多数情况下的固件烧录了

同时,你也可以烧录其他类型的固件进行测试,但是需要注意的是需要进行Flash存储大小的匹配

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

烧录方式同上。

四、指令测试

4.1HTTP测试

4.2MQTT测试

相关推荐
小麦嵌入式18 分钟前
Linux驱动开发实战(十一):GPIO子系统深度解析与RGB LED驱动实践
linux·c语言·驱动开发·stm32·嵌入式硬件·物联网·ubuntu
jelasin1 小时前
LibCoroutine开发手记:细粒度C语言协程库
c语言
篝火悟者1 小时前
自学-C语言-基础-数组、函数、指针、结构体和共同体、文件
c语言·开发语言
触角010100012 小时前
STM32F103低功耗模式深度解析:从理论到应用实践(上) | 零基础入门STM32第九十二步
驱动开发·stm32·单片机·嵌入式硬件·物联网
昊虹AI笔记2 小时前
使用STM32CubeMX和Keil在STM32上创建并运行一个简单的FreeRTOS多任务程序
stm32·单片机·嵌入式硬件
王光环3 小时前
单片机使用printf,不用微库
单片机·嵌入式硬件
神里流~霜灭3 小时前
蓝桥备赛指南(12)· 省赛(构造or枚举)
c语言·数据结构·c++·算法·枚举·蓝桥·构造
双叶8363 小时前
(C语言)单链表(1.0)(单链表教程)(数据结构,指针)
c语言·开发语言·数据结构·算法·游戏
西城微科方案开发4 小时前
体重秤PCBA电路方案组成结构
单片机·嵌入式硬件
深圳市青牛科技实业有限公司4 小时前
「青牛科技 」GC4931P/4938/4939 12-24V三相有感电机驱动芯片 对标Allegro A4931/瑞盟MS4931
科技·单片机·扫地机器人吸尘·筋膜枪电机·驱动轮电机·服务机器人驱动轮电机·工业机器人减速电机