本文將介紹stm32如何通過WiFi來連接阿里云,上傳數據和接收指令。要先與阿里云建立TCP連接,然后再通過MQTT協議交互。
大體流程:1、在阿里云網頁上創建產品和設備;2、stm32通過WiFi連接云平臺;3、MQTT連接阿里云;4、MQTT上傳數據及接收指令并處理。
本文將以簡單示例進行演示:上報溫度、濕度、LED狀態,接收LED指令并控制開關;
硬件:stm32f103c8t6、ESP8266 WiFi模塊、DHT11溫濕度模塊、LED等;
一、創建產品和設備
1.1注冊并登陸阿里云
若未注冊阿里云賬號,則需要先注冊并登陸。
阿里云官網:阿里云-計算,為了無法計算的價值
1.2創建產品
登陸后,在阿里云首頁,進入<控制臺>(右上角)。
在控制臺頁面的左上角,依次選擇<產品與服務>、<物聯網>、<物聯網平臺>:
尚未開通需要先開通:
點擊開通:
很遺憾,阿里云物聯網平臺已不能新購了,所以新用戶也無法開通使用了。
只用能已開通的老賬號來演示了。
創建產品如下:
添加功能定義:
到此,產品已創建完成。
注:需記下標識符和數據類型,后續上傳或接收數據時用到。
1.3創建設備
創建產品后,還需添加設備,點出添加產品:
彈框輸入信息:
添加成功:
在設備列表中會顯示剛創建的設備:
二、全程快速適配
在提供的例程中,通過修改WiFi配置、阿里云產品設備信息可快速連接并使用。
2.1查看阿里云參數
在設備中,點擊剛創建的設備,進入設備詳細信息,可查看到:
需要的就是ProductKey、DeviceName、DeviceSecret這幾個參數。
2.2配置參數修改
打開stm32工程,在config.h中分別配置wifi賬號和密碼,阿里云參數等,如下紅框選中部分:
其中,AP熱點即WiFi賬號密碼,第2項阿里云的產品和設備參數,設備屬性是創建產品時添加的屬性。
2.3連接云平臺和交互
2.3.1連接云平臺
燒錄程序運行后,LOG如下:
在阿里云網頁上也可見設備已上線:
2.4上傳數據
點進設備詳情的<物模型數據>,可見上傳的數據:
2.5 下屬指令
點擊<在線調試> ,設置LED狀態,點擊設置:
LOG可見,led設置的狀態為1,即點亮:
在開發板上也可見LED被打開:
到此,上傳和下發都調通了。
例程在如下鏈接:
獲取資料/指導答疑/技術交流/選題/幫助,請點鏈接:
https://gitee.com/zengzhaorong/share_contact/blob/master/stm32.txt
?