• Post category:Wemos D1 mini ESP8266
  • Commentaires de la publication :0 commentaire
  • Dernière modification de la publication :mars 12, 2022
  • Temps de lecture :5 min de lecture

Piloter une LED avec Wemos D1 mini ESP8266 grâce à une paje Web *

 

 

    Prérequis :

Matériel :

  • 1 x Carte Wemos D1 mini ESP8266
  • 1 x Résistance 220 Ω
  • 1 x Led
  • Fils de connexion
  • 1 x Breadboard

Version IDE :

Bibliothèque :

  • ESP8266WiFi.h

 

 

Vidéo de démonstration :

 

Schéma de câblage :

 

Code :

#include <ESP8266WiFi.h>

/*Vous devez modifier les deux variables suivantes avec vos informations d'identification réseau*/
const char* ssid = "Freebox-blablabla"; // Nom de votre réseau
const char* password = "votre mdp wifi"; //Mot de pass de votre wifi

int ledPin = D5;
WiFiServer server(80);

void setup() {
Serial.begin(115200);
delay(10);


pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, LOW);

//connection à votre réseau wi-fi local
WiFi.begin(ssid, password);

//vérifie que le wi-fi est connecté au réseau wi-fi
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFi connected..!");
Serial.print("Got IP: "); Serial.println(WiFi.localIP());

server.begin();
Serial.println("HTTP server started");

}

void loop() {
// On vérifie si un client s'est connecté
WiFiClient client = server.available();
if (!client) {
return;
}

// Attend que le client envoie des données
Serial.println("new client");
while(!client.available()){
delay(1);
}

String request = client.readStringUntil('\r');
Serial.println(request);
client.flush();

int value = LOW;
if (request.indexOf("/LED=ON") != -1) {
digitalWrite(ledPin, HIGH);
value = HIGH;
}
if (request.indexOf("/LED=OFF") != -1){
digitalWrite(ledPin, LOW);
value = LOW;
}

client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println(""); // do not forget this one
client.println("<!DOCTYPE HTML>");
client.println("<html>");
client.println("<center>");
client.print("<h3>La broche de la LED est maintenant: </h3>");

if(value == HIGH) {
client.print("<font color='green'>On</font>");
} else {
client.print("<font color='red'>Off</font>");
}
client.println("<br><br>");

client.println("<table><tr><td>");
client.println("<form action=\"/LED=ON\">");
client.println("<button type=\"submit\">ON</button>");
client.println("</form>");
client.println("</td><td>");
client.println("<form action=\"/LED=OFF\">");
client.println("<button type=\"submit\">OFF</button>");
client.println("</form>");
client.println("</td></tr></table>");
client.println("<br><br>");
client.println("<h1><font='red'>www.robdomo.com</font></h1>");
client.println("</center>");
client.println("</html>");


delay(1);
Serial.println("Client disconnected");
Serial.println("");

}

 


 

Laisser un commentaire