#include <WiFi.h>
#include <WebServer.h>
const char* ssid = "Wokwi-GUEST";
const char* password = "";
WebServer server(80);
const int led1 = 5;
const int led2 = 18;
const int led3 = 19;
void handleRoot() {
String html = "<h1>Kontrol LED via Web (ESP32)</h1>";
html += "<a href=\"/led1/on\"><button>LED 1 ON</button></a> ";
html += "<a href=\"/led1/off\"><button>LED 1 OFF</button></a><br><br>";
html += "<a href=\"/led2/on\"><button>LED 2 ON</button></a> ";
html += "<a href=\"/led2/off\"><button>LED 2 OFF</button></a><br><br>";
html += "<a href=\"/led3/on\"><button>LED 3 ON</button></a> ";
html += "<a href=\"/led3/off\"><button>LED 3 OFF</button></a>";
server.send(200, "text/html", html);
}
void setup() {
Serial.begin(115200);
WiFi.begin(ssid, password);
Serial.print("Menghubungkan ke WiFi");
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println(" Terhubung!");
Serial.print("IP Address: ");
Serial.println(WiFi.localIP());
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
server.on("/", handleRoot);
server.on("/led1/on", []() {
digitalWrite(led1, HIGH);
server.sendHeader("Location", "/");
server.send(303);
});
server.on("/led1/off", []() {
digitalWrite(led1, LOW);
server.sendHeader("Location", "/");
server.send(303);
});
server.on("/led2/on", []() {
digitalWrite(led2, HIGH);
server.sendHeader("Location", "/");
server.send(303);
});
server.on("/led2/off", []() {
digitalWrite(led2, LOW);
server.sendHeader("Location", "/");
server.send(303);
});
server.on("/led3/on", []() {
digitalWrite(led3, HIGH);
server.sendHeader("Location", "/");
server.send(303);
});
server.on("/led3/off", []() {
digitalWrite(led3, LOW);
server.sendHeader("Location", "/");
server.send(303);
});
server.begin();
}
void loop() {
server.handleClient();
}