Stampa

L’istruzione IF...ELSE si usa per scegliere tra due alternative.

Con un pulsante e due LED, progetta un sistema in cui:

Il codice dello sketch:

/*
1 pulsante e 2 LED:
- pulsante rilasciato --> LED rosso ON, verde OFF
- pulsante premuto --> LED rosso OFF, verde ON
(L'istruzione IF...ELSE)
*/

bool puls; // la variabile booleana puls memorizza lo stato del pulsante
const int pinPuls=7; // uguaglia la costante pinPuls a 7 (pin del pulsante)
const int pinRosso=12; // uguaglia la costante pinRosso a 12 (pin del LED rosso)
const int pinVerde=13; // uguaglia la costante pinVerde a 13 (pin del LED verde)

void setup(){
pinMode(pinPuls, INPUT_PULLUP); // imposta il pin digitale 7 come input (con pull-up interno)
pinMode(pinRosso, OUTPUT); // imposta il pin digitale 12 come output
pinMode(pinVerde, OUTPUT); // imposta il pin digitale 13 come output
}

void loop(){
puls = digitalRead(pinPuls); // leggi il bit sul pin 7, collegato al pulsante
// e memorizzalo nella variabile puls

if (puls==1){ // se puls=1 (pulsante rilasciato)
digitalWrite(pinRosso, HIGH); // LED rosso ON (pin 12)
digitalWrite(pinVerde, LOW); // LED verde OFF (pin 13)
}
else { // altrimenti se puls=0 (pulsante premuto)
digitalWrite(pinRosso, LOW); // LED rosso OFF (pin 12)
digitalWrite(pinVerde, HIGH); // LED verde ON (pin 13)
}
}

Nello sketch si può notare che:

if (espressione) {

// blocco di istruzioni A

 

}

else {

// blocco di istruzioni B

}

Se espressione è VERA si esegue il blocco di istruzioni A, altrimenti viene eseguito il blocco B.
L’else è facoltativo e va eliminato se non esiste alternativa ad A :

 

if (espressione) {

// blocco di istruzioni A

}

 

Click to listen highlighted text! Powered By GSpeech