Mise à jour : 10/02/19
Ce tutorial va vous permettre de contrôler une led via une page web avec le module Wifi ESP8266 programmer en langage Arduino.
Ce tutoriel utilise :
- Une carte Esp8266 ESP-12e
- L’IDE Arduino version 1.6.8
Carte ESP8266 -ESP-E12e
Le programme
- Remplacer dans ce sketch « SSID » et « PASSWORD » par le nom de votre réseau Wifi et votre mot de passe.
#include <ESP8266WiFi.h> const char* ssid = "SSID"; const char* password = "PASSWORD"; int ledPin = 16; WiFiServer server(80); void setup() { // initialisation de la communication série Serial.begin(115200); delay(100); // initialisation de la sortie pour la led pinMode(ledPin, OUTPUT); digitalWrite(ledPin, LOW); // Connexion wifi Serial.println(); Serial.print("Connecting to "); Serial.println(ssid); WiFi.begin(ssid, password); // connection en cours ... while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } // Wifi connecter Serial.println("WiFi connecter"); // Démmarrage du serveur. server.begin(); Serial.println("Serveur demarrer !"); // Affichage de l'adresse IP Serial.print("Utiliser cette adresse URL pour la connexion :"); Serial.print("http://"); Serial.print(WiFi.localIP()); Serial.println("/"); } void loop() { WiFiClient client; // Vérification si le client est connecter. client = server.available(); if (!client) { return; } // Attendre si le client envoie des données ... Serial.println("nouveau 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); // allumer la led value = HIGH; } if (request.indexOf("/LED=OFF") != -1) { digitalWrite(ledPin, LOW); // éteindre la led value = LOW; } // Réponse client.println("HTTP/1.1 200 OK"); client.println("Content-Type: text/html"); client.println(""); client.println("<!DOCTYPE HTML>"); client.println("<html>"); client.print("Etat de la led : "); if(value == HIGH) { client.print("On"); } else { client.print("Off"); } client.println("<br><br>"); client.println("<a href=\"/LED=ON\"\"><button>Allumer </button></a>"); client.println("<a href=\"/LED=OFF\"\"><button>Eteindre </button></a><br />"); client.println("</html>"); delay(1); Serial.println("Client deconnecter"); Serial.println(""); }
Test du contrôle de la led
- Contrôle de la connexion via le moniteur série :
- Pour tester le contrôle de la led, connectez vous à l’adresse suivante 192.168.1.11 avec votre navigateur :
Le schéma du câblage de la led :
- led rouge de 5 mm
- résistance de 100 ohm
Fin du tutoriel.