燒錄MQTT固件
購買的ESP8266一般沒帶MQTT固件,所以無法通過MQTT指令與云平臺通信,需要燒錄固件。
MQTT固件可以在安信可科技進(jìn)行下載。
交流qun:6_15061293。
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
下載完畢之后,選擇對應(yīng)模塊的型號。
接線方式如下所示。
選擇剛剛下載的固件,配置好對應(yīng)的串口,點(diǎn)擊下載即可。
下載成功如下所示。
若出現(xiàn)這種情況8-download data fail,則是flash大小不夠,需要更換nor flash。
創(chuàng)建阿里云產(chǎn)品
阿里云官網(wǎng):https://www.aliyun.com/
選擇物聯(lián)網(wǎng)平臺,開始創(chuàng)建產(chǎn)品。
選擇公共實(shí)例,點(diǎn)擊進(jìn)入。
創(chuàng)建產(chǎn)品。
這里我的基本配置如下所示。
添加設(shè)備。
這里可以輸入自己喜歡的設(shè)備名字,也可以點(diǎn)擊確認(rèn)自動生成。
生成設(shè)備之后,將溫濕度上報添加進(jìn)來。
添加標(biāo)準(zhǔn)功能。
添加所需功能。
添加完畢之后點(diǎn)擊上線。
AT指令接入阿里云
AT指令手冊:https://docs.espressif.com/projects/esp-at/zh_CN/release-v2.2.0.0_esp8266/AT_Command_Set/MQTT_AT_Commands.html
設(shè)置Wi-Fi模式
AT+CWMODE=1
連接路由器
例如WIFI名稱66,密碼:1234abcd,則輸入
AT+CWJAP="66","1234abcd"
可以通過查詢IP地址來查看是否連接上wifi。
AT+CIFSR
使能 SNTP 服務(wù)器,設(shè)置中國時區(qū) (UTC+08:00)
AT+CIPSNTPCFG=1,8,"ntp1.aliyun.com"
查看MQTT參數(shù),這里面包含MQTT三元組信息:clientld,username,password
設(shè)置登錄密碼
對應(yīng)的MQTT參數(shù)如下所示。
AT+MQTTUSERCFG=0,1,"NULL","4WpGE15ik3MbGt0lEiIj&a1ZCbJN0kQB","0ac7bb4bf8eb2b96ea8ced5760eb72b62238935a5ec42c22849fcee7fe13137d",0,0,""
配置 MQTT 用戶屬性
設(shè)置指令:
AT+MQTTUSERCFG=<LinkID>,<scheme>,<"client_id">,<"username">,<"password">,<cert_key_ID>,<CA_ID>,<"path">
對應(yīng)的MQTT參數(shù)如下所示。
注意:需要在每個逗號前面加上\
AT+MQTTCLIENTID=0,"a1ZCbJN0kQB.4WpGE15ik3MbGt0lEiIj|securemode=2\,signmethod=hmacsha256\,timestamp=1679562771636|"
連接 MQTT Broker
對應(yīng)的MQTT參數(shù)如下所示。
設(shè)置指令:
AT+MQTTCONN=0,"a1ZCbJN0kQB.iot-as-mqtt.cn-shanghai.aliyuncs.com",1883,1
此時可以查看設(shè)備,可以看到已經(jīng)是在線狀態(tài)。
訂閱
訂閱Topic是指在一個訂閱服務(wù)中,用戶可以選擇關(guān)注或訂閱感興趣的話題或主題。
通過訂閱Topic,用戶可以更加精準(zhǔn)地獲取自己的內(nèi)容,提高信息的質(zhì)量和效率。
發(fā)送AT指令,訂閱Topic
AT+MQTTSUB=0,"/a1ZCbJN0kQB/4WpGE15ik3MbGt0lEiIj/user/get",1
訂閱成功會在阿里云進(jìn)行顯示。
上報數(shù)據(jù)
這里定義了溫濕度的功能。
可以使用AT+MQTTPUBRAW發(fā)布 MQTT 消息
例如發(fā)送溫度32 濕度66
AT+MQTTPUB=0,"/sys/a1ZCbJN0kQB/4WpGE15ik3MbGt0lEiIj/thing/event/property/post","{params:{\"Temperature\":32}}",0,0
AT+MQTTPUB=0,"/sys/a1ZCbJN0kQB/4WpGE15ik3MbGt0lEiIj/thing/event/property/post","{params:{\"CurrentHumidity\":66}}",0,0
實(shí)際情況如下所示:
下發(fā)數(shù)據(jù)
下發(fā)數(shù)據(jù)可以按照如下操作進(jìn)行。
實(shí)際情況如下所示。
斷開連接
文章來源:http://www.zghlxwxcb.cn/news/detail-435776.html
使用下列指令可以斷開連接文章來源地址http://www.zghlxwxcb.cn/news/detail-435776.html
AT+MQTTCLEAN=0
到了這里,關(guān)于STM32驅(qū)動ESP8266連接阿里云(1)----使用AT指令連接阿里云的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!