ESP8266 在 rtt 中的使用(四)

2021-10-07 19:33:50 字數 1704 閱讀 5484

這一節講http 的get和post請求,首先在env工具中,配置http驅動選項。

這是get,get請求與post差不多,詳情參考相關api.

#include

/* 使用 http 協議與伺服器通訊需要包含此標頭檔案 */

#include

/* 使用bsd socket,需要包含socket.h標頭檔案 */

#include

#include

#include

#define get_header_bufsz 1024

//頭部大小

#define get_resp_bufsz 1024

//響應緩衝區大小

#define get_url_len_max 256

//**最大長度

#define get_uri ""

//獲取天氣的 api

void

weather()

/* 拼接 get ** */

rt_snprintf

(weather_url, get_url_len_max, get_uri)

;/* 建立會話並且設定響應的大小 */

session =

webclient_session_create

(get_header_bufsz);if

(session == rt_null)

/* 傳送 get 請求使用預設的頭部 */if(

(resp_status =

webclient_get

(session, weather_url))!=

200)

/* 分配用於存放接收資料的緩衝 */

buffer =

rt_calloc(1

, get_resp_bufsz);if

(buffer == rt_null)

content_length =

webclient_content_length_get

(session)

;rt_kprintf

(" content_length %d"

,content_length);if

(content_length <0)

}while(1

);}else

content_pos +

= bytes_read;

}while

(content_pos < content_length);}

/* 天氣資料解析 */

//weather_data_parse(buffer);

__exit:

/* 釋放**空間 */

if(weather_url != rt_null)

rt_free

(weather_url)

;/* 關閉會話 */

if(session != rt_null)

webclient_close

(session)

;/* 釋放緩衝區空間 */

if(buffer != rt_null)

rt_free

(buffer);}

intmain

(void

)

ESP8266 在 rtt 中的使用(一)

1.介紹esp8266基本情況,上圖為原理圖,採用串列埠at指令通訊,模組有3種執行方式,ap sta ap sta。具體指令請參考at指令集 2.我們接著講rtt的at元件,在rtt系統中,分為客戶端,服務端,這裡我們主要用到客戶端,就是來解析urc的。其中有時要用到除錯互動功能,輸入at cli...

esp8266使用步驟

參考 聯網 連線參考這裡 esp8266是wifi串列埠模組,功能簡單來講就是 從wifi接收到資料,串列埠輸出 從串列埠接收資料,wifi輸出資料。首先介紹esp8266三個模式 1 串列埠無線 wifi com ap 串列埠無線 wifi com ap 模式,模組作為無線 wifi 熱點,允許其...

ESP8266模組使用教程

esp8266是espressif 樂鑫資訊科技 推出的一款物聯網wifi物聯網模組,特點是 便宜 esp8266模組 串列埠轉wifi模組 特別注意一下,供電是3.3v,千萬別5v,5v 2分鐘晶元溫度就達到100度以上,樓主因此還被燙傷了,還好及時拔電,模組沒壞 買來模組接了電串列埠不開機?這裡...