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 62 63 64 65 66 67 68 69
| /*
le bouton poussoir est connecté au pin 2 avec une résistance pull-down de 10KΩ
les LED sont connectées au pins 4 et 6 avec des résistances de 220Ω
*/
//déclaration des variables
int pinBouton;
int pinRelai1, pinRelai2;
void setup() { //initialisation des variables
pinBouton = 2;
pinRelai1 = 3;
pinRelai2 = 4;
//définition des modes
pinMode(pinBouton, INPUT_PULLUP); //mode lecture pour le bouton
pinMode(pinRelai1, OUTPUT); //mode écriture pour led1
pinMode(pinRelai2, OUTPUT); //mode écriture pour led2
}
void loop() {
while (digitalRead(pinBouton) == HIGH); // attendre appui
digitalWrite(pinRelai1, HIGH); // activation relai #1 (en supposant qu'il est actif au niveau haut)
digitalWrite(pinRelai2, HIGH); // activation relai #2 (en supposant qu'il est actif au niveau haut)
delay(200); // attente de 0.2s
digitalWrite(pinRelai1, LOW); // désactivation relai #1
delay(4000); // attente de 4s
digitalWrite(pinRelai2, LOW); // désactivation relai #2
while(digitalRead(pinBouton) == HIGH); // attente active de relâchement du bouton
delay(15); // juste pour éviter les rebonds si vous n'avez pas mis le condensateur
while (digitalRead(pinBouton) == HIGH); // attendre appui
digitalWrite(pinRelai1, HIGH); // activation relai #1 (en supposant qu'il est actif au niveau haut)
digitalWrite(pinRelai2, HIGH); // activation relai #2 (en supposant qu'il est actif au niveau haut)
delay(200); // attente de 0.2s
digitalWrite(pinRelai1, LOW); // désactivation relai #1
delay(7000); // attente de 7s
digitalWrite(pinRelai2, LOW); // désactivation relai #2
while(digitalRead(pinBouton) == HIGH); // attente active de relâchement du bouton
delay(15); // juste pour éviter les rebonds si vous n'avez pas mis le condensateur
while (digitalRead(pinBouton) == HIGH); // attendre appui
digitalWrite(pinRelai1, HIGH); // activation relai #1 (en supposant qu'il est actif au niveau haut)
digitalWrite(pinRelai2, HIGH); // activation relai #2 (en supposant qu'il est actif au niveau haut)
delay(200); // attente de 0.2s
digitalWrite(pinRelai1, LOW); // désactivation relai #1
delay(6000); // attente de 6s
digitalWrite(pinRelai2, LOW); // désactivation relai #2
while(digitalRead(pinBouton) == HIGH); // attente active de relâchement du bouton
delay(15); // juste pour éviter les rebonds si vous n'avez pas mis le condensateur
while (digitalRead(pinBouton) == HIGH); // attendre appui
digitalWrite(pinRelai1, HIGH); // activation relai #1 (en supposant qu'il est actif au niveau haut)
digitalWrite(pinRelai2, HIGH); // activation relai #2 (en supposant qu'il est actif au niveau haut)
delay(200); // attente de 0.2s
digitalWrite(pinRelai1, LOW); // désactivation relai #1
delay(8000); // attente de 8s
digitalWrite(pinRelai2, LOW); // désactivation relai #2
while(digitalRead(pinBouton) == HIGH); // attente active de relâchement du bouton
delay(15); // juste pour éviter les rebonds si vous n'avez pas mis le condensateur
} |
Partager