X-Git-Url: http://git.piffa.net/web?a=blobdiff_plain;f=multitasking%2FBlinkWithoutDelay_4_argomento%2FBlinkWithoutDelay_4_argomento.ino;h=11c733875a65267fcce87e188157ff3c77d86a8f;hb=HEAD;hp=a6ecbaf9cc55034ce08a2720da8c2c99ac9a3c54;hpb=929cf678b6e52050584cb43055194830edc5523f;p=sketchbook_andrea diff --git a/multitasking/BlinkWithoutDelay_4_argomento/BlinkWithoutDelay_4_argomento.ino b/multitasking/BlinkWithoutDelay_4_argomento/BlinkWithoutDelay_4_argomento.ino index a6ecbaf..11c7338 100644 --- a/multitasking/BlinkWithoutDelay_4_argomento/BlinkWithoutDelay_4_argomento.ino +++ b/multitasking/BlinkWithoutDelay_4_argomento/BlinkWithoutDelay_4_argomento.ino @@ -24,7 +24,7 @@ void setup() { void loop() { - lightLedA(1000); + lightLedA(333); lightLedB(500); } @@ -34,15 +34,12 @@ void loop() void lightLedA (int interval) { // Illumina il ledA secondo un intervallo passato come argomento - if(millis() - previousMillisA > interval) { + if (millis() - previousMillisA >= interval) { // save the last time you blinked the LED - previousMillisA = millis(); + previousMillisA += interval; // if the LED is off turn it on and vice-versa: - if (ledStateA == LOW) - ledStateA = HIGH; - else - ledStateA = LOW; + ledStateA = !ledStateA; // set the LED with the ledState of the variable: digitalWrite(ledA, ledStateA); } @@ -52,15 +49,12 @@ void lightLedA (int interval) { void lightLedB (int interval) { // Illumina il ledB secondo un intervallo passato come argomento - if(millis() - previousMillisB > interval) { + if (millis() - previousMillisB >= interval) { // save the last time you blinked the LED - previousMillisB = millis(); + previousMillisB += interval; // if the LED is off turn it on and vice-versa: - if (ledStateB == LOW) - ledStateB = HIGH; - else - ledStateB = LOW; + ledStateB = !ledStateB; // set the LED with the ledState of the variable: digitalWrite(ledB, ledStateB); } @@ -68,11 +62,13 @@ void lightLedB (int interval) { /* Approfondimenti - Quali similitudini ci sono tra le due funzioni? -- Come si dovrebbe fare per semplificare il codice - evitando di ripetere larti del codice simile tra loro? - Distinguere i dati comuni tra le due funzioni che ci servono per far lampeggiare i LED - Distinguere i dati che caratterizzano un LED rispetto all'altro +- Provare a integrare le variabili relative ai due LED dentro le + rispettive funzioni. +- Sarebbe possibile scrivere una funzione che possa interagire con un LED qualunque? + ES: Come inpostare il PIN del LED? Come gestire lo stato del LED? */