Tutorial Arduino #3

Pulsante come interruttore

Pulsante come interruttore - Tutorial Arduino #3
Tutorial Arduino #2: Led e pulsanti
Tutorial Arduino #2
Led e pulsanti
Tutorial Arduino #4: Come calcolare le resistenze
Tutorial Arduino #4
Come calcolare le resistenze

Descrizione

Nella terza puntata del tutorial di Arduino impareremo come trasformare il pulsante in un interruttore, partendo dal circuito della precedente lezione. Inoltre vedremo come evitare il fenomeno dei "rimbalzi" grazie alla tecnica del debouncing, per cui modificheremo lo sketch in modo da poter gestire le oscillazioni del pulsante modificando soltanto una variabile.
Con lo sketch scopriremo la differenza tra le variabili globali e locali e impareremo a utilizzare l'operatore logico AND nelle condizioni del costrutto IF.
Infine introdurremo un nuovo tipo di variabile, ovvero unsigned long, che ci permetterà di salvare il tempo trascorso espresso in millisecondi.

Scarica le risorse

Progetto: Interruttore

Schema

Componenti

Codice

int ledPin = 9;int pulsantePin = 2;int ledStato = LOW;int pulsanteStato = LOW; void setup(){  pinMode(ledPin, OUTPUT);  pinMode(pulsantePin, INPUT);  digitalWrite(ledPin, ledStato);} void loop(){  int lettura = digitalRead(pulsantePin);  if(lettura != pulsanteStato and lettura == HIGH){    ledStato = !ledStato;    digitalWrite(ledPin, ledStato);  }  pulsanteStato = lettura;  delay(10);}
scarica il file

Progetto: Debouncing

Schema

Componenti

Codice

int ledPin = 9;int pulsantePin = 2;int ledStato = LOW;int pulsanteStato = LOW;int attesaDebounce = 50;unsigned long ultimoTempoDebounce = 0;int ultimaLettura = LOW; void setup(){  pinMode(ledPin, OUTPUT);  pinMode(pulsantePin, INPUT);  digitalWrite(ledPin, ledStato);} void loop(){  int lettura = digitalRead(pulsantePin);  if(lettura != ultimaLettura){    ultimoTempoDebounce = millis();  }   if((millis() - ultimoTempoDebounce) > attesaDebounce){    if(lettura != pulsanteStato and lettura == HIGH){      ledStato = !ledStato;      digitalWrite(ledPin, ledStato);    }    pulsanteStato = lettura;  }   ultimaLettura = lettura;  delay(10);}
scarica il file

Arduino Software Hero

Vuoi imparare a programmare Arduino, ma non sai da dove cominciare?

Iscriviti al corso online

Libri consigliati


Tutorial consigliati

E-commerce di elettronica

Sul nostro negozio online trovi tutti i componenti usati nei tutorial.
Inoltre hai un'ampia scelta di prodotti tra:

  • Arduino
  • Raspberry Pi
  • Sensori
  • Robotica
  • Componenti elettronici
  • Accessori

Compra online, ricevi comodamente a casa

Visita il negozio