官方文档:物联网开放平台
看本节内容之前先去看这个ESP8266-MQTT:
2026/3/13大约 20 分钟
官方文档:物联网开放平台
看本节内容之前先去看这个ESP8266-MQTT:
ESP8266实物:
接线如下:
| 指令 | 返回 | 用途 |
|---|---|---|
AT+UART=115200,8,1,0,0 |
OK | 设置波特率 |
AT |
OK | 测试 AT 指令是否可用 |
AT+RST |
OK 等初始化信息 | 重启 ESP8266 |
AT+GMR |
版本信息 | 查看固件版本 |
AT+CWMODE=1 |
OK | 设置 WiFi 模式(STA模式) ESP8266 可以作为客户端(STA)、热点(AP),或两者共存(AP+STA)。 0为关闭wifi,1为STA模式,2为AP模式,3为AP+STA模式 |
AT+CWJAP="名称","密码" |
WIFI CONNECTED WIFI GOT IP OK |
连接 WiFi |
AT+CWJAP? |
+CWJAP:"你的WiFi名称","xx:xx:xx:xx:xx:xx",channel,signal_strength | 查看连接状态(检查是否成功连接) |
AT+CIFSR |
+CIFSR:STAIP,"192.168.1.100" +CIFSR:STAMAC,"a4:e5:7c:26:1a:3f" OK |
获取分配的IP |
AT+CWQAP |
OK | 断开 WiFi 连接 |
先了解原理,再通过MQTTx进行进一步测试,最后在ESP8266上实现,按流程来遇到问题时可及时排查
AT+MQTTUSERCFG=0,1,"ESP8266Client","myname","password",0,0,""
不报错证明可用
报错的话说明固件不支持MQTT,请烧录如下固件:
后面所有系列全部基于该固件讲解的,实在不想使用如下固件,请不要看该视频
OLED用来显示调试信息
void uart_print(UART_HandleTypeDef *huart,char* format,...) {
char buf[128]={0};
va_list ap;
va_start(ap,format);
vsprintf(buf,format,ap);
va_end(ap);
HAL_UART_Transmit(huart,(uint8_t*)buf,strlen(buf),HAL_MAX_DELAY);
}