]> git.piffa.net Git - aerei/commitdiff
Notes
authorAndrea Manni <andrea@piffa.net>
Tue, 14 Feb 2017 06:49:35 +0000 (07:49 +0100)
committerAndrea Manni <andrea@piffa.net>
Tue, 14 Feb 2017 06:49:35 +0000 (07:49 +0100)
aerei/cirso/trigger_on/trigger_on.ino
aerei/cirso/trigger_transition/trigger_transition.ino

index 732d03d1a90ee7fe49a2f5056a42d02938827db8..b301221ab878d59dd44e06fc6a27439d29a0ee77 100644 (file)
@@ -6,6 +6,11 @@ Output:
 
 Input:
    1 interruttore su interrupt 0 per accensione / spegnimento luci
+
+Note:
+   Realizzato con un semplice ciclo IF per ON / OFF,
+   lo sketch successsivo ha un macchina a stati per gestire
+   la transizione ON <-> OFF con una dissolvenza.
 */
 
 #include <common.h>
index 344160f1279fe45edfaf8840ff66c6b421d121fc..bcb36d5909e4c00bcd1a57425c2851d8e39f6341 100644 (file)
@@ -42,13 +42,8 @@ Pwm rightPWM = 6;
 Pwm codaPWM = 9;
 
 void setup() {
-    // I PINs vengono impostati dal constructor al momento
-    // della dichiarazione dell'ogetto.
-
 attachInterrupt(0, chRise, RISING); // PIN 2 su 328p / 168
-    right.Invert() ;  // Opzionale: inverte l'ordine del lampeggio da
-    // HI -> LOW --> LOW -> HI
-    // per avere 2 LED che lampeggiano alternativamente
+    right.Invert() ;  // Invertiamo uno dei due lampeggiatori
 }
 
 void loop() {
@@ -62,8 +57,11 @@ switch (toggle) {
         coda.Low();
 
         if (chValue > soglia) {
-            FSM_lastMillis = millis();
+            FSM_lastMillis = currentMillis;
             toggle = toOn ; 
+        leftPWM.Set(0);   
+        rightPWM.Set(0);
+        codaPWM.Set(0);
         }
         break;
 
@@ -74,7 +72,7 @@ switch (toggle) {
         coda.Blink(1000); // Lampeggio in 1000ms = 1 secondo
 
         if (chValue <= soglia) {
-            FSM_lastMillis = millis();
+            FSM_lastMillis = currentMillis;
             toggle = toOff ; 
         leftPWM.Set(255);   
         rightPWM.Set(255);