--- /dev/null
+/*
+ Blink v1
+
+ Accensione e spegnimanto di due LED utilizzando un interrupt:
+ un interrupt associato al PIN del bottone sollecita una ISR routine
+ che puo' essere richiamata in ogni momento a prescindere
+ da cosa il microprocessore sta facendo nel loop.
+
+ Nota: per togliere l'effetto bouncing del bottone:
+ - https://www.arduino.cc/en/tutorial/debounce
+ vedi esercizio: sketchbook_andrea/advanced_projects/interrupts/debounce/debounce.ino
+- https://lab.piffa.net/sketchbook_andrea/advanced_projects/interrupts/debounce/debounce.ino
+
+ */
+
+// Pin 13 ha un LED collegato di default
+const int ledA = 13;
+const int ledB = 12; //Secondo LED, con resistenza
+const int pausa = 5000;
+
+void setup() {
+ // Inizializziamo il PIN 13 come OUTPUT
+ pinMode(ledA, OUTPUT);
+ pinMode(ledB, OUTPUT);
+
+ pinMode(2, INPUT_PULLUP);
+ attachInterrupt(0, reazioneISR, FALLING); // 0 e' l'interrupt numero 0
+ // connesso al PIN D2, l'interrupt 1 e' connesso al PIN D3
+ // eventoAttivo : nome della funzione da richiamare
+ // per un ISRs e' sempre VOID
+ // LOW | RISING | FALLIN | CHANGE | HIGH
+}
+
+void loop() {
+ digitalWrite(ledA, HIGH);
+ delay(pausa);
+ digitalWrite(ledA, LOW);
+ delay(pausa);
+}
+
+void reazioneISR() // Sempre VOID
+{
+ digitalWrite(ledB, !digitalRead(ledB));
+}
+