Leggere un pulsante
Fa parte della sezione Primi circuiti del percorso Arduino di Coddy. Lezione 22 di 22.
Un pin può anche essere un ingresso: la scheda legge se è HIGH o LOW.
Questo pulsante collega il pin 2 alla massa (0 volt) mentre lo tieni premuto. Quando è rilasciato, il pin non è collegato a nulla e leggerebbe valori casuali. INPUT_PULLUP attiva una resistenza di pull-up all'interno della scheda, che mantiene il pin su HIGH finché il pulsante non lo porta su LOW:
pinMode(2, INPUT_PULLUP);digitalRead(2) restituisce il livello del pin. Con una resistenza di pull-up, quando il pulsante è premuto viene letto LOW:
if (digitalRead(2) == LOW) {
// il pulsante è premuto
}Per il resto, sai già cosa fare: if e else per scegliere, digitalWrite() per il LED, Serial.println() per comunicare.
Sfida
FacileIl pulsante è sul pin 2 e il LED sul pin 13. Fai accendere il LED mentre tieni premuto il pulsante:
- imposta il pin 2 su
INPUT_PULLUP - quando
digitalRead(buttonPin)èLOW, accendi il LED, stampaPressede attendi 200 ms (così il monitor non viene inondato) - altrimenti, spegni il LED
Premi Run, tieni premuto il pulsante verde sulla scheda, quindi premi Check.
Provalo tu
const int buttonPin = 2;
const int ledPin = 13;
void setup() {
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
}
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Primi circuiti
1Ciao, scheda
Fai lampeggiare un LEDSetup e loopCambia la velocità di lampeggioUn LED tutto tuoDue LED a turnoI commenti nel tuo sketch4Decisioni
Decisioni con ifScegliere con if e elseConfrontare i valoriCombinare le condizioniLeggere un pulsante3La matematica alla lavagna
Costanti con nomeOperatori aritmeticiDivisione interaNumeri decimali con floatUn lampeggio che acceleraEsercitati da solo: Playground Arduino