2 chenillards ensemble

bonjour à tous
je bloque sur une programmation
j'ai 12 leds , 6 rouges et 6 vertes
elles sont en ligne comme cela rouge vert rouge vert rouge vert etc
je voudrai faire un chenillard avec les rouges et la 1ere verte allumée au depart
1 fois que les 6 rouges se sont allumées, la 1 ere verte s'éteind et c'est la 2eme verte qui s'allume et on refait un tour avec les rouges, la 2eme verte s'eteind, la 3eme verte s'allume et on fait un tour avec les rouges etc...
lorsque je fais mon programme le chenillard rouge tourne bien mais les
vertes restent allumées ....
j'espere que j'ai été clair.
je veux bien un peu d'aide pour la programmation.

// Initialisation des lignes 4 à 9 en sortie
void setup () {
  pinMode (2, OUTPUT) ;
  pinMode (3, OUTPUT) ;
  pinMode (4, OUTPUT) ;
  pinMode (5, OUTPUT) ;
  pinMode (6, OUTPUT) ;
  pinMode (7, OUTPUT) ;
  pinMode (8, OUTPUT) ;
  pinMode (9, OUTPUT) ;
  pinMode (10, OUTPUT) ;
  pinMode (11, OUTPUT) ;
  pinMode (12, OUTPUT) ;
  pinMode (13, OUTPUT) ;
}

// Fonction loop
void loop () {
  // Extinction de toutes les DEL au départ du programme
  for (byte i = 2 ; i <= 13 ; i++) {
    digitalWrite (i, LOW) ; // éteint la DEL reliée à la broche i
  }
  
  // Boucle pour faire flasher les DEL vertes
  for (byte i = 8 ; i <= 13 ; i++) {

    digitalWrite (i, HIGH) ; // allume la DEL sur broche i
    delay (50) ; // durée du flash 50 millisecondes
    

  
// Boucle pour faire flasher les DEL rouges
  for (byte i = 2 ; i <= 7 ; i++) {
    digitalWrite (i, HIGH) ; // allume la DEL sur broche i
    delay (300) ; // durée du flash 300 millisecondes
    digitalWrite (i, LOW) ; // éteint la DEL
    
      }
  }


    
  // Recommence la séquence
}

Tu as oublié d'éteindre la LED verte en cours avant de passer à la suivante:

	for (byte i = 8 ; i <= 13 ; i++) {

		digitalWrite (i, HIGH) ; // allume la DEL verte sur broche i
		delay (50) ; // durée du flash 50 millisecondes
		
		// Boucle pour faire flasher les DEL rouges
		for (byte i = 2 ; i <= 7 ; i++) {
			digitalWrite (i, HIGH) ; // allume la DEL sur broche i
			delay (300) ; // durée du flash 300 millisecondes
			digitalWrite (i, LOW) ; // éteint la DEL
			
		}
		digitalWrite (i, LOW) ; // éteint la DEL verte sur broche i
	}

Cordialement
jpbbricole

merci beaucoup :slightly_smiling_face:
pour la rapidité de la reponse et pour la réponse

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.