const int led1Pin = 9; // Pin donde está conectado el LED1 (encendido inicialmente)
const int led2Pin = 10; // Pin donde está conectado el LED2 (apagado inicialmente)
const int buttonPin = 2; // Pin donde está conectado el botón
bool led1State = true; // Estado inicial del LED1 (encendido)
bool led2State = false; // Estado inicial del LED2 (apagado)
void setup() {
pinMode(led1Pin, OUTPUT); // Configura el pin del LED1 como salida
pinMode(led2Pin, OUTPUT); // Configura el pin del LED2 como salida
pinMode(buttonPin, INPUT_PULLUP); // Configura el pin del botón como entrada con pull-up
// Inicializa los LEDs
digitalWrite(led1Pin, HIGH); // Enciende el LED1
digitalWrite(led2Pin, LOW); // Asegúrate de que el LED2 está apagado
}
void loop() {
static bool lastButtonState = HIGH; // Estado anterior del botón
// Lee el estado del botón
int buttonState = digitalRead(buttonPin);
// Detecta el cambio de estado del botón
if (lastButtonState == HIGH && buttonState == LOW) {
// Cambia el estado de los LEDs
if (led1State) {
digitalWrite(led1Pin, LOW); // Apaga el LED1
digitalWrite(led2Pin, HIGH); // Enciende el LED2
} else {
digitalWrite(led1Pin, HIGH); // Enciende el LED1
digitalWrite(led2Pin, LOW); // Apaga el LED2
}
// Actualiza los estados
led1State = !led1State; // Cambia el estado del LED1
led2State = !led2State; // Cambia el estado del LED2
delay(200); // Retardo para evitar múltiples activaciones
}
lastButtonState = buttonState; // Actualiza el estado anterior del botón
}