]> git.piffa.net Git - sketchbook_andrea/blobdiff - libraries/common/common.h
common utilities
[sketchbook_andrea] / libraries / common / common.h
index ba07fa4dec7080583f910c2889013dc56da53b06..25b84dd6ae9f7320a1290e869f7b4779a9ca4489 100644 (file)
@@ -43,9 +43,11 @@ class RGBLed {
     byte redValue ;
     byte greenValue ;
     byte blueValue ;
+    byte common ;
 
   public:
     RGBLed (byte pinR, byte pinG, byte pinB) ;
+    RGBLed (byte pinR, byte pinG, byte pinB, byte com) ;
        void SetColor (byte r, byte g, byte b) ;
        void Red ();
     void Green ();
@@ -64,16 +66,19 @@ class Lampeggiatore {
     // Variabili
     int ledPin ;           // il numero del LED pin
     long interval ;        // milliseconds di intervallo nel lampeggiare
-    long previousMillis ;  // precedente cambio di stato
+    unsigned long previousMillis ;  // precedente cambio di stato
     int ledState ;         // stato attuale del LED, pubblico per invertirlo
 
     // Constructor: come viene instanziato un oggetto facente parte della classe
 public:
     Lampeggiatore(int pin);
     void Invert();   // Inverte il lampeggio 
-    void Blink();      // Lampeggia ogni 500ms
+    void Blink();       // Lampeggia ogni 500ms
     void Blink(long interval); // Lampeggia inpostando l'intervallo
     void Blink(long on, long down); // Imposta il tempo acceso e il tempo spento
+    void High();    // Accende il LED
+    void Low();     // Spegne il LED
+    void Swap();    // Inverte lo stato del LED
 };
 
 
@@ -88,18 +93,56 @@ class Pwm {
     // Variabili
     int ledPin ;           // il numero del LED pin
     int speed ;            // velocita' del ciclo in ms
-    long previousMillis ;  //precedente cambio di stato
-    byte increment ;        // aumenta brighteness nel loop UD
+    unsigned long previousMillis ;  //precedente cambio di stato
+    byte increment ;      // aumenta brighteness nel loop UD
 
     // Constructor: come viene instanziato un oggetto facente parte della classe
 public:
     Pwm(int pin);  // numero di pin, velocita' di ciclo
     void Up(long speed);
+    void lUp(long speed);
     void Down(long speed);
+    void lDown(long speed);
     void UD(long speed);
+    void Set(byte brighteness);
+    void lSet(byte brighteness);
     byte brightness  ;      // luminostia' iniziale
 };
 
+
+
+////////////////////////////
+class Sequenza {
+    // Lampeggia LED in sequenza utilizzando millis()
+    unsigned long previousMillis ;
+    byte i = 0;
+    byte *ledPins;
+    byte size;
+    int inc = 1;
+    long interval;
+    
+  public:
+    Sequenza (byte passed[], byte dim) ; // Array contentente i PINS, dimensioni array
+    void Update(long value) ;  // Accende in sequenza
+    void Reverse(long value) ; // Invertita
+    void UD(long value) ; // Up & Down
+};
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
 //////////////////////
 // Funzioni