【发布时间】:2020-10-30 14:24:55
【问题描述】:
我正在尝试将使用 UART 传输从嵌入式平台获得的一些数据发布到使用 ESP32 的 Web 服务器上。这是我正在使用的代码,我正在使用 Arduino IDE。我对 HTML 不太熟悉,并且已经看到了几个使用 HTML 通过发送请求来更新服务器值的示例。
#include <WiFi.h>
#include "ESPAsyncWebServer.h"
AsyncWebServer server1(81);
const char* ssid ="mywifi";
const char* password ="mywifipass";
char c;
String readuart() {
if (Serial.available() > 0) {
c = Serial.read();}
return String(c);
}
void setup() {
Serial.begin(115200);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.println("Connecting to WiFi..");
}
Serial.println("Connected to the WiFi network");
Serial.println(WiFi.localIP());
server1.on("/test_data", HTTP_GET, [](AsyncWebServerRequest *request){
request->send(200, "text/plain", readuart().c_str());
});
server1.begin();
delay(100);
}
void loop() {
}
以下部分代码是发布我得到的第一个字符串,但它停在那里。
server1.on("/test_data", HTTP_GET, [](AsyncWebServerRequest *request){
request->send(200, "text/plain", readuart().c_str());
});
我想定期更新这个字符串。我该如何做到这一点?任何帮助将不胜感激。
【问题讨论】:
-
“想要定期更新字符串”是什么意思?你的意思是你想偶尔读一下UART?或者您希望客户端(可能是 Web 浏览器或某些程序)向服务器请求新值?或者您希望服务器偶尔联系客户端并更新值?
-
是的,我想偶尔读取 UART,并更新浏览器上的值。
标签: html webserver wifi esp32 arduino-esp8266