Si voglia leggere, tramite Arduino, lo stato di un interruttore / pulsante e accendere un LED se il pulsante è premuto o spegnerlo se è rilasciato.

Nel progetto che segue si utilizza un bottone per accendere e sp

egnere il led “built-in” presente sulla scheda Arduino (pin 13). Il pulsante, collegato al pin 2 (input), tende a restare aperto: per chiudere il contatto bisogna tenere premuto. Nel circuito è utilizzata una resistenza di PULL-DOWN da 10KOhm, messa tra il GND ed il pin del pulsante. Per leggere lo stato del pulsante utilizziamo l’istruzione “digitalRead(pin)” in cui va specificato un unico parametro, il pin da leggere. La funzione può individuare due soli stati, HIGH o LOW che corrispondono alla presenza di una tensione di +5V o +0V.  Il materiale che serve è : un pulsante, cavi, Arduino uno, una resistenza da 10K Ohm, la breadboard.

In questo caso ho usato la resistenza di pull-down per cui in uscita ho uno stato logico HIGH solo se premo il pulsante.

 

Se collego la resistenza verso i +5V, avrò uno schema con resistenza di PULL-UP per cui lo stato logico letto dal pin 2 è HIGH senza che premo il pulsante: il pulsante funziona al contrario (normalmente acceso).

Nota: L’istruzione IFELSE serve a controllare qualcosa ed a effettuare operazioni se il controllo ha dato esito positivo ed altre se il controllo ha dato esito negativo. In informatica è rappresentata dal diagramma di flusso in figura.