// Una funzione facente parte di una classe prende il nome di "metodo" della stessa:
+void Lampeggiatore::Invert() {
+ // Inverte il lampeggio
+ ledState = HIGH ;
+}
+
void Lampeggiatore::Blink() {
// Illumina il led a 500ms
// Lampeggia un LED utilizzando millis()
// Variabili
int ledPin ; // il numero del LED pin
- int ledState ; // stato attuale del LED
long interval ; // milliseconds di intervallo nel lampeggiare
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(long interval); // Lampeggia inpostando l'intervallo
void Blink(long on, long down); // Imposta il tempo acceso e il tempo spento
--- /dev/null
+/* Esempi Vari
+
+Vari esempi di utilizzo della libreria.
+*/
+
+#include <common.h>
+
+// Lampeggio con valore automatico
+Lampeggiatore lamp = 4 ;
+
+// Due LED con lampeggio alternato:
+Lampeggiatore right = 3;
+Lampeggiatore left = 5;
+
+void setup() {
+ left.Invert(); // Parte da stato invertito rispetto al default
+}
+
+void loop() {
+// Lampeggio con valore automatico
+ lamp.Blink()
+ lamp.Blink(300); // Lampeggia ogni 300ms
+ lamp.Blink(300,100); // Lampeggia per 300ms HIGH, 100ms LOW
+
+ // Due LED con lampeggio alternato:
+ right.Blink();
+ left.Blink();
+}