void setup() {
pinMode(buttonPin, INPUT);
pinMode(led, OUTPUT);
- Serial.begin(9600); // Attiva la comunicazione seriale a 9600bps
+ Serial.begin(9600); // Attiva la comunicazione seriale a 9600bps
ultimoStato = digitalRead(buttonPin); // Prima lettura del bottone
ledStatus = 0; // Il LED viene inpostato come spento
}
void loop(){
- statoAttuale = digitalRead(buttonPin); // read input value and store it in var
+ statoAttuale = digitalRead(buttonPin); // Legge lo stato del bottone e
+ // lo registra nella variabile
delay(20); // riduce l'effetto bounce
if (statoAttuale != ultimoStato) { // lo stato del bottone e' cambiato
- if (statoAttuale == HIGH) { // il bottone e' stato provato
+ if (statoAttuale == HIGH) { // il bottone e' stato premuto
Serial.println("Button premuto");
ledStatus = !ledStatus ; // Inverte lo stato del LED
}
}
- ultimoStato = statoAttuale; // save the new state in our variable
+ ultimoStato = statoAttuale; // Aggiorna lo stato finale al valore attuale
digitalWrite(led, ledStatus); // setta il led allo stato richiesto
}
+/* Domande:
+ 1. I due cicli if verificano che due condizioni siano concomitanti: e' possibile
+ integrarli semplificando il codice?
+
+ */