]> git.piffa.net Git - sketchbook_andrea/blobdiff - multitasking/BlinkWithoutDelay_1/BlinkWithoutDelay_1.ino
Millis
[sketchbook_andrea] / multitasking / BlinkWithoutDelay_1 / BlinkWithoutDelay_1.ino
index bbed9dedd3b116e04186cfde7313345da97d3fdf..f7fee43e2b2d63d4f75d69ccc47ae5e54180c4ca 100644 (file)
@@ -14,6 +14,7 @@
  by David A. Mellis
  modified 8 Feb 2010
  by Paul Stoffregen
+ modified by eaman
  
  This example code is in the public domain.
 
@@ -23,7 +24,7 @@
 
 // constants won't change. Used here to 
 // set pin numbers:
-const int ledPin =  13;      // the number of the LED pin
+const int ledPin =  13;      
 
 // Variables will change:
 int ledState = LOW;             // ledState used to set the LED
@@ -31,7 +32,7 @@ long previousMillis = 0;        // will store last time LED was updated
 
 // the follow variables is a long because the time, measured in miliseconds,
 // will quickly become a bigger number than can be stored in an int.
-long interval = 1000;           // interval at which to blink (milliseconds)
+const long interval = 1000;           // interval at which to blink (milliseconds)
 
 void setup() {
   // set the digital pin as output:
@@ -46,17 +47,18 @@ void loop()
   // difference between the current time and last time you blinked 
   // the LED is bigger than the interval at which you want to 
   // blink the LED.
-  unsigned long currentMillis = millis();
  
-  if(currentMillis - previousMillis > interval) {
-    // save the last time you blinked the LED 
-    previousMillis = currentMillis;   
+  if(millis() - previousMillis > interval) {
+    // Aggiorniamo il contatore previousMillis
+    previousMillis = millis();   
 
     // if the LED is off turn it on and vice-versa:
     if (ledState == LOW)
       ledState = HIGH;
     else
       ledState = LOW;
+    // e' possibile semplificare questa operazione?
+    // Hint: lo stato del LED e' binario: ha solo due stati possibili.
 
     // set the LED with the ledState of the variable:
     digitalWrite(ledPin, ledState);
@@ -65,5 +67,6 @@ void loop()
 
 /* Domande
    1. Aggioungere un LED che brilli ogni 500ms
-   2. E' possibile cambiare gli intervalli dei due LED?
-   */
+   2. E' ora agevole cambiare gli intervalli dei due LED? 
+      Modificare gli intervalli dei due led (es 500ms - 320ms)
+ */