ayuda con arduino soy nueva quiero programar una secuencia led para el colegio

:slight_smile: hola comunidad hispano hablante.

Quisiera su apoyo para poder realizar una secuencia led que me dejaron de proyecto en la universidad.

no me ha salido bien quisiera controlar 6 leds con un push botton en la siguiente secuencia.

push1… led 1 on led 2 off led 3 off led 4 off led 5 off led 6 off
push2… led 1 off led 2 on led 3 off led 4 off led 5 off led 6 off
push3… led 1 off led 2 off led 3 on led 4 off led 5 off led 6 off
push4… led 1 off led 2 off led 3 off led 4 on led 5 off led 6 off
push5… led 1 off led 2 off led 3 off led 4 off led 5 on led 6 off
push6… led 1 off led 2 off led 3 off led 4 off led 5 off led 6 on
push7… led 1 on led 2 off led 3 off led 4 off led 5 off led 6 off (de nuevo que inicie la secuencia)

es un solo push botton.

les agradeceria su ayuda por que soy nueva en el foro, mi arduino es el arduino 1. gracias

este es mi codigo.

int led3=9,led1=10,led2=11,pulse=8,led4=7,led5=6,led6=5;

void setup() 
{
pinMode(led1,OUTPUT);
pinMode(led2,OUTPUT);
pinMode(led3,OUTPUT);
pinMode(led4,OUTPUT);
pinMode(led5,OUTPUT);
pinMode(led6,OUTPUT);
pinMode(pulse,INPUT);
}

int x=3;
boolean y= true;

void loop()
{
  if (digitalRead(pulse)==HIGH && y==false){x++;y = true;} 
  else if (digitalRead(pulse)!=HIGH) {y = false;}

if ( x > 7){x=0;}

switch(x) 
{
case 0:
  digitalWrite(led1,HIGH);
break;
case 1:
  digitalWrite(led2,HIGH);
  digitalWrite(led1,LOW);
break;
case 2:
   digitalWrite(led3,HIGH);
   digitalWrite(led2,LOW);
break;
case 3:
   digitalWrite(led4,HIGH);
   digitalWrite(led3,LOW);
break;
case 4:
   digitalWrite(led5,HIGH);
   digitalWrite(led4,LOW);
break;
case 5:
   digitalWrite(led6,HIGH);
   digitalWrite(led5,LOW);
break;
case 6:
   digitalWrite(led6,HIGH);
   digitalWrite(led1,HIGH);
break;
case 7:
   digitalWrite(led6,LOW);
   digitalWrite(led1,LOW);
break;

}
}

solo falta un boton para retroceder la secuencia. agradezco su ayuda.

esto es tan simple como....

const byte boton = 2;  // botón con resistencia pulldown a pin 2
bool statusBtn = false;  
bool statusBtnAnt = false;
byte caso = 0;

void setup() {
  Serial.begin(9600);
  pinMode(boton, INPUT);
}

void loop() {
  if (statusBtn == HIGH && statusBtnAnt == LOW) {
     caso++;
     if (caso > 7) {
        caso = 0;
     } 
     switch (caso) {
       case 1: // hago el caso 1
               break;

      // demás casos
      default:
              break;
      }
   } // fin del if
} // fin del loop

Cada vez que presiones el pulsador en el pin 2, se incrementa caso
y en el switch ejecutas la secuencia que necesitas.
Te dejo a ti el resto.