Bonsoir,
Je dois réaliser le programme d'un blink challenge avec 5 led en alternant 4 modes:
- led éteintes
- led allumées
- led clignotantes (période de 1s)
- led fonctionnant en chenillard (période de 1s)
On souhaite pouvoir faire varier la période des modes 3 et 4 entre 0.05s et 5s à l'aide d'un potentiomètre.
Voici le programme que j'ai pour l'instant réalisé:
//compteur de boucles
int compteur =0;
byte led;
byte broche;
void setup()
{
for (broche = 8; broche <= 13; broche++)
{
pinMode(broche,OUTPUT);
}
}
void loop()
{
//1ére animation, effet escargot avec inversion
//reproduire 4 fois le cycle suivant
for (compteur =1 ; compteur <= 3 ; compteur++)
{
// allumer chaque led et l'éteindre sur une cadence de 50 milliseconde
// Escargot de l'extérieur vers l'intérieur
for (led = 8 ; led <= 13 ; led++)
{
digitalWrite(led,HIGH);
delay(100);
digitalWrite(led,LOW);
delay(100);
}
// allumer chaque led et l'éteindre sur une cadence de 50 milliseconde
// Escargot de l'intérieur vers l'extérieur
// la led 10 n'est pas rallumé puisqu'elle fais partie de la boucle précédente
for (led = 12 ; led >= 8 ; led--)
{
digitalWrite(led,HIGH);
delay(100);
digitalWrite(led,LOW);
delay(100);
}
}
//reproduire 10 fois le cycle suivant
//2éme animation,clignotement de toutes les LEDS
for(compteur = 1 ; compteur <= 5 ; compteur++)
{
for (led = 13 ; led >= 8 ; led--)
{
digitalWrite(led,HIGH);
}
delay(100);
for (led = 13 ; led >= 8 ; led--)
{
digitalWrite(led,LOW);
}
delay(100);
}
}
J'aimerais que vous m'aidez afin de rajouter le potentiomètre (relié à A0) et le bouton poussoir (relié à D7) à partir de la fonction milis.
Cordialement