ESP8266 MQTT连接onenet

1、ESP-01S硬件连接

注意EN要接到3.3V

2、ESP设置流程

Serial2_SendString("AT+RESTORE\r\n"); // 发送恢复出厂指令

ESP8266_SendCmdOK("AT\r\n", 2000)) // 发送AT并等待OK

ESP8266_DisableEcho(2000); // 发送ATE0关闭回显

ESP8266_SendCmdOK("AT+CWMODE=1\r\n", 2000); // 设置为Station模式

ESP8266_ConnectWiFi(WIFI_SSID, WIFI_PWD) 连接指定WiFi

MQTTUSERCFG配置 MQTT 用户参数,见第4节。

"AT+MQTTCONN=0,\"mqtts.heclouds.com\",1883,1\r\n" 第5节 连接服务器

订阅消息 见第6节

发布数据 见第7节

3、Token生成

使用OneNET Token 生成工具生成token,用于连接平台

工具说明https://iot.10086.cn/doc/aiot/fuse/detail/1487

点击生成后,下方文本框就会有生成的token文本

4、MQTT用户名定义MQTTUSERCFG

ESP连接wifi后 需要设置MQTT用户名/密码等,发送命令格式如下,token为上一步生成的token。

复制代码
#define MQTT_USER_CFG   "AT+MQTTUSERCFG=0,1,\"设备名称\",\"产品ID\",\"token\",0,0,\"\r\n"

向ESP发送以上字符串即可完成用户名等信息设定。

5、连接MQTT服务器

onenet地址为

复制代码
//Onenet 服务器地址
#define MQTT_CONN_CFG   "AT+MQTTCONN=0,\"mqtts.heclouds.com\",1883,1\r\n"

6、订阅消息

复制代码
// 订阅主题
// OneNET 设备命令下发主题格式:(接收云端控制指令)
// $sys/产品ID/设备名称/thing/property/post/reply
#define MQTT_SUB_REPLY  "\"$sys/tC4k024B72/STM32-01/thing/property/post/reply\",0\r\n"

#define MQTT_SUB_SET    "\"$sys/tC4k024B72/STM32-01/thing/property/set\",0\r\n"

// 发布主题(上传数据到平台)
// OneNET 属性上报主题格式:
// $sys/产品ID/设备名称/thing/property/post
#define MQTT_PUB_TOPIC  "$sys/tC4k024B72/STM32-01/thing/property/post"

7、发布数据到云平台

下一步就可以发布数据了,在发布之前需要在onenet平台定义产品的数据,比如温度数据。

定义数据

点击产品开发-》设置模型

添加自定义功能点,注意标识符这一项,在设备发送数据时要靠这个匹配数据,比如设备发送的json中有Temp这一项就对应温度这一数值

示例代码

相关推荐
新晨单片机设计21 分钟前
S018A-基于STM32单片机脉搏计(光电对管)【Proteus仿真+Keil程序+原理图】
stm32·单片机·嵌入式硬件·proteus
HRTOS21 分钟前
HRTOS Debug:8051实时操作系统资源状态监控与分析
单片机·嵌入式硬件·51单片机
崇山峻岭之间36 分钟前
HC32F460PETB的PH2的EMB_IN4
单片机
youcans_1 小时前
【嵌入式软件AI编程】12. Claude Code的基本操作
stm32·单片机·ai编程·嵌入式软件·claude code
SilicoCode1 小时前
正点原子HAL库与江协科技标准库关于中断的对比解析
单片机·嵌入式硬件
Brilliantwxx1 小时前
【STM32】 从HAL库源码深度解析I2C(源码解析+面试题)
开发语言·stm32·单片机·嵌入式硬件·架构
H_oRIZoN_2 小时前
Linux入门DAY44 ARM 入门 Day02|ARM 汇编指令、模式切换、栈操作、汇编 C 混合编程
linux·单片机·嵌入式硬件·arm·linux应用编程
老当益壮梁奶奶12 小时前
51单片机DS18B20温度传感器详解:单总线时序与C51驱动实现
笔记·stm32·单片机·嵌入式硬件·51单片机
Horn Still Sounds12 小时前
ARM嵌入式基础|内核、寄存器、架构、存储、汇编移位全面梳理
arm开发·单片机·嵌入式硬件·硬件架构
星栖与芯13 小时前
LiteOS-M 切换汇编逐行图解(2):指令·异常机制·全景表
stm32·单片机·嵌入式硬件·harmonyos·鸿蒙系统