我踩了所有ESP8266的坑,现在来个最终总结

本文详细指导如何将ESP8266与STM32集成,包括检查设备、升级固件至MQTT、AT指令应用及驱动移植。重点讲解了MQTT固件刷写、驱动配置和阿里云平台操作步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

出门左转是上一篇esp8266+stm32的笔记,那个是用官方固件,反正我是连不上~

1.移植到STM32前先检查你的esp8266能不能用

1.1 大概率你手里的esp8266是官方固件——刷MQTT固件

warring:esp01s只有 1MB flash 无法刷MQTT固件库,MQTT固件库需要4MB (32Mbit)【扔了买新的吧】

刷固件步骤:
①去安信可下载固件

在这里插入图片描述

②下载烧录工具:网上自找:

ESPFlashDownloadTool
在这里插入图片描述

③esp8266接线:
用usb转ttl 烧录就行~~

在这里插入图片描述

④注意:

  • 波特率一定要正确115200
  • 先擦除,再烧
  • 一直提示同步上电———>建议vcc与io0 都接到单片机上,当显示等待同步上电时一起拔掉vcc与io0 1秒后接回去即可完美解决

1.2 ESP8266 MQTT固件 AT指令列表:

  • AT+MQTTUSERCFG : 设置MQTT用户配置
  • AT+MQTTCONNCFG : 设置MQTT连接的配置
  • AT+MQTTCONN : 连接到MQTT代理
  • AT+MQTTPUB : 以字符串形式发布MQTT数据
  • AT+MQTTPUBRAW : 以二进制形式发布MQTT消息
  • AT+MQTTSUB : 订阅MQTT主题
  • AT+MQTTUNSUB : 取消订阅MQTT主题
  • AT+MQTTCLEAN : 关闭MQTT连接

AT指令 连接阿里云步骤
clientId第二个参数注意每个逗号后加分隔符
c语言加 \

AT
AT+CWJAP="TP-LINK_103","15508574848"  
AT+CWMODE=1
AT+CIPSNTPCFG=1,8,"ntp1.aliyun.com"
AT+MQTTUSERCFG=0,1,"My_pc|securemode=3\,signmethod=hmacsha1\,timestamp=789|","My_pc&a1jkTV6zoib","3d58dcc2c812aa597d6dd2116e0dc774a9a4b03b",0,0,""
AT+MQTTCONN=0,"a1jkTV6zoib.iot-as-mqtt.cn-shanghai.aliyuncs.com",1883,1

AT+MQTTCLEAN=0  //关闭 先别关

AT指令 订阅阿里云topic

AT+MQTTSUB=0,"/a1jkTV6zoib/My_pc/user/hxy_01",1
AT+MQTTPUB=0,"/a1jkTV6zoib/My_pc/user/hxy_01","hxy_ok",1,0

如果你的阿里云显示在线了~~~恭喜你的esp8266能用,可以用于stm32了

2.移植esp8266驱动 & mqtt驱动

相当于把at 指令封装到一个个函数里——通过usart传给esp8266

【转义符\】
【阿里云命令超过120app会报错 解决===》】

-----待更新

使用ESP8266开发板时,尤其是在进行物联网(IoT)项目中,上电同步是非常关键的一步。ESP8266是一种嵌入式Wi-Fi模块,当它从电源接通到运行状态时,需要一个特定的过程来初始化无线通信和系统设置。 等待上电同步主要包括以下几个步骤: 1. **复位处理**:当ESP8266被供电后,它会进入低功耗模式(Deep-Sleep或Power-Down)。首先,模块会进行一次硬件复位(Reset)来启动系统的初始化过程。 2. **固件启动**:ESP8266的微控制器启动固件加载器,开始执行预先烧录到闪存中的引导程序,该程序负责加载并运行主应用代码。 3. **分区配置**:固件加载后,ESP8266会检查分区表,找到应用程序所在的分区,并将该区域的数据加载到RAM中,这被称为上电同步(Factory Reset or Bootloader Partition)。 4. **应用程序初始化**:一旦应用程序代码加载完毕,ESP8266会执行应用程序的初始化代码,包括网络配置、连接Wi-Fi、设置工作模式等。 5. **安全措施**:在完成基本设置后,ESP8266可能会进行安全检查,如验证Wi-Fi密码和证书,以保护连接和数据安全。 如果你在开发过程中遇到等待时间过长或者网络连接稳定的问题,可能需要检查以下几点: - 供电稳定性和电压范围是否在ESP8266推荐范围内。 - 无线网络配置是否正确,包括SSID、密码以及频道选择。 - 应用程序代码是否有阻塞或无限循环的地方影响了同步过程。
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值