A. ESP8266 STM32 HTTP json透傳實驗
本文將介紹ESP8266與STM32進行HTTP JSON透傳實驗的詳細步驟。首先,通過建立HTTP虛擬測試樁,利用SoapUI模擬遠端HTTP伺服器進行測試。
接著,ESP8266需進入透傳配置。具體步驟如下:
設置WIFI模式:使用AT+CWMODE=3命令,將模塊設置為ap+sta共存模式。
重啟模塊:執行AT+RST命令,重啟ESP8266。
重啟後,可能會出現亂碼現象,這是由於模塊上電時波特率偏高,隨後自動調整至115200。
連接路由器:使用AT+CWJAP命令,輸入路由器的SSID和密碼。
查詢設備IP:執行AT+CIFSR命令,獲取設備的IP地址。
然後,ESP8266需連接遠端伺服器(通過TCP協議)。具體步驟如下:
使用AT+CIPSTART命令,傳入伺服器IP和埠號。
開啟ESP8266透傳模式:執行AT+CIPMODE=1命令。
透傳開始時,通過AT+CIPSEND命令確保串口輸入的字元能成功傳送到伺服器端。
接著,將數據通過HTTP形式發送至遠端伺服器。數據格式以JSON形式為主,URL構造為伺服器IP和埠號,如:192.168.12.68:8999/test/...。同時,需設置正確的Host、Content-Type和Content-Length欄位。
HTTP伺服器接收到JSON數據後,會返回200 OK字元串,表示數據上傳成功。整個數據包的協議格式包含devicetype、time、idno、type等關鍵信息。
封裝頭部和數據部分後,實現將整個數據上傳至伺服器的函數。最後,調用API執行程序,確保串口接收到伺服器的回復。
完成實驗後,可參考完整源碼獲取。關注公眾號「嵌入式雲IOT技術圈」,發送關鍵詞「ESP8266」即可獲取。
B. 如何利用8266進行數據透傳
很蔽洞多時候在使用8266時都不知道到底要怎樣才能進行數據的透傳下面我將使用8266做透傳的配置命令給大家一個參考希望能有所幫助
8266WiFi模塊配置操作如下:
①AT+CWMODE=3設置為AP+STA模式共存
②AT+CWJAP="xxxx","xxxxxxxxx" 連接路由器 (家庭路由器名稱+密碼)
③AT+CIPMUX=0設置為單鏈接模式
④AT+CIPMODE=1開啟透傳模式
⑤AT+SAVETRANSLINK=1,"192.168.1.100",9999,"TCP"保存連接的遠端伺服器IP和埠號 (注意次出的IP地址為你所開啟的伺服器的宏局枯IP和埠號,可以利用網路臘搏助手進行開啟TCP sever即可)。
⑥AT+CIPSTART="TCP","192.168.1.100",9999 此語句為執行操作
⑦AT+CIPSEND 進入透傳
好啦經過上述的操作以後8266就進入了TCP透傳模式。便可通過串口直接發送想發送的數據了。