Étape 4: Codage:-
void setup() {}
pinMode (entrée, A0) ; mettre en place la broche pour la lecture du potentiomètre / / maintenant, il faut mettre en place nos goupilles de LED comme sorties :
int i ; pour (i = 0; i < 15; i ++) {}
pinMode (led_pins [i], sortie) ; Valeur par défaut de chaque LED OFF. Cela suppose que les anodes des LED sont connectées / / pour les broches de sortie (avec une résistance de 330 ohms entre les deux pour la limitation de courant) / / et l’autre côté de l’ensemble des LED (la cathode) est reliée à la terre.
digitalWrite (led_pins [i], faible) ; }}
void loop() {/ / nous avons mis en place une variable à l’index dans notre tableau de codes pin. Nous allons il par défaut à 0 (le premier / / LED) et laisser sa gamme vont de 0 à 14 inclusivement (la valeur quinzième dans notre tableau).
int index = 0 ; Nous devrons également une variable pour nous dire quelle direction nous sommes « rebondir » les LEDs. Nous commencer par 1 et utilisez -1 pour aller de l’autre sens :
int direction = 1 ; tandis que (1) {}
int valeur = analogRead(A0) ; obtenir la position de 0 à 1023 / / nous allons utiliser cette valeur comme le nombre de millisecondes pour retarder entre avançant vers entre LED. Il y a 1000 millisecondes dans une seconde donc cela nous donne une bonne gamme de retard de 1/1000 à un / / peu plus de 1 seconde. Mais tout d’abord, il faut allumer la LED « courante » (celui indexé par « index ») :
digitalWrite (led_pins [index], HIGH) ; tourner la LED pin haute, « 1 », + 5v, tous la même chose... / / retard maintenant pendant un certain temps par rapport au potentiomètre. La fonction « delay() » attend le nombre / / de millisecondes nous donner avant il renvoie donc cela fonctionne parfaitement : delay(value) ; Éteindre le courant conduit avant d’avancer :
digitalWrite (led_pins [index], faible) ; On avance notre numéro d’index ainsi de suite la passe suivante nous ne parlons pas de la LED suivante :
direction de += index ; Nous inspectons notre indice pour voir si nous sommes sur le point de dépasser à chaque extrémité. Si nous avons atteint soit / / fin nous multiplierons simplement le sens par -1 chaque fois que nous arrivons à une extrémité ou l’autre et cela / / il va basculer de 1 et -1, il se prépare pour la passe suivante :
Si ((index == 0) || (index == 9))
{direction * = -1;} }
}