#include "LowPower.h"
// Use pin 2 as wake up pin
const int wakeUpPin = 2;
void setup()
{
// Configure wake up pin as input.
// This will consumes few uA of current.
pinMode(wakeUpPin, INPUT);
pinMode(13, OUTPUT);
}
void loop()
{
// Verifica el estado del pin de despertar (pin 2)
if (digitalRead(wakeUpPin) == HIGH) {
// Si el pin de despertar está en estado alto (5V), activa el modo de suspensión
digitalWrite(13, HIGH);
// Enter power down state with ADC and BOD module disabled.
LowPower.powerDown(SLEEP_FOREVER, ADC_OFF, BOD_OFF);
} else {
digitalWrite(13, LOW);
// Si el pin de despertar está en estado bajo (0V), desactiva el modo de suspensión
// No hay nada que hacer aquí, el Arduino permanece en el loop principal sin entrar en modo de suspensión
}
}