// si le capteur KY-026 détecte une flamme, // ce programme allume la LED intégrée sur le Arduino sur la broche 13 // et envoie vers le port série la température de la flamme détectée // , sinon il éteint la broche 13 et n'envoie rien // on définit la broche correspondant à la LED intégrée sur le Arduino int led = 13; // On définit la broche numérique que l'on va utiliser // dans cet exemple, on connectera la broche D0 du capteur // à la broche numérique 2 du Arduino int digitalPin = 2; // On définit la broche analogique que l'on va utiliser // dans cet exemple, on connectera la broche A0 du capteur // à la broche analogique A0 du Arduino int analogPin = A0; // Stocke le booléen lu (soit vrai ou HIGH, soit faux ou LOW) // Si HIGH alors on a une flamme, sinon pas de flamme int digitalVal; // Variable qui contient la température détectée de la flamme int analogVal; // Méthode d'initialisation void setup() { // On indique que la broche 13 du Arduino sera en mode écriture (on se prépare à modifier son état) pinMode(led, OUTPUT); // La broche numérique 2 du Arduino sera en mode lecture de la valeur reçue pinMode(digitalPin, INPUT); // On initialise la communication sur le port série // pour pouvoir transférer le résultat Serial.begin(9600); } // Déroulement en boucle (loop) du programme void loop() { // On lit la valeur booléenne envoyé par le détecteur sur la broche numérique 2 digitalVal = digitalRead(digitalPin); // Si la broche reçoit HIGH (vrai) if(digitalVal == HIGH) // if flame is detected { // alors une flamme est détectée et on allume la LED digitalWrite(led, HIGH); } else { // Sinon on a reçu LOW, donc aucune flamme n'est détectée et on éteint la LED digitalWrite(led, LOW); } // On lit la valeur envoyée par le capteur sur la broche analogique A0 analogVal = analogRead(analogPin); // On envoie la température détectée par le capteur et reçu sur la broche A0 du Arduino vers le port série Serial.println(analogVal); // On attend 100 millisecondes et on recommence depuis le début delay(100); }