- Cos'è Switch Bouncing?
- Cos'è il rimbalzo del software?
- Cambia metodi di antirimbalzo
- 1. Antirimbalzo hardware
- 2.
- 3. Attivare l'IC antirimbalzo
Cos'è Switch Bouncing?
Quando premiamo un pulsante o un interruttore a levetta o un microinterruttore, due parti metalliche entrano in contatto per cortocircuitare l'alimentazione. Ma non si connettono istantaneamente ma le parti metalliche si connettono e si disconnettono più volte prima che venga stabilita la connessione effettiva. La stessa cosa accade rilasciando il pulsante. Ciò si traduce in un falso trigger o in più trigger come il pulsante viene premuto più volte. È come far cadere una palla che rimbalza da un'altezza e continua a rimbalzare in superficie, finché non si ferma.
Semplicemente, possiamo dire che il rimbalzo dell'interruttore è il comportamento non ideale di qualsiasi interruttore che genera transizioni multiple di un singolo ingresso. Il rimbalzo degli interruttori non è un grosso problema quando abbiamo a che fare con i circuiti di alimentazione, ma causa problemi mentre abbiamo a che fare con i circuiti logici o digitali. Quindi, per rimuovere il rimbalzo dal circuito , viene utilizzato il circuito antirimbalzo dell'interruttore.
Cos'è il rimbalzo del software?
L'antirimbalzo si verifica anche nel software, mentre i programmatori aggiungono ritardi per eliminare l'antirimbalzo del software. L'aggiunta di un ritardo forza l'arresto del controller per un determinato periodo di tempo, ma l'aggiunta di ritardi non è una buona opzione nel programma, poiché sospende il programma e aumenta il tempo di elaborazione. Il modo migliore è utilizzare gli interrupt nel codice per il rimbalzo del software. Arduino ha un codice per impedire il rimbalzo del software.
Cambia metodi di antirimbalzo
Per prima cosa, mostreremo il circuito senza l'antirimbalzo dell'interruttore.
Puoi anche vedere la forma d'onda nell'oscilloscopio mentre il pulsante rimbalza. Mostra quanto rimbalzi si sono verificati durante la commutazione del pulsante.
Esistono tre metodi comunemente usati per impedire il rimbalzo dell'interruttore.
- Antirimbalzo hardware
- Antirimbalzo RC
- Switch Debouncing IC
1. Antirimbalzo hardware
Nella tecnica di antirimbalzo hardware utilizziamo un flip flop SR per evitare che il circuito rimbalzi. Questo è il miglior metodo di debouncing tra tutti.
Componenti richiesti
- Nand Gate IC 74HC00
- Interruttore a levetta
- Resistenza (10k -2nos.)
- Condensatore (0,1 uf)
- GUIDATO
- Breadboard
Schema elettrico
Funzionamento del circuito antirimbalzo hardware
Il circuito è costituito da due porte Nand (74HC00 IC) che formano un flip flop SR. Come puoi vedere nello schema del circuito, ogni volta che la levetta passa al lato A la logica di uscita diventa "ALTA". Qui abbiamo utilizzato un oscilloscopio per rilevare il rimbalzo. E, come puoi vedere nella forma d'onda riportata di seguito, la logica si sposta con una leggera curva anziché rimbalzare. I resistori utilizzati nel circuito sono resistori di pull-up.
Ogni volta che l'interruttore si sposta tra i contatti per creare il rimbalzo, il flip flop mantiene l'uscita perché lo "0" viene riportato dall'uscita delle porte Nand.
2.
L'RC è definito solo dal suo nome, il circuito utilizzava una rete RC per la protezione dal rimbalzo dello switch. Il condensatore nel circuito filtra le variazioni istantanee del segnale di commutazione. Quando l'interruttore è in stato aperto, la tensione ai capi del condensatore rimane zero. Inizialmente, quando l'interruttore è aperto, il condensatore si carica attraverso i resistori R1 e R2.
Quando l'interruttore è chiuso il condensatore inizia a scaricarsi fino a zero, quindi la tensione al terminale di ingresso del trigger di Schmitt invertente è zero, quindi l'uscita diventa ALTA.
Nella condizione di rimbalzo, il condensatore interrompe la tensione su Vin fino a raggiungere Vcc o Ground.
Per aumentare la velocità di antirimbalzo RC possiamo collegare un diodo come mostrato nell'immagine sottostante. Pertanto, riduce il tempo di ricarica del condensatore.
3. Attivare l'IC antirimbalzo
Sul mercato sono disponibili circuiti integrati per l'antirimbalzo degli interruttori. Alcuni dei circuiti integrati antirimbalzo sono MAX6816, MC14490 e LS118.
Di seguito è riportato lo schema del circuito per l'antirimbalzo dell'interruttore utilizzando MAX6818.
Quindi qui abbiamo imparato come i pulsanti creano l'effetto Switch Bouncing e come può essere prevenuto utilizzando i circuiti Switch Debouncing.