Est-il possible d'utiliser juste un condensateur pour faire rebondir un bouton?

19

Je me demandais: pourquoi ne pouvez-vous pas simplement raccorder un condensateur à un bouton pour le rebondir? J'ai cherché à réduire le travail que mon microprocesseur doit faire, mais j'ai un espace très limité sur un PCB que je conçois, donc je ne veux pas faire un circuit anti-rebond à part entière qui compliquerait la conception.


schématique

simuler ce circuit - Schéma créé à l'aide de CircuitLab


C'est un exemple de circuit; désolé pour toute erreur (je ne suis pas bon dans la conception de circuits avec des condensateurs). Cela fonctionnerait-il même? Pour le commutateur d'amure, je n'ai pas pu trouver celui qui correspond à ce qu'il est dans la vie réelle, mais cela fonctionne pour cette situation. Le bouton est comme celui que l'on trouve ici . D10représente Digital Pin 10, mais cela n'a pas d'importance; cela signifie simplement l'entrée Arduino. Je ne sais pas non plus quelle taille de condensateur j'aurais besoin, donc si ce circuit fonctionne, de quelle taille ai-je besoin?


Encore une fois, j'essaie simplement de simplifier cela pour le rendre plus facile à construire sans avoir à faire de rebond de logiciel. En regardant le fonctionnement des condensateurs, cela semble fonctionner, mais cela pourrait également allonger / retarder le bouton si la capacité est trop grande. Ils sont couramment utilisés pour "lisser" le bruit dans les alimentations, n'est-ce pas une chose similaire où il "adoucit" le rebond? Toute modification du circuit pour le faire fonctionner (si nécessaire) serait également appréciée.

Pingouin anonyme
la source
1
Voici où nous en avons discuté auparavant: electronics.stackexchange.com/questions/6884/…
Andy aka
5
Vous rendez-vous compte que vous pouvez annuler une entrée simplement en l'interrogeant avec un intervalle d'au moins 50 ms? Moins de travail à faire pour votre aduino :)
Wouter van Ooijen
1
50 milli secondes suffiraient - bon point MO
Andy alias
1
Non, je veux dire interroger avec un intervalle d'au moins 50 ms et faire tout ce que vous devez faire en fonction du niveau que vous détectez.
Wouter van Ooijen
1
@AnnonomusPerson - un delay () dans un environnement à thread unique signifie que rien d'autre ne peut se produire. Bien que ce soit une option, une autre consiste à effectuer d'autres travaux utiles jusqu'à ce qu'il soit temps de vérifier à nouveau.
Chris Stratton

Réponses:

12

Cela dépend de l'état par défaut du commutateur. Un condensateur ne se charge que lorsque vous lui donnez une tension positive. Habituellement, dans un environnement intégré, nous utilisons un pull-up pour donner à une broche un état haut par défaut, et relions le commutateur à la masse. L'ajout d'un condensateur n'aidera pas ici, car il ne "stockera" pas l'état fondamental.

Cependant, vous pouvez également utiliser un menu déroulant. Cela signifierait que la broche est par défaut faible. Le faire haut en appuyant sur l'interrupteur, chargera le condensateur. Après avoir relâché, le condensateur maintiendra la broche haute pendant un petit moment, alors oui, cela fonctionnerait. Je ne sais pas si 1uF est suffisant, trop petit ou trop, je vous recommanderais de regarder avec une portée et de l'essayer un peu.


la source
Donc, si je changeais le +et -ça marcherait?
Pingouin anonyme
@AnnonomusPerson cela dépend. Quel est l'état par défaut du commutateur?
Vous voulez dire quand il n'est pas pressé s'il conduit l'électricité? Si c'est ce que vous voulez dire, je peux le faire dans les deux cas en raison de la nature du commutateur que j'utilise. En regardant le lien dans ma question, lorsqu'il n'est pas enfoncé, le bouton conduit à partir de top left to the bottom leftet the top right to the bottom right. Lorsqu'il est pressé, il conduit à partir du top left to the bottom right, et du top right to the bottom left.
Pingouin anonyme
D'accord. Cela signifie que vous voulez par défaut que la broche soit basse. L'interrupteur doit entrer en contact avec +, de sorte que le condensateur se charge avant de relâcher le bouton.
3
@AnnonomusPerson Non, le commutateur doit prendre contact avec +. C'est un peu du jargon pour savoir à quoi le commutateur se connectera lorsqu'il est enfoncé . Le condensateur est au bon endroit. La résistance serait mieux connectée de la masse à la broche IO directement.