int BTN1 = 4;
int BTN2 = 2;
int LEDS[] = {32, 33, 13, 22, 21, 5};
int CONT = 0;
void setup() {
pinMode(BTN1, INPUT);
pinMode(BTN2, INPUT);
for (int i = 0; i < 6; i++) {
pinMode(LEDS[i], OUTPUT);
}
}
void loop() {
if (digitalRead(BTN1) == HIGH && CONT < 6) {
CONT++;
delay(200);
}
if (digitalRead(BTN2) == HIGH && CONT > 0) {
CONT--;
delay(200);
}
for (int i = 0; i < 6; i++) {
digitalWrite(LEDS[i], i < CONT ? HIGH : LOW);
}
}
/*// Definimos los pines para los botones y LEDs
int boton1 = 4; // Botón que aumenta el contador
int boton2 = 2; // Botón que disminuye el contador
int led1 = 32; // Pines para los LEDs
int led2 = 33;
int led3 = 13;
int led4 = 22;
int led5 = 21;
int led6 = 5;
int contador = 0; // Contador para saber cuántos LEDs están encendidos
void setup() {
// Configuramos los pines como entrada o salida
pinMode(boton1, INPUT);
pinMode(boton2, INPUT);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
pinMode(led5, OUTPUT);
pinMode(led6, OUTPUT);
}
void loop() {
// Si se presiona el botón 1, aumentamos el contador (hasta 6)
if (digitalRead(boton1) == HIGH) {
if (contador < 6) {
contador++;
}
delay(200); // Evitamos rebotes
}
// Si se presiona el botón 2, disminuimos el contador (hasta 0)
if (digitalRead(boton2) == HIGH) {
if (contador > 0) {
contador--;
}
delay(200); // Evitamos rebotes
}
// Encendemos los LEDs según el valor del contador
encenderLEDs(contador);
}
// Función para encender los LEDs según el contador
void encenderLEDs(int numero) {
for (int i = 1; i <= 6; i++) {
if (i <= numero) {
asignarLED(i, HIGH);
} else {
asignarLED(i, LOW);
}
}
}
// Función que asigna el estado (HIGH o LOW) a cada LED
void asignarLED(int nled, int estado) {
switch (nled) {
case 1:
digitalWrite(led1, estado);
break;
case 2:
digitalWrite(led2, estado);
break;
case 3:
digitalWrite(led3, estado);
break;
case 4:
digitalWrite(led4, estado);
break;
case 5:
digitalWrite(led5, estado);
break;
case 6:
digitalWrite(led6, estado);
break;
}
}*/