]> git.piffa.net Git - sketchbook_andrea/blob - multitasking/millis/flasher/flasher.ino
Flasher con millis
[sketchbook_andrea] / multitasking / millis / flasher / flasher.ino
1 /* Flasher
2
3    Sequenza di lampeggi ad intervalli arbitrari
4    A ogni valore di intervallo viene fatto il toggle del PIN
5 */
6
7 const int led = 13;
8
9 unsigned long previousMillis = 0;        // Ultimo aggiornamento
10 unsigned int intervalli[] = {100, 100, 100, 100, 500, 500} ;
11 unsigned int cur = 0 ;
12
13 void setup() {
14   pinMode(led, OUTPUT);
15 }
16
17 void loop()
18 {
19   if (millis() - previousMillis >= intervalli[cur]) {
20     previousMillis += intervalli[cur] ;
21     digitalWrite(led, !digitalRead(led));
22     
23     if (cur < sizeof(intervalli) / sizeof(intervalli[0]) -1 ) {
24       cur++;
25     } else {
26       cur = 0;
27     }
28   }
29 }