ESP8266通過AT獲取天氣

	文章主要是記錄新學到的知識,哪裏有不對的可以在底下評論哈

這裏需要的資源我都上傳了:燒寫軟件、所需固件、串口助手、AT指令集、網絡調試助手
沒有積分的話也可以免費給你的

文章內容

  • 主要是使用ESP8266通過AT指令獲取天氣狀況

  • 心知天氣:我註冊的是免費用戶,當然還有付費用戶,免費用戶可以調用國內 370 個主要城市天氣實況,包括天氣現象文字、代碼和氣溫 3 項數據未來 3 天天氣預報,包括白天天氣現象文字及代碼、晚間天氣現象文字及代碼、當天最高溫度和最低溫度、風向風速6 項基本類生活指數,包括穿衣、紫外線強度、洗車、旅遊、感冒、運動指數。但是每分鐘只能獲取20條

硬件準備

	準備一個ESP8266,準備正點原子的串口調試助手(因爲這個我感覺挺好用的)

1.AT固件燒寫(已燒寫的可以忽略此過程)

  1. 具體過程可以參考我的另一篇博客
  2. 這裏的固件就只有一個,地址爲0x00000,選擇波特率爲115200,這裏我的8266FLASH是32Mbit
    在這裏插入圖片描述
  3. 操作完成點擊START開始燒錄

2.註冊心知天氣

				https://www.seniverse.com  註冊完成後可以得到自己的私鑰

在這裏插入圖片描述

3.AT指令控制8266

		AT默認波特率爲115200
  1. 首先測試AT(測試 AT 啓動):正常啓動就會響應OK
  2. 設置8266連接模式

		 AT+CWMODE_DEF=3(1或者3都行)

	 	1. station 模式 (將8266連接至手機或者是路由器)
	 	2.softAP 模式 (將8266設置爲熱點,手機可以連接)
	 	3.softAP + station 模式(兩種模式兼容)
  1. 將8266連接至路由器或者是手機熱點

		AT+CWJAP_DEF="WIFI名稱","密碼"

-------------在這裏插入圖片描述

  1. 和心知天氣建立TCP連接

       AT+CIPSTART="TCP","api.seniverse.com",80
    

----------- 在這裏插入圖片描述
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獲取這個數據並且解析出來
		這個我準備在我下一篇博客中發出來
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章