/* Blink without Delay
- Soluzione
+ Class: definizione di una classe LED.
- Introdotto un argomento per la funzione che nodifica l'intervallo di lampeggio
+ L'oggetto LED integra i dati (proprieta') del led con i metodi (le funzioni).
*/
+// Oggetti:
class Lampeggiatore {
// 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
+ long previousMillis ; // precedente cambio di stato
// Constructor: come viene instanziato un oggetto facente parte della classe
public:
void Update () {
// Illumina il ledB secondo un intervallo passato come argomento
- if(millis() - previousMillis > interval) {
+ if (millis() > previousMillis + interval) {
// save the last time you blinked the LED
previousMillis = millis();
ledB.Update();
}
+/* Domande:
+ 1. Ogni quante volte viene eseguito il codice del loop per ogni millisecondo?
+ 2. Utilizzare un interrupt per richiamare Update()
+ Es: https://learn.adafruit.com/multi-tasking-the-arduino-part-2/overview
+ */