#include <WiFi.h>
#include "ThingSpeak.h"
const char* ssid = "Wokwi-GUEST"; // Nom de votre réseau WiFi
const char* password = ""; // Mot de passe de votre réseau WiFi
const char* apiKey = "YZSCOCYBWQCCHCUR"; // Votre API Key ThingSpeak
const int myChannelNumber = 2316506; // Numéro de votre canal ThingSpeak
const int ledPin = 33; // Broche de la LED
const int buzzerPin = 5; // Broche du buzzer
float previousBrightness = 0; // Stocker la luminosité précédente
bool buzzerActive = false;
WiFiClient client;
void setup() {
pinMode(ledPin, OUTPUT);
pinMode(buzzerPin, OUTPUT);
digitalWrite(ledPin, LOW);
digitalWrite(buzzerPin, LOW);
Serial.begin(115200);
delay(10);
// Se connecter au réseau WiFi
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.println("Connecting to WiFi...");
}
Serial.println("Connected to WiFi");
ThingSpeak.begin(client); // Initialiser ThingSpeak
}
void loop() {
// Lire la valeur du champ ThingSpeak (par exemple, luminosité)
float field_value = ThingSpeak.readFloatField(myChannelNumber, 1, apiKey); // Lire le champ 1
// Contrôler la LED en fonction de la luminosité actuelle
if (field_value > 0) {
digitalWrite(ledPin, HIGH);
} else {
digitalWrite(ledPin, LOW);
}
// Comparer la luminosité actuelle avec la précédente
if (field_value > previousBrightness) {
// Luminosité augmentée, activer le buzzer
digitalWrite(buzzerPin, HIGH);
buzzerActive = true;
} else if (field_value < previousBrightness) {
// Luminosité diminuée, désactiver le buzzer
digitalWrite(buzzerPin, LOW);
buzzerActive = false;
}
// Mettre à jour la valeur précédente de la luminosité
previousBrightness = field_value;
}