Je viens d'essayé ce code tout simple et le relais s'éteint bien quand le débitmètre arrive à 10 impulsions.
Code:#define relais_EV 13 //le relais de l'électrovanne est connecté à la broche 3 de la carte Adruino const int debitmetre = 3; //le débit mètre est connecté à la broche 2 de la carte Arduino int etat_debitmetre; //variable qui enregistre l'état du débit mètre int Nb_impulsion; //variable qui enregistre le nombre d'impulsions du débitmètre int memoire_debitmetre = HIGH; //état relâché par défaut void setup() { pinMode(relais_EV, OUTPUT); //le relais de l'électrovanne est une sortie digitalWrite(relais_EV, HIGH); //on initialise le relais de l'électrovanne comme "éteint" pinMode(debitmetre, INPUT); //le débit mètre est une entrée Nb_impulsion = 0; } void loop() { etat_debitmetre = digitalRead(debitmetre); if((etat_debitmetre != memoire_debitmetre) && (etat_debitmetre == HIGH)) // Si le bouton a un état différent de celui { // enregistré ET que cet état est "appuyé" Nb_impulsion++; // Alors j'incrémente la varible de +1 } memoire_debitmetre = etat_debitmetre; // on enregistre l'état du bouton pour le tour suivant if(Nb_impulsion >= 100) // Si le nombre d'impulsions est supérieur ou égale à 10 { digitalWrite(relais_EV, LOW); // Alors le relais s'éteint } }
-----