Guide ultime pour anti-rebond de commutateur (partie 3)
MaisonMaison > Blog > Guide ultime pour anti-rebond de commutateur (partie 3)

Guide ultime pour anti-rebond de commutateur (partie 3)

Jun 15, 2024

Dans la première partie de cette mini-série, nous avons introduit le concept de rebond de commutateur ; c'est-à-dire que lorsque nous ouvrons (désactivons) ou fermons (activons) un commutateur, il peut effectuer plusieurs transitions avant de finalement s'installer dans son nouvel état (voir aussi mes colonnes Types de commutateur et Terminologie des commutateurs). Nous avons également noté que cela se produit dans les interrupteurs à bascule, les interrupteurs à bascule, les interrupteurs à bouton-poussoir, etc. – à peu près tout, à l'exception des interrupteurs que la plupart d'entre nous n'utilisent jamais de toute façon, comme les interrupteurs à inclinaison au mercure, par exemple.

Dans la deuxième partie, nous avons approfondi les rebondissements associés aux interrupteurs à bascule unipolaires, unidirectionnels (SPST) et unipolaires, double direction (SPDT), y compris des données empiriques sur la durée pendant laquelle le rebond des interrupteurs peut persister, la largeur du rebond. que peuvent être les impulsions de rebond individuelles et le nombre de rebonds auxquels nous pouvons nous attendre. Nous avons également souligné que quelle que soit la technique que nous utilisons pour traiter le rebond du commutateur – en prétraitant le signal dans le matériel ou en le post-traitant dans le logiciel – il est important que la technique ne soit pas trompée par les « glitch » ou les « pics » de bruit occasionnels. causée par la diaphonie, les EMI (interférences électromagnétiques), les RFI (interférences radioélectriques) ou les ESD (décharge électrostatique).

La solution de rebond de commutateur ne doit pas être trompée par le bruit (Source de l'image : Max Maxfield)

Dans ce diagramme, la résistance R1 agit comme une résistance de rappel. Lorsque l'interrupteur est ouvert, R1 tire le signal NON jusqu'à une valeur +ve (logique 1). Lorsque l'interrupteur est fermé, il court-circuite le signal NON à 0 V (0 logique).

Maintenant, dans la troisième partie, nous sommes arrivés au point où « le caoutchouc rencontre la route », métaphoriquement parlant. C'est là que nous commençons à envisager diverses solutions pour nos commutateurs rebondissants.

Matériel vs logiciel (un peu d'histoire)

Lorsque les microprocesseurs sont apparus pour la première fois vers le début et le milieu des années 1970, il y avait un nombre relativement important d'ingénieurs en conception de matériel électronique, mais relativement peu de développeurs de logiciels, et la plupart des gars et des filles qui connaissaient les logiciels travaillaient sur le « grand fer» sur des ordinateurs centraux ou sur des mini-ordinateurs.

À cette époque, les microprocesseurs étaient limités en termes de mémoire et de cycles d'horloge (c'est-à-dire qu'ils avaient des fréquences d'horloge relativement basses, de sorte que chaque cycle d'horloge était précieux). Une grande partie de la programmation a été minutieusement réalisée à l'aide du langage assembleur et, juste pour augmenter le plaisir et la frivolité, une grande partie du code a été créée par des ingénieurs de conception matérielle qui n'étaient généralement pas familiarisés avec la programmation en général et avec les bonnes pratiques de programmation en particulier.

Tout ce qui précède explique pourquoi la plupart des premières solutions au problème de rebond des commutateurs étaient basées sur le matériel – mais attendez, il y a plus…

La série 74xx de circuits intégrés logiques transistor-transistor (TTL) de Texas Instruments (TI) est apparue pour la première fois sur la scène au milieu des années 1960. Dans les années 1970, les cartes de circuits imprimés (PCB) équipées de ces appareils – et de familles similaires d'autres fournisseurs – étaient omniprésentes.

Chaque appareil 74xx contenait généralement une poignée de portes ou fonctions logiques Jellybean. Par exemple, le 7400 contenait quatre portes NAND à 2 entrées ; le 7474 contenait deux bascules de type D déclenchées par front positif, chacune avec son propre préréglage asynchrone et son propre effacement ; et le 74118 contenait six loquets SR.

Le fait est qu’un PCB pouvait contenir des centaines de ces appareils 74xx et, presque invariablement, certaines fonctions restaient inutilisées – une porte NAND ici, un verrou SR là, peut-être même une bascule de type D qui manquait.

Les ingénieurs en conception matérielle considéraient ces fonctions logiques non validées comme étant un « jeu équitable » à utiliser pour anti-rebond de leurs commutateurs. Un petit problème, pour ainsi dire, est qu'il n'était pas rare que chaque commutateur soit anti-rebond en utilisant une technique différente en fonction de la personne qui effectuait la conception et des portes logiques et fonctions restantes disponibles. .

Au fil du temps, la logique numérique a été de plus en plus regroupée dans un nombre toujours plus restreint d'appareils, réduisant ainsi le nombre de fonctions simples de « logique de collage » qui devenaient de rechange. En outre, la taille de la mémoire des microprocesseurs a augmenté, les fréquences d'horloge ont augmenté et de plus en plus de personnes ont commencé à développer des logiciels.