#include <Arduino.h>
// Atlante: esempio originale per UNO R3.
// Verificare core, cablaggio e hardware prima dell’uso.
volatile unsigned long impulsi = 0;
unsigned long ultimo = 0;
void contaImpulso() { impulsi++; }
void setup() {
  Serial.begin(115200);
  pinMode(2, INPUT_PULLUP);
  attachInterrupt(digitalPinToInterrupt(2), contaImpulso, FALLING);
}
void loop() {
  unsigned long ora = millis();
  if (ora - ultimo < 1000) return;
  ultimo = ora;
  noInterrupts();
  unsigned long copia = impulsi;
  interrupts();
  Serial.println(copia);
}
