V1 after team test

This commit is contained in:
lucas
2024-08-02 00:08:12 +02:00
parent 496a68d631
commit 05139b0b43
8 changed files with 269 additions and 74 deletions

View File

@@ -2,11 +2,11 @@
#include <ESP8266WebServer.h>
// Remplacez par les informations de votre réseau WiFi
const char* ssid = "Le chateau de Chantenay";
const char* password = "crevette4ever";
const char* ssid = "Refugees Welcome";
const char* password = "calais62";
// Adresse du serveur HTTP sur le PC
const char* host = "192.168.1.62"; // Remplacez par l'adresse IP de votre PC
const char* host = "192.168.234.214"; // Remplacez par l'adresse IP de votre PC
const int port = 5000;
const int buttonPin = D7; // Définir le pin du bouton
@@ -14,12 +14,27 @@ bool lastButtonState = HIGH; // État précédent du bouton
unsigned long lastDebounceTime = 0; // Dernier temps de changement d'état
unsigned long debounceDelay = 50; // Délai de débounce (en millisecondes)
const int ledPin = D5;
unsigned long lastBlinkTime = 0; // Dernier temps de clignotement
const unsigned long blinkInterval = 500; // Intervalle de clignotement (en millisecondes)
// Énumération pour les états de la LED
enum LEDState {
OFF,
ON,
BLINKING
};
LEDState ledState = OFF; // État initial de la LED
ESP8266WebServer server(5000); // Créer un serveur HTTP sur le port 80
void setup() {
Serial.begin(115200);
delay(10);
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT_PULLUP);
digitalWrite(ledPin, LOW);
WiFi.begin(ssid, password);
Serial.print("Connexion à ");
Serial.print(ssid);
@@ -28,12 +43,59 @@ void setup() {
Serial.print(".");
}
Serial.println(" connectée");
server.on("/blink", []() {
// Cette fonction sera appelée lorsque le serveur reçoit une requête sur /update
Serial.println("Requête reçue sur /play");
// Par exemple, vous pouvez allumer la LED si la requête le demande
ledState = BLINKING; // Allumer la LED
server.send(200, "text/plain", "LED blink"); // Envoyer une réponse
});
// Définir le gestionnaire pour la requête entrante
server.on("/on", []() {
// Cette fonction sera appelée lorsque le serveur reçoit une requête sur /update
Serial.println("Requête reçue sur /win");
// Par exemple, vous pouvez allumer la LED si la requête le demande
ledState = ON; // Allumer la LED
server.send(200, "text/plain", "LED high"); // Envoyer une réponse
});
server.on("/off", []() {
// Cette fonction sera appelée lorsque le serveur reçoit une requête sur /update
Serial.println("Requête reçue sur /wait");
// Par exemple, vous pouvez allumer la LED si la requête le demande
ledState = OFF; // Allumer la LED
server.send(200, "text/plain", "LED low"); // Envoyer une réponse
});
server.begin(); // Démarrer le serveur
}
void loop() {
int buttonState = digitalRead(buttonPin); // Lire l'état du bouton
// rer les requêtes entrantes
server.handleClient();
// Vérifier le débounce
// LED management
unsigned long currentTime = millis();
// Logique de clignotement en fonction de l'état
if (ledState == BLINKING) {
if (currentTime - lastBlinkTime >= blinkInterval) {
lastBlinkTime = currentTime;
digitalWrite(ledPin, !digitalRead(ledPin)); // Inverser l'état de la LED
}
} else if (ledState == ON) {
digitalWrite(ledPin, HIGH); // LED allumée
} else {
digitalWrite(ledPin, LOW); // LED éteinte
}
int buttonState = digitalRead(buttonPin); // Lire l'état du bouton
// Débounce
if (buttonState != lastButtonState) {
lastDebounceTime = millis(); // Réinitialiser le temps de débounce
}
@@ -45,7 +107,7 @@ void loop() {
Serial.println("Bouton pressé! Envoi de la requête...");
WiFiClient client;
if (client.connect(host, port)) {
client.print(String("GET /execute?box_id=1 HTTP/1.1\r\n") +
client.print(String("GET /execute HTTP/1.1\r\n") +
"Host: " + host + "\r\n" +
"Connection: close\r\n\r\n");