]> git.piffa.net Git - sketchbook_andrea/blob - basic/buttons/button_state_3/button_state_3.ino
for loop
[sketchbook_andrea] / basic / buttons / button_state_3 / button_state_3.ino
1 /*
2    Stato di un bottone
3  
4  Legge lo stato di un input
5  
6  */
7
8 int switchPin = 2;              // switch connesso al pin 2
9                                 // Nota: le prossime due variabili sono 
10                                 // solo "dichiarate" e non "definite"
11 int statoAttuale;               // Variabile per leggere lo stato del bottone
12 int ultimoStato;                // Variabile per registrare l'ultimo stato del bottone
13
14 void setup() {
15   pinMode(switchPin, INPUT);    // Set the switch pin as input
16
17   Serial.begin(9600);           // Set up serial communication at 9600bps
18   ultimoStato = digitalRead(switchPin);   // read the initial state
19 }
20
21
22 void loop(){
23   statoAttuale = digitalRead(switchPin);      // Legge lo stato del bottone e lo resistra in val
24    delay(20);                                // riduce l'effetto bounce
25   if (statoAttuale != ultimoStato) { 
26       // verifica due condizioni che devono realizzarsi contemporaneamente
27     if (statoAttuale == HIGH) {               // il bottone e' stato premuto
28       Serial.println("Bottone premuto");
29     } 
30     else {                         // the button is -not- pressed...
31       Serial.println("Bottone rilasciato");
32     }
33   }
34
35   ultimoStato = statoAttuale;                 // Aggiorna lo stato finale al valore attuale
36 }
37