ESP32是一款功能強(qiáng)大的微控制器,它具有Wi-Fi和藍(lán)牙的雙重支持。在這里,我們將介紹如何使用ESP32通過(guò)JSON進(jìn)行通信。
#include#include #include const char* ssid = "YourSSID"; const char* password = "YourPassword"; void setup() { Serial.begin(115200); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(1000); } } void loop() { String url = "http://example.com/api/data"; HTTPClient http; http.begin(url); int httpCode = http.GET(); if (httpCode == HTTP_CODE_OK) { String payload = http.getString(); StaticJsonDocument<200>doc; DeserializationError error = deserializeJson(doc, payload); if (error) { Serial.println("JSON parsing failed"); return; } Serial.println(doc["key"]); } http.end(); delay(5000); }
這是一個(gè)簡(jiǎn)單的ESP32代碼示例,使用JSON對(duì)遠(yuǎn)程API進(jìn)行通信。我們首先需要包含必要的庫(kù)文件 - WiFi.h,HTTPClient.h和ArduinoJson.h。接下來(lái),我們需要使用WiFi.h庫(kù)連接到Wi-Fi網(wǎng)絡(luò),并使用HTTPClient.h庫(kù)連接到遠(yuǎn)程API。一旦我們進(jìn)行了這個(gè)連接,我們可以使用HTTPClient.h庫(kù)中的GET()函數(shù)從API獲取數(shù)據(jù)。
一旦我們獲取了從API返回的數(shù)據(jù),我們可以在串口監(jiān)視器中查看輸出。但是,這并不適合我們的需要。在這里,我們需要使用ArduinoJson.h庫(kù)進(jìn)行反序列化和JSON解析。通過(guò)將JSON對(duì)象轉(zhuǎn)換為文檔,我們可以訪(fǎng)問(wèn)其中的任何值,并在ESP32上進(jìn)行操作。
這只是ESP32使用JSON進(jìn)行通信的快速入門(mén)。您可以根據(jù)需要進(jìn)行修改和擴(kuò)展。ESP32是一個(gè)強(qiáng)大的工具,可以學(xué)習(xí)和利用的東西很多。