// Definiciones de pines
const int pinPulsador = 14; // Pin del pulsador
const int relayPin = 45; // Pin del relé
volatile int relayState = 0; // Estado del relé
// Función de interrupción para el pulsador
void ARDUINO_ISR_ATTR handleButtonPress() {
relayState = !relayState; // Cambia el estado del relé
digitalWrite(relayPin, relayState);
}
void setup() {
Serial.begin(115200);
// Configurar pines
pinMode(pinPulsador, INPUT_PULLUP); // Configura el pulsador como entrada
pinMode(relayPin, OUTPUT); // Configura el relé como salida
digitalWrite(relayPin, relayState);
// Configurar interrupción para el pulsador
attachInterrupt(pinPulsador, handleButtonPress, FALLING);
}
void loop() {
delay(10);
}