文章主要是記錄新學到的知識,哪裏有不對的可以在底下評論哈
這裏需要的資源我都上傳了:燒寫軟件、所需固件、串口助手、AT指令集、網絡調試助手
沒有積分的話也可以免費給你的
文章內容
-
主要是使用ESP8266通過AT指令獲取天氣狀況
-
心知天氣:我註冊的是免費用戶,當然還有付費用戶,免費用戶可以調用國內 370 個主要城市天氣實況,包括天氣現象文字、代碼和氣溫 3 項數據未來 3 天天氣預報,包括白天天氣現象文字及代碼、晚間天氣現象文字及代碼、當天最高溫度和最低溫度、風向風速6 項基本類生活指數,包括穿衣、紫外線強度、洗車、旅遊、感冒、運動指數。但是每分鐘只能獲取20條
硬件準備
準備一個ESP8266,準備正點原子的串口調試助手(因爲這個我感覺挺好用的)
1.AT固件燒寫(已燒寫的可以忽略此過程)
- 具體過程可以參考我的另一篇博客
- 這裏的固件就只有一個,地址爲0x00000,選擇波特率爲115200,這裏我的8266FLASH是32Mbit
- 操作完成點擊START開始燒錄
2.註冊心知天氣
https://www.seniverse.com 註冊完成後可以得到自己的私鑰
3.AT指令控制8266
AT默認波特率爲115200
- 首先測試AT(測試 AT 啓動):正常啓動就會響應OK
- 設置8266連接模式
AT+CWMODE_DEF=3(1或者3都行)
1. station 模式 (將8266連接至手機或者是路由器)
2.softAP 模式 (將8266設置爲熱點,手機可以連接)
3.softAP + station 模式(兩種模式兼容)
- 將8266連接至路由器或者是手機熱點
AT+CWJAP_DEF="WIFI名稱","密碼"
-------------
-----------
5. 開啓透傳模式
AT+CIPMODE=1 設置成功則返回OK
6. 發送數據
AT+CIPSEND
------------
7. 向網站提出請求
GET https://api.seniverse.com/v3/weather/now.json?key=你自己的私鑰&location=xian&language=en&unit=c
這裏的location可以改爲自己的城市(我的是西安)
語言language使用英語(en)
- 多去看看心知天氣官網的文檔
8.網站返回數據
到這裏就結束了,接下來就是使用STM32獲取這個數據並且解析出來
這個我準備在我下一篇博客中發出來