const int boton = 4;
const int led1 = 18;
const int led2 = 19;
const int led3 = 21;
const int led4 = 22;
int contador = 0;
int estadoAnterior = LOW;
void setup(){
pinMode(boton, INPUT);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
}
void loop(){
int estadoActual = digitalRead(boton);
//Detectar pulsación (cuando pasa de LOW a HIGH)
if(estadoActual == HIGH && estadoAnterior == LOW){
contador++;
delay(200); // anti-rebote simple
}
estadoAnterior = estadoActual;
// Control de LEDS según su numero de pulsaciones
if (contador == 1){
digitalWrite(led1, HIGH);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
digitalWrite(led4, LOW);
}
else if (contador == 2){
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, LOW);
digitalWrite(led4, LOW );
}
else if (contador == 3){
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
digitalWrite(led4, LOW );
}
else if (contador == 4){
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
digitalWrite(led4, HIGH);
}
else if (contador == 5){
//Reinicio
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
digitalWrite(led4, LOW);
contador = 0;
}
}