#include <Arduino.h>
// Atlante: esempio originale per UNO R3.
// Verificare core, cablaggio e hardware prima dell’uso.
const byte pulsante = 2;
bool grezzo = HIGH, stabile = HIGH, acceso = false;
unsigned long cambiato = 0;
void setup() {
  pinMode(pulsante, INPUT_PULLUP);
  pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
  unsigned long ora = millis();
  bool lettura = digitalRead(pulsante);
  if (lettura != grezzo) { grezzo = lettura; cambiato = ora; }
  if (ora - cambiato >= 30 && stabile != grezzo) {
    stabile = grezzo;
    if (stabile == LOW) acceso = !acceso;
  }
  digitalWrite(LED_BUILTIN, acceso ? HIGH : LOW);
}
