1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
| const int Broche_BP = 2;
const int Broche_LED = 4;
int Etat_BP = 0;
int Ordre_Tempo = 0;
int LED = 0;
unsigned long Temps_Actuel;
unsigned long Temps_Precedent;
unsigned long Tempo_Repos = 5000; // Temps de la temporisation apres fermeture porte
void setup() {
pinMode(Broche_BP, INPUT_PULLUP);
pinMode(Broche_LED, OUTPUT);
}
void loop() {
Temps_Actuel = millis();
//GESTION TEMPORISATION REPOS---------------------------------------------------
Etat_BP = digitalRead(Broche_BP);
if (Etat_BP == LOW) {
Temps_Precedent = Temps_Actuel;
Ordre_Tempo = 1;
}
if (Ordre_Tempo == 1) {
if ((Temps_Actuel - Temps_Precedent) < Tempo_Repos) {
LED = 1;
}
else {
LED = 0;
Ordre_Tempo = 0;
}
}
//FIN GESTION TEMPORISATION REPOS
//------------------------------------------------------------------------------
//GESTION ARRET / MARCHE LED
if (LED == 1 ) {
digitalWrite(Broche_LED, HIGH);
}
else {
digitalWrite(Broche_LED, LOW);
}
} |
Partager