一、硬件连接
wifi模块ESP8266-01S接线:
TXD接RXD(USB)
RXD接TXD (USB)
VCC接3.3V
GND=GPIO0=接地
二、调试工具
三、烧录MQTT固件
购买的ESP8266一般没带MQTT固件,所以无法通过MQTT指令与云平台通信,需要烧录固件。 MQTT固件可以在安信可科技进行下载。附:AT固件以及烧录软件地址。
坑1:点击开始后,如果显示等待上电,然后一直没动静。
解决方法:
如果没有自动下载可以把RST引脚接GND再断开。
1.下载固件时,GPIO0引脚需要接地(接地为下载状态;悬空为工作状态)
2.下载固件时,RST引脚需要悬空,当提示等待上电同步时接地并迅速悬空,复位模块。
坑2:遇到下面的问题,则需要更换固件库,如更换下面固件号为1471的固件。
四、使用串口助手发送AT指令连接物联网平台
-
AT
//返回 OK -
AT+RST
//复位 -
AT+RESTORE
//恢复出厂设置 -
AT+CWMODE=1
//设置模式,可连接wifi热点 -
AT+CWJAP="WIFI名字","WIFI密码"
//连接热点
例如:AT+CWJAP="qjl","11111111"
坑3:使用手机开热点!!wifi名字最好为英文!!频率为2.4G!如果是苹果手机,在个人热点处打开–最大兼容性。
-
AT+CWJAP?
//检测是否连接上热点 -
AT+CIPSNTPCFG=1,8,"ntp1.aliyun.com"
//连接阿里云的网站 -
//配置MQTT
(1)设置用户名、密码
使用指令:AT+MQTTUSERCFG=0,1,"NULL",“下图的用户名",“下图的密码”,0,0,""
例如:AT+MQTTUSERCFG=0,1,"NULL","LED1&a1n2p8YJOux","2f14f1e99372c0b47cc475804da435ddd2330bbde9dec9783a63f88b1c30797b",0,0,""
(2) 设置clientld
使用指令:AT+MQTTCLIENTID=0,"下图的clientld"
例如:AT+MQTTCLIENTID=0,"a1n2p8YJOux.LED1|securemode=2\,signmethod=hmacsha256\,timestamp=1709691140893|"
-
//设置好信息后,连接MQTT。
使用指令:AT+MQTTCONN=0,"下图的mqttHostUrl",1883,1
例如:AT+MQTTCONN=0,"a1n2p8YJOux.iot-as-mqtt.cn-shanghai.aliyuncs.com",1883,1
坑4:总显示连接失败。
解决:看一下之前的手机热点是不是长时间没连接给自动关闭了,我当时就是这个地方出问题,所以才一直显示ERROR。
//连接成功后,发现物联网平台设备在线。
- 使用相应的Topic进行通信。
(1)订阅内容。
AT+MQTTSUB=0,"/sys/a1n2p8YJOux/LED1/thing/service/property/set",1
●测试:
使用物联网平台发布调试。
串口助手接收到的内容:
(2)发布内容,更改物联网平台数据,使用相应的Topic以及需要修改数据的参数名称。
AT+MQTTPUB=0,"/sys/a1n2p8YJOux/LED1/thing/event/property/post","{\"params\":{\"learningTime\":33}}",0,0
七、其他补充(此内容与上述内容无关):
使用手机连接ESP8266,使用手机软件进行通信。
1.连接
测试AT----复位-----设置多链接模式------AP+STA模式-----设置端口号8888(192.168.4.1/8888)
这样设置即可连接。
2.WiFi向手机发送信息