#include <WiFi.h>
// Configuración de la red WiFi
const char* ssid = "Wokwi-GUEST";
const char* password = "";
// Puerto en el que escuchará el servidor
const int port = 80;
// Pin al que está conectado el LED
const int ledPin = 2; // Puedes cambiar esto según la configuración de tu placa
// Crea una instancia del servidor
WiFiServer server(port);
void setup() {
Serial.begin(115200);
// Inicializa el pin del LED
pinMode(ledPin, OUTPUT);
// Conéctate a la red WiFi
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.println("Conectándose a la red WiFi...");
}
Serial.println("Conectado a la red WiFi con ip: ");
Serial.println(WiFi.localIP());
// Inicializa el servidor
server.begin();
Serial.println("Servidor iniciado");
}
void loop() {
// Verifica si hay clientes conectados
WiFiClient client = server.available();
if (client) {
Serial.println("Nuevo cliente conectado");
// Lee la solicitud del cliente
String request = client.readStringUntil('\r');
Serial.println("Solicitud del cliente: " + request);
// Enciende o apaga el LED según la solicitud
if (request.indexOf("/encender") != -1) {
digitalWrite(ledPin, HIGH);
Serial.println("LED encendido");
} else if (request.indexOf("/apagar") != -1) {
digitalWrite(ledPin, LOW);
Serial.println("LED apagado");
}
// Envía la respuesta al cliente
client.println("HTTP/1.1 200 OK");
client.println("Content-type:text/html");
client.println("Connection: close");
client.println();
// Envía la página web al cliente
client.println("<html><body><h1>Control de LED</h1>");
client.println("<p><a href='/encender'>Encender LED</a></p>");
client.println("<p><a href='/apagar'>Apagar LED</a></p>");
client.println("</body></html>");
// Cierra la conexión
client.stop();
Serial.println("Cliente desconectado");
}
}