Arduino D1 通过 Wi-Fi 控制 LED
硬件连接
- 将 LED 的正极(长脚)连接到 Arduino D1 的 D1 引脚。
- 将 LED 的负极(短脚)通过一个电阻(例如 220 欧姆)连接到 Arduino D1 的 GND 引脚。
安装必要的库
- 在 Arduino IDE 中,安装
ESPAsyncWebServer
和ESPAsyncTCP
库。
代码示例
以下是一个简单的示例代码,用于通过 Wi-Fi 控制 LED 的亮灭:
#include <ESP8266WiFi.h>
#include <ESPAsyncWebServer.h>
#include <ESPAsyncTCP.h>
const char* ssid = "你的WiFi名称";
const char* password = "你的WiFi密码";
AsyncWebServer server(80);
const int ledPin = D1; // D1 引脚对应的 GPIO 编号
void setup() {
Serial.begin(115200);
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, LOW);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.println("连接中...");
}
Serial.println("WiFi 已连接");
server.on("/", HTTP_GET, [](AsyncWebServerRequest *request){
request->send(200, "text/plain; charset=utf-8", "LED 控制");
});
server.on("/led/on", HTTP_GET, [](AsyncWebServerRequest *request){
digitalWrite(ledPin, HIGH);
request->send(200, "text/plain; charset=utf-8", "LED 已打开");
});
server.on("/led/off", HTTP_GET, [](AsyncWebServerRequest *request){
digitalWrite(ledPin, LOW);
request->send(200, "text/plain; charset=utf-8", "LED 已关闭");
});
server.begin();
}
void loop() {
}
控制 LED
打开浏览器,输入 http://<Arduino D1的IP地址>/led/on
来打开 LED。
输入 http://<Arduino D1的IP地址>/led/off
来关闭 LED。