4 2 LED ai lati con lampeggio alternato
5 1 LED in coda lampeggio a freq doppia
8 1 interruttore su interrupt 0 per accensione / spegnimento luci
13 // Variabili per interrupt 0
14 volatile unsigned int chValue = 1500; // Valore computato
15 volatile unsigned int chStart = 1500; // Inizio rilevamento
17 // Instanziamo un LED fuori dal loop
18 Lampeggiatore left = 5;
19 Lampeggiatore right = 6;
20 Lampeggiatore coda = 9;
23 // I PINs vengono impostati dal constructor al momento
24 // della dichiarazione dell'ogetto.
26 right.Invert() ; // Opzionale: inverte l'ordine del lampeggio da
27 // HI -> LOW --> LOW -> HI
28 // per avere 2 LED che lampeggiano alternativamente
34 left.Blink(); // Lampeggia con un default di 1sec (0.5 HI 0.5 LOW)
36 coda.Blink(1000); // Lampeggio in 1000ms = 1 secondo
38 // sarebbe carino mettere una transizione da on -> off con un fade down...
47 attachInterrupt(0, chFall, FALLING);
52 attachInterrupt(0, chRise, RISING);
53 chValue = micros() - chStart;