Oggi vedremo come collegare un pulsante ad Arduino, come tutorial farò un semplice sketch che accende e spegne un led, in base al valore letto nel pin in cui è collegato il pulsante.
Il collegamento del pulsante può avvenire in tre modi differenti due con una resistenza da 10 KΩ, il terzo sfruttando la resistenza di Arduino.
vi consiglio di con collegare mai un pulsante senza l’uso di una resistenza (esterna o interna ad Arduino), perché rischiate un mal funzionamento del circuito.
Materiale Necessario
Se siete interessati al materiale, cliccate su questo e sarete indirizzati alla pagina Amazon
Oggi vedremo come collegare un pulsante ad Arduino, come tutorial farò un semplice sketch che accende e spegne un led, in base al valore letto nel pin in cui è collegato il pulsante.
Il collegamento del pulsante può avvenire in tre modi differenti due con una resistenza da 10 KΩ, il terzo sfruttando la resistenza di Arduino.
vi consiglio di con collegare mai un pulsante senza l’uso di una resistenza (esterna o interna ad Arduino), perché rischiate un mal funzionamento del circuito.
Iniziamo a capire le differenze fra i tre collegamenti, da sinistra verso destra.
- Il primo pulsante che accende il led blu, è collegato al pin 6, senza resistenza, questo perché utilizzerà la resistenza di pull up interna ad Arduino, ma come si fa?
Nello schema dovremo dire ad Arduino di attivare la propria resistenza collegata tra il pin ed i 5V, tramite un comando:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
#define pulsante_A 6 // dichiariamo il pin del pulsante #define led_A 8 // dichiariamo il pin del led void setup(){ pinMode(led_A, OUTPUT); // dichiariamo il pin del led come uscita pinMode(pulsante_A, INPUT_PULLUP); // dichiariamo il pin del pulsante come ingresso } void loop(){ int A = digitalRead(pulsante_A); // creiamo una variabile "A" di tipo int che sarà uguale alla lettura del pin del pulsante if(A == LOW){ // mettiamo la condizione di if digitalWrite(led_A, HIGH); // diciamo di accendere il led se if è soddisfatto } else{ digitalWrite(led_A, LOW); // se if non è soddisfatto spegniamo il led } |
- Il secondo pulsante fa accendere il led Giallo, è collegato al pin 5 ed ha una resistenza da 10 KΩ al pin positivo, in questo caso avendo inserito la resistenza non occorre usare quella di Arduino, in stato di riposo, quindi a pulsante non premuto avremo sul pin 5V costanti che diventano 0 quando si preme il pulsante. Quindi Arduino dovrà accendere il led quando legge sul pin un valore LOW
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
#define pulsante_B 5 // dichiariamo il pin del pulsante #define led_B 9 // dichiariamo il pin del led void setup(){ pinMode(led_B, OUTPUT); // dichiariamo il pin del led come uscita pinMode(pulsante_B, INPUT); // dichiariamo il pin del pulsante come ingresso } void loop(){ int B = digitalRead(pulsante_B); // creiamo una variabile "B" di tipo int che sarà uguale alla lettura del pin del pulsante if(B == LOW){ // mettiamo la condizione di if digitalWrite(led_B, HIGH); // diciamo di accendere il led se if è soddisfatto } else{ digitalWrite(led_B, LOW); // se if non è soddisfatto spegniamo il led } |
- Ultimo metodo di collegamento è inserendo la resistenza sul GND, il funzionamento è simile al 2, unica differenza è che premendo il pulsante avremo sul pin 5V e 0V quando lo rilasciamo.
Quindi dovremmo dire ad Arduino di accendere il led quando sul pin del pulsante legge un valore di 5V cioè HIGH
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
#define pulsante_C 4 // dichiariamo il pin del pulsante #define led_C 10 // dichiariamo il pin del led void setup(){ pinMode(led_C, OUTPUT); // dichiariamo il pin del led come uscita pinMode(pulsante_C, INPUT); // dichiariamo il pin del pulsante come ingresso } void loop(){ int C = digitalRead(pulsante_C); // creiamo una variabile "C" di tipo int che sarà uguale alla lettura del pin del pulsante if(C == HIGH){ // mettiamo la condizione di if digitalWrite(led_C, HIGH); // diciamo di accendere il led se if è soddisfatto } else{ digitalWrite(led_C, LOW); // se if non è soddisfatto spegniamo il led } |
Qui sotto vi riporto piccolo video che vi dimostra il funzionamento dei tre metodi, mentre in fondo alla pagina trovare lo schema con il rispettivo codice in pdf
Nella pagina sono presenti link di affiliazione su cui si ottiene una piccola quota dei ricavi, senza variazioni dei prezzi.