Je veux comprendre le concept de ports à drain ouvert comme le port P0 du microcontrôleur 8051. Pourquoi devons-nous connecter des résistances de tirage au port P0?
J'ai une connaissance de base des MOSFET et d'autres appareils électroniques.
Je veux comprendre le concept de ports à drain ouvert comme le port P0 du microcontrôleur 8051. Pourquoi devons-nous connecter des résistances de tirage au port P0?
J'ai une connaissance de base des MOSFET et d'autres appareils électroniques.
Réponses:
Ignorer les tenants et aboutissants du fonctionnement des mosfets. La sortie agit comme un interrupteur à la terre. Il ne peut pas produire seul un signal élevé (+ 5V). La résistance de rappel est utilisée de sorte que lorsque l'interrupteur est ouvert, la sortie sera élevée. Lorsque l'interrupteur est fermé, la sortie sera faible (0 V)
Il existe deux applications courantes de drain ouvert (ou open-collector, dans le cas des BJT):
1) Connexion de plusieurs sorties à la même ligne. C'est ce qu'on appelle un OU câblé. Par exemple, vous pouvez avoir une broche de réinitialisation normalement élevée sur un appareil, qui est réinitialisée à la fois à partir d'une broche de microcontrôleur et d'une autre source, par exemple un bouton-poussoir. La broche de réinitialisation est attachée haut avec une résistance de rappel. Le microcontrôleur est configuré comme une sortie à drain ouvert. Le bouton-poussoir est attaché au sol lorsqu'il est poussé. Si le microcontrôleur ramène sa sortie à 0 ou si le bouton-poussoir est enfoncé, l'appareil sera réinitialisé.
Notez que lorsque le microcontrôleur définit sa broche de sortie sur 1, la broche est en effet déconnectée de la ligne. Il ne conduit pas la ligne ("sourcing") avec aucune tension, donc quand le bouton-poussoir tire la ligne à la terre, il n'y a pas de court-circuit.
Parce que la configuration OU filaire est si utile, c'est pourquoi les broches telles que les réinitialisations sur un microcontrôleur, les lignes d'interruption, les lignes claires et activées sur des appareils tels que les bascules, sont toutes "actives basses" - ce qui signifie qu'elles sont normalement attachées haut (encore une fois , via une résistance de rappel), et l'un quelconque de plusieurs appareils configurés en drain ouvert peut les tirer vers le bas. Ces entrées sont généralement désignées comme actives-basses avec soit une barre en haut du nom du signal, soit un début! (! CLR) ou un signe # de fin (CLR #).
2) Dispositifs de contrôle connectés à différentes tensions d'alimentation. Disons que vous avez un relais qui nécessite 20 mA, mais une tension de 5 volts. Mais la sortie de votre microcontrôleur ne peut conduire que des broches jusqu'à sa tension d'alimentation (VCC) de 3,3 V. Avec une sortie à drain ouvert, vous pouvez connecter un côté du relais à 5 V et l'autre à la broche de sortie du microcontrôleur. Lorsque la sortie du microcontrôleur est à 1, rien ne se passe (encore une fois, agit comme si la broche était déconnectée). Lorsqu'il est réglé sur 0, cela met à la terre le côté inférieur du relais complétant le circuit et actionnant le relais. Dans une telle application, il est important de placer une diode "fly-back" à travers la bobine de relais pour éviter d'endommager le microcontrôleur lorsque l'appareil est hors tension.
Pour les pilotes de sortie comme l'ULN2803 (réseau de transistors Darlington), vous pouvez piloter des charges connectées à des tensions aussi élevées que 50 V et les contrôler avec une entrée compatible logique.
a microcontroller can often sink more current (drive to ground) than it can source (drive to the VCC of the microcontroller)
Ce n'est plus vrai avec le microcontrôleur CMOS moderne
Une sortie drain ouvert n'est qu'un interrupteur ouvert connecté à 0V. Pour y faire passer du courant, vous devez y injecter du courant et cela peut être fait avec une résistance de rappel. Si vous ne passez pas de courant dans la broche, vous ne pourrez pas voir de tension: -
Voici deux appareils partageant la même sortie à drain ouvert - notez la résistance de rappel à + 5V. En fait, ce circuit utilise "open-drain" pour exécuter la logique - si l'une des portes NAND est "activée" avec 1,1, elle ramènera le BUS à 0V. Ainsi, la logique délivrée au BUS est
INVERSE de BUS = AB + CD
Les MOSFET sont généralement utilisés comme dispositifs à drain ouvert, bien que les BJT ordinaires puissent également remplir cette fonction. Une sortie à drain ouvert est une simplification d'une sortie CMOS régulière - elle est rapide à mettre sous tension, mais elle sera plus lente sur le chemin du retour vers + Logic en raison des temps de charge des condensateurs parasites à travers la résistance de pull-up.
Open collector sur wiki est une bonne lecture - il fait la même chose que open drain et est mentionné dans l'article, tout comme le petit diagramme ci-dessus.
1) Pour simplifier le premier point de la réponse de tcrosley, l'avantage de ne pas fournir la résistance de pull-up à l'intérieur d'une sortie est la possibilité de partager cette résistance très pull-up entre plusieurs sorties. Les sorties sont ensuite câblées en parallèle et toutes connectées à la résistance partagée et à la masse.
2) Le point «en dessous» de la résistance (dans les schémas) est l'endroit où la sortie combinée est collectée par d'autres parties du circuit. (Bien sûr, tout aurait pu être l'inverse en ce qui concerne le sol et l'approvisionnement.)
3) Si vous ne souhaitez pas collecter la sortie combinée de nombreuses sorties (et que le circuit utilise la même alimentation en tension partout), vous ne voulez pas utiliser les sorties sans pièces de rappel. Sinon, vous obtenez (en quelque sorte) des sorties «incomplètes», que vous pouvez personnaliser selon vos besoins.