// Déclaration variable valeurPotentiometre qui va servir à stocker une valeur au format int. int valeurPotentiometre; // Déclaration variable nombreled qui va servir à stocker une valeur au format int. // Elle prend la valeur de 9 équivalant au nombre de LED int nombreled = 9; // Déclaration d'un tableau de variable ledPins qui va servir à stocker des valeurs au format int. // On remplit le tableau avec les numéros des broches numériques utilisées pour les LEDS int ledPins[] = {2, 3, 4, 5, 6, 7, 8, 9, 10};
void setup() { // On utilise une boucle for pour déclarer les sorties // On initialise une variable int Led pour qu’elle débute de 0 // Tant que la condition est Vrai Led < nombreled on répète les actions entre {} de la boucle for // Et on incrémente Led++. for (int Led = 0; Led < nombreled; Led++) { // Définit ledPins[Led] comme sortie. pinMode(ledPins[Led], OUTPUT); } }
void loop() { // On utilise une boucle for pour définir état de sortie des Leds soit HIGH ou LOW // et définir un temps de pause qui va varier selon la valeur du potentiomètre
// On initialise une variable int Led pour qu’elle débute de 0 // Tant que la condition est Vrai Led < nombreled on répète les actions entre {} de la boucle for // Et on incrémente Led++. for (int Led = 0; Led < 9; Led++) { // Lit la broche analogique A0 et stock ça valeur dans valeurPotentiometre. valeurPotentiometre = analogRead(A0); // La valeur valeurPotentiometre Min = 0, Max = 1023 et mappée à Min = 800, Max = 10 // puis est stockée dans la variable delayonoff au format int. int delayonoff = map(valeurPotentiometre, 0, 1023, 800, 10); // Met la broche numérique stockée dans ledPins[Led] sur ON digitalWrite(ledPins[Led], HIGH); // On attend selon la valeur de delayonoff en millisecondes delay(delayonoff); // Met la broche numérique stockée dans ledPins[Led] sur OFF digitalWrite(ledPins[Led], LOW); // On attend selon la valeur de delayonoff en millisecondes delay(delayonoff); } }