Perché usare resistenze con pulsanti e interruttori su Arduino
Questo tutorial spiega perché l'uso di una resistenza con pulsanti e interruttori collegati a un Arduino è cruciale per un funzionamento affidabile. Comprendere questo concetto è fondamentale per qualsiasi progetto Arduino che coinvolga input dell'utente. Questa conoscenza previene comportamenti imprevisti e assicura che i tuoi progetti funzionino correttamente. Ecco alcune idee di progetto in cui questa conoscenza è essenziale:
- Semplice interruttore on/off per un LED
- Controller di gioco interattivo
- Telecomando per elettrodomestici
- Sistema di sicurezza con attivazione tramite pulsante
Esploriamo i motivi per cui si utilizzano i resistori in questi circuiti.

Hardware/Componenti
I componenti principali necessari per questo progetto sono minimi: una scheda Arduino, un interruttore a pulsante e una resistenza (maggiore di 300 ohm). Il valore della resistenza non è critico; valori come 1kΩ, 10kΩ o anche 100kΩ generalmente funzioneranno bene (nel video a 00:41).
Guida al cablaggio
Ci sono due configurazioni principali di cablaggio (nel video a 00:30):
- Configurazione 1:Collega il pulsante tra il pin dell'Arduino e +5V. L'altro lato del pulsante è collegato a massa tramite una resistenza. Quando il pulsante è premuto, il pin legge HIGH; quando viene rilasciato, legge LOW.
- Configurazione 2:Collega il pulsante tra il pin dell'Arduino e la massa. L'altro lato del pulsante è collegato a +5V tramite una resistenza. Quando il pulsante è premuto, il pin legge LOW; quando viene rilasciato, legge HIGH.

Uno schema di cablaggio visivo sarebbe utile qui.
Spiegazione del codice
Il codice Arduino utilizza ilpinMode()funzione per configurare il pin come ingresso. La parte cruciale è l'uso diINPUT_PULLUP(nel video a 04:06, 04:23). Questo resistore pull-up interno elimina la necessità di un resistore esterno in certe configurazioni, semplificando il cablaggio. IldigitalRead()La funzione legge lo stato del pin, e un sempliceif-elseL'istruzione determina se il pulsante è premuto (LOW) o meno (HIGH) (nel video a 08:34).
pinMode(2, INPUT_PULLUP); // Configures pin 2 as input with internal pull-up resistor
int pushButton = digitalRead(2); // Reads the state of pin 2
if (pushButton == LOW) {
// Button is pressed
} else {
// Button is not pressed
}
Progetto/Dimostrazione dal vivo
Il video mostra entrambe le configurazioni di cablaggio e i rispettivi comportamenti. Evidenzia i problemi che possono insorgere quando la resistenza viene omessa, come letture erratiche dovute al rumore e all'accoppiamento capacitivo (nel video a 06:18, 06:39, 07:21). La dimostrazione mostra chiaramente il funzionamento stabile e affidabile ottenuto con la resistenza in posizione (nel video a 08:08).
Capitoli
- [00:00] Introduzione
- [00:30] Configurazioni di cablaggio
- [04:12] Spiegazione del codice usando INPUT_PULLUP
- [05:36] Rimozione del resistore: dimostrazione pratica
- [08:33] Spiegazione del codice
Immagini
Cose di cui potresti avere bisogno
-
Amazon
Risorse e riferimenti
Nessuna risorsa ancora.
File📁
Nessun file disponibile.
