Quand utiliser des résistances à tirer par rapport aux résistances à tirer

42

Après avoir appris et expérimenté des microcontrôleurs, j'ai compris le concept de résistances montantes et descendantes. Je comprends maintenant quand, comment les utiliser et comment ils fonctionnent. J'ai principalement utilisé des tractions parce que j'ai appris à le faire, mais cela m'a toujours semblé un peu en arrière, car la fermeture du commutateur règle l'entrée MCU sur LOW. Je pense qu'il serait plus logique d'utiliser une résistance à résistance, de sorte que l'entrée soit LOW lorsque le commutateur est ouvert, mais ce n'est que ma façon de penser.

Devrais-je tirer mes entrées mono-jet vers le haut ou le bas? Quand est-il préférable de tirer vers le bas que vers le haut et vice versa?

osvein
la source
3
En tant que (nouvelle) abeille électronique, je dois dire que cette question n’est nullement stupide. Non pas devenir je ne sais pas non plus, mais parce que: "Consulté: 1989 fois".
Steenhulthin
* parce que * 12998 fois
Mike Causer le

Réponses:

29

La réponse dépend de ce que vous voulez que la configuration "par défaut" soit. Par exemple, supposons que vous avez un MOSFET à canal N en aval et que vous voulez le désactiver par défaut. Ensuite, vous utiliseriez une résistance de traction pour garantir ce comportement si l'entrée devient haute impédance.

schématique

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

D'autre part, supposons que vous avez un MOSFET à canal P en amont et que vous voulez le désactiver par défaut. Cette fois, une résistance de rappel est requise pour créer ce comportement.

schématique

simuler ce circuit

Il existe également le cas où vous voulez qu'un périphérique soit activé par défaut, auquel cas les deux cas ci-dessus seraient inversés (pull-up pour le MOSFET à canal N, pull-up pour le MOSFET à canal P).

Quelques autres considérations:

  1. Les lignes I2C spécifient des résistances de rappel parce que les dispositifs sont «supposés» avoir un drain ouvert à la terre et ont donc besoin d'un moyen d'augmenter le potentiel de ligne.

  2. Les comparateurs analogiques sont généralement configurés en tant que dispositifs à drain ouvert et ont donc également besoin de résistances de rappel pour obtenir un rendement de potentiel élevé.

  3. Vous pouvez consommer plus de courant à l'aide de résistances pullup / pulldown, en fonction de ce qui est connecté à l'entrée / la sortie.

  4. L'une ou l'autre configuration pourrait fonctionner de la même manière dans votre application (c'est-à-dire qu'il n'y a aucun avantage significatif dans un sens ou dans l'autre).

... et autant de raisons très spécifiques à une application pour lesquelles une configuration peut être préférée.

helloworld922
la source
16

Si le signal n'a pas encore de spécification, utilisez celle qui vous semble la plus sensée. Vous avez le choix de faire une entrée active-haute ou active-basse .

S'il s'agit de boutons, assurez-vous d'utiliser un circuit anti-rebond (ou utilisez le logiciel).

schématique

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

Samuel
la source
+1 pour la seule comparaison côte à côte entre actif-haut et actif-bas que j'ai vue. Nice, clarifie les choses.
TomServo
15

Si la conception de votre circuit est telle que vous pouvez choisir (en d'autres termes, le reste du circuit ne vous oblige pas à utiliser une liaison montante ou descendante), vous devez envisager la sécurité en cas de défaillance.

Si votre microcontrôleur tombe en panne, ou si cette sortie tombe en panne, le pull up ou le pull down sera effectif. Comment cela va-t-il changer le fonctionnement de votre appareil? Cela mettra-t-il l'utilisateur en danger, par exemple en forçant un élément chauffant? Cela affectera-t-il la sécurité, telle que la désactivation d'un verrou de porte?

Les résistances de tirage haut / bas déterminent l'état par défaut du fil. Le choix de l'état par défaut dépend de la sécurité, de la sécurité et enfin de la fonctionnalité souhaitée du circuit.

Adam Davis
la source
5

Si vous travaillez avec un Arduino / ATmega328, vous pouvez utiliser la résistance de rappel intégrée .

La puce Atmega intègre des résistances de rappel de 20K accessibles par logiciel. Pour accéder à ces résistances de rappel intégrées, définissez pinMode () comme INPUT_PULLUP. Cela inverse efficacement le comportement du mode INPUT, où HIGH signifie que le capteur est éteint et LOW signifie que le capteur est activé.

La valeur de ce pullup dépend du microcontrôleur utilisé. Sur la plupart des cartes basées sur AVR, la valeur est comprise entre 20 kΩ et 50 kΩ. Sur le Arduino Due, il est compris entre 50kΩ et 150kΩ. Pour la valeur exacte, consultez la fiche technique du microcontrôleur de votre carte.

Lors de la connexion d'un capteur à une broche configurée avec INPUT_PULLUP, l'autre extrémité doit être connectée à la terre. Dans le cas d'un commutateur simple, la broche lit HAUTE lorsque le commutateur est ouvert et LOW lorsque vous appuyez sur le commutateur.

Le Raspberry Pi les a aussi .

laktak
la source
4

Vous voulez souvent des tractions ou des baisses - souvent des baisses - sur les sorties de périphériques programmables tels que des microcontrôleurs pour définir leur état lors des séquences de mise sous tension. De telles sorties ont souvent une haute impédance à la mise sous tension et les appareils connectés peuvent obtenir des signaux inattendus si cela n’est pas fait. Si, par exemple, plusieurs alimentations sont impliquées, il est préférable de concevoir chaque section comme étant sécurisée avec zéro volt sur les entrées et d'utiliser des menus déroulants.

Un peu plus obscur que les autres réponses, mais j’ai vu des exemples impliquant de la fumée bleue et des menaces de poursuites judiciaires.

Dave B
la source
Précision: la question n'était pas de savoir pourquoi il fallait utiliser des résistances montantes ou descendantes, mais bien de choisir s'il fallait tirer vers le haut ou vers le bas.
Osvein