//https://www.arduino.cc/reference/en/libraries/wifi/
#include <WiFi.h>
#include <WiFiClient.h>
#include <WiFiAP.h>
/***************************************************************
Definiciones
***************************************************************/
#define LED_BUILTIN 2 //Led interno de la placa ESP32
const char *ssid = "ESP32_Julio_AP";
const char *password = "12345678";
/***************************************************************
Variables
***************************************************************/
WiFiServer server(80);//Objeto servidor
/***************************************************************
Funcion de configuración Setup
***************************************************************/
void setup() {
Serial.begin(115200);
pinMode(LED_BUILTIN, OUTPUT);
Serial.begin(115200);
/***************************************************************
Configuración WiFi Modo Acces Point
***************************************************************/
Serial.println();
Serial.println("Configurando Acces Point...");
if (!WiFi.softAP(ssid,password)) {
log_e("Error de software fallo Acces Point.");
while (true);
}
IPAddress Mi_IP = WiFi.softAPIP();
Serial.print("Direccion IP del Acces Point: ");
Serial.println(Mi_IP);
server.begin();
Serial.println("Servidor Inicializado");
}
/***************************************************************
Ciclo Principal Loop
***************************************************************/
void loop() {
WiFiClient client = server.available();
if (client) {
Serial.println("Nuevo Cliente ");
String currentLine = "";
while (client.connected()) {
if (client.available()) {
char c = client.read();
Serial.write(c);
if (c == '\n') {
if (currentLine.length() == 0) {
client.println("HTTP/1.1 200 OK");
client.println("Content-type:text/html");//Modo texto
client.println();
client.print("Click <a href=\"/H\">aqui</a> para ENCENDER el LED.<br>");
client.print("Click <a href=\"/L\">aqui</a> para APAGAR el LED.<br>");
client.println();
break;
} else {
currentLine = "";
}
} else if (c != '\r') {
currentLine += c;
}
if (currentLine.endsWith("GET /H")) {
digitalWrite(LED_BUILTIN, HIGH);
}
if (currentLine.endsWith("GET /L")) {
digitalWrite(LED_BUILTIN, LOW);
}
}
}
client.stop();
Serial.println("Cliente Desconectado.");
}
}