烧录MQTT固件
购买的ESP8266一般没带MQTT固件,所以无法通过MQTT指令与云平台通信,需要烧录固件。 MQTT固件可以在安信可科技进行下载。
[https://docs.espressif.com/projects/esp-at/zh_CN/release-v2.2.0.0_esp8266/index.html]

下载器可以使用乐鑫官方的下载器。
[https://www.espressif.com.cn/zh-hans/support/download/other-tools]

下载完毕之后,选择对应模块的型号。

接线方式如下所示。

选择刚刚下载的固件,配置好对应的串口,点击下载即可。

下载成功如下所示。

若出现这种情况8-download data fail,则是flash大小不够,需要更换nor flash。

创建阿里云产品
阿里云官网:https://www.aliyun.com/
选择物联网平台,开始创建产品。

选择公共实例,点击进入。

创建产品。

这里我的基本配置如下所示。

添加设备。

这里可以输入自己喜欢的设备名字,也可以点击确认自动生成。

生成设备之后,将温湿度上报添加进来。

添加标准功能。

添加所需功能。

添加完毕之后点击上线。

AT指令接入阿里云 AT指令手册:
[https://docs.espressif.com/projects/esp-at/zh_CN/release-v2.2.0.0_esp8266/AT_Command_Set/MQTT_AT_Commands.html]
设置Wi-Fi模式

AT+CWMODE=1
连接路由器

例如WIFI名称66,密码:1234abcd,则输入
AT+CWJAP='66','1234abcd'
可以通过查询IP地址来查看是否连接上wifi。

AT+CIFSR
使能 SNTP 服务器,设置中国时区 (UTC+08:00)

AT+CIPSNTPCFG=1,8,'ntp1.aliyun.com'
查看MQTT参数,这里面包含MQTT三元组信息:clientld,username,password

设置登录密码

对应的MQTT参数如下所示。

AT+MQTTUSERCFG=0,1,'NULL','4WpGE15ik3MbGt0lEiIj&a1ZCbJN0kQB','0ac7bb4bf8eb2b96ea8ced5760eb72b62238935a5ec42c22849fcee7fe13137d',0,0,''

配置 MQTT 用户属性 设置指令:
AT+MQTTUSERCFG=< LinkID >,< scheme >,< 'client_id' >,< 'username' >,< 'password' >,< cert_key_ID >,< CA_ID >,< 'path' >
对应的MQTT参数如下所示。

注意:需要在每个逗号前面加上
AT+MQTTCLIENTID=0,'a1ZCbJN0kQB.4WpGE15ik3MbGt0lEiIj|securemode=2,signmethod=hmacsha256,timestamp=1679562771636|'
连接 MQTT Broker

对应的MQTT参数如下所示。

设置指令:
AT+MQTTCONN=0,'a1ZCbJN0kQB.iot-as-mqtt.cn-shanghai.aliyuncs.com',1883,1
此时可以查看设备,可以看到已经是在线状态。

订阅
订阅Topic是指在一个订阅服务中,用户可以选择关注或订阅感兴趣的话题或主题。

通过订阅Topic,用户可以更加精准地获取自己的内容,提高信息的质量和效率。

发送AT指令,订阅Topic

AT+MQTTSUB=0,'/a1ZCbJN0kQB/4WpGE15ik3MbGt0lEiIj/user/get',1

订阅成功会在阿里云进行显示。

上报数据
这里定义了温湿度的功能。

可以使用AT+MQTTPUBRAW发布 MQTT 消息

例如发送温度32 湿度66
AT+MQTTPUB=0,'/sys/a1ZCbJN0kQB/4WpGE15ik3MbGt0lEiIj/thing/event/property/post','{params:{'Temperature':32}}',0,0AT+MQTTPUB=0,'/sys/a1ZCbJN0kQB/4WpGE15ik3MbGt0lEiIj/thing/event/property/post','{params:{'CurrentHumidity':66}}',0,0
实际情况如下所示:

下发数据
下发数据可以按照如下操作进行。

实际情况如下所示。

断开连接

使用下列指令可以断开连接
AT+MQTTCLEAN=0
上一篇:STM32 ILI9341驱动TFTLCD(八)LCD碰撞小球
下一篇:STM32 LL库中断配置引脚外部中断的方式
推荐阅读最新更新时间:2026-03-19 22:46
- LTC2945IUD-1 在 -48V 系统中使用低侧检测进行电源监控的典型应用
- 用于 24V 汽车应用的 LTC4367IDD 过压电源保护控制器的典型应用
- LTC2635-HZ12 四通道、12 位数模转换器的典型应用
- 使用 ROHM Semiconductor 的 BU4821 的参考设计
- 使用 Analog Devices 的 AD9625 的参考设计
- LT1307CS8 高压反激式转换器的典型应用电路
- AD7858L 3V 至 5V 单电源、200ksps、8 通道、12 位采样 ADC 的典型应用
- AND8337/D、1.2V、1.5V DC 至 DC 单路输出电源参考设计
- DER-713 - 使用 InnoSwitch3-EP PowiGaN 和 MinE-CAP 的 65 W 高功率密度适配器
- LDK120C11R 1.1V低压降稳压器典型应用(可调版)电路

stm32驱动屏IC rm68042
标准AT指令集
基于STM32G031的测试测量训练平台完成虚拟仪器实现
现代雷达系统的信号设计
BFR340T






京公网安备 11010802033920号