J'ai besoin d'un moyen d'inverser un signal numérique, c'est-à-dire que si l'entrée est élevée, je veux que la sortie soit faible et si l'entrée est faible, je veux que la sortie soit élevée.
Je pense que cela peut être accompli avec un seul transistor PNP, mais je voulais vérifier cela ici. Les tensions auxquelles je fais face sont inférieures à 5 V.
transistors
digital-logic
Matt Ruwe
la source
la source
Réponses:
Ou, puisque vous parlez de signaux numériques de toute façon, vous utilisez un onduleur .
A
est l'entrée (pour les portes avec plus d' entrées qui serontA
,B
,C
, etc.),Y
est la sortie. Si cela ne complique pas trop votre schéma, placez le symbole avec l'entrée à gauche.NXP a des onduleurs à porte unique . Seulement quatre connexions: alimentation, masse, entrée et sortie.
Cela peut être fait avec un transistor et deux résistances. C'est un schéma simple, mais vous devez encore faire quelques calculs simples. Vous aurez exactement les mêmes connexions qu'avec l'onduleur.
BTW, un PNP est une option, mais le plus souvent un NPN sera utilisé.
modifier (re votre commentaire)
Si le signal d'entrée est élevé, un courant passera par R2 et la jonction base-émetteur du transistor (base, pas grille). Ce courant sera amplifié et le courant du collecteur passant par R1 provoquera une chute de tension de sorte que la sortie sera faible. Entrée haute, sortie basse.
Si le signal d'entrée est faible, il n'y aura pas de courant de base et pas de courant de collecteur. Aucun courant passant par R1 signifie aucune chute de tension, de sorte que la sortie sera à + V. Entrée basse, sortie haute.
Cela mène déjà un peu plus loin, mais comme je l'ai dit en commentaire à Sandun la sortie est très asymétrique. Si la sortie est connectée à un condensateur, un niveau de sortie élevé signifierait que le condensateur est chargé via R1, ce qui entraînera une pente exponentielle avec une constante de temps R1C. Lorsque la sortie devient faible, le condensateur sera déchargé par une résistance beaucoup plus faible et la pente sera beaucoup plus raide. Vous n'obtiendrez pas cette différence avec les portes CMOS, qui ont des capacités symétriques source / puits.
L'entrée de la version à transistor consommera également (un petit) courant lorsqu'elle est élevée. La version CMOS n'aura qu'un faible courant de fuite à la fois haute et basse.
Dans l'ensemble, la porte logique intégrée est la gagnante.
la source
Oui, cela peut être accompli avec un seul transistor et une seule résistance, mais il existe des puces spécialement conçues pour inverser les signaux numériques. Curieusement, ils sont appelés onduleurs . Découvrez le 74HC04, par exemple. Cela vous donne six onduleurs séparés dans un seul boîtier à 14 broches. Il existe également des onduleurs simples (et d'autres petites portes logiques) disponibles dans de petits boîtiers SOT-23, qui sont les mêmes transistors individuels.
Il n'y a aucune raison d'essayer de fabriquer votre propre onduleur, mais oui, c'est possible.
Ajouté en réponse au commentaire:
Comme je l'ai dit, un seul transistor bipolaire peut être utilisé comme base pour un simple onduleur. Au minimum, vous avez besoin du transistor et d'une résistance de base. Pour être complet, j'ajouterai également une résistance de charge de sortie, que vous devez supposer nécessaire à moins que vous ne sachiez que ce qui sera connecté à la sortie fournira la charge nécessaire. Le transistor PNP n'a rien de magique en particulier. Un NPN peut également être utilisé. Voici comment chacun serait utilisé:
Notez que chacun a 4 connexions: alimentation, masse, entrée et sortie. La différence entre les deux est la direction dans laquelle il charge l'entrée et la direction dans laquelle la sortie est activement entraînée par rapport à la traction passive de la charge. Si vous ne vous souciez pas de ces problèmes, les deux circuits sont fonctionnellement équivalents.
Cependant, c'est plus simple:
Il est également plus rapide, consomme moins d'énergie en régime permanent, a une impédance d'entrée plus élevée et est plus petit. Il a les mêmes quatre connexions que les onduleurs ci-dessus. Des grilles simples comme celle-ci sont disponibles dans les boîtiers SOT-23, qui sont les mêmes transistors simples que ceux fournis. Cela ne nécessite qu'une seule partie externe, le capuchon de dérivation. Il n'a pas besoin de résistance de charge car sa sortie fonctionne activement dans les deux sens.
Vraiment, pour une inversion générale des signaux numériques, fabriquer son propre onduleur est idiot pour les applications normales.
Hors sujet à part sur le dessin schématique:
Le script n'est vraiment que de trois lignes. Voici le dossier complet:
C'est un script unique très spécifique, mais qui fonctionne assez bien à cet effet. Dans Eagle, j'exporte le schéma vers le fichier image \ temp \ a.tif, exécutez le script qui crée \ temp \ b.gif. Le paramètre Eagle pour l'exportation d'image est 600 DPI et monochrome. Vraiment, c'est tout ce qu'il y a à faire. Cela semble probablement plus compliqué qu'il ne l'est.
la source
Voici quelques valeurs de résistance qui fonctionnent pour les signaux CMOS:
J'ai trouvé ce fil parce que je voulais câbler un ancien "LCD Digital Backpack" à un Arduino. L'Arduino émet des signaux série positifs et le sac à dos numérique veut des signaux inversés. La nouvelle version du contrôleur LCD a un cavalier inversé / non inversé, mais pas le mien. De même, il est possible de générer des signaux série inversés via un logiciel, mais cela implique l'exécution d'une bibliothèque non standard. Je voulais utiliser les
Serial.write
commandes standard .J'ai initialement câblé l'un des 4 NOR d'une porte quad NOR 4001 CMOS en tant qu'onduleur, mais cela prend beaucoup de place sur ma planche à pain, et puisque vous êtes censé relier toutes les entrées inutilisées à la terre, implique beaucoup de câblage. (Je pense que je devais connecter toutes sauf 3 des 14 broches du boîtier; tout sauf les sorties des 3 NOR non utilisés.)
Je voulais une solution plus simple à câbler. J'ai utilisé le circuit fourni par @stevenvh.
Lié ici:
J'ai affaire à une logique CMOS 5V à 9600 bauds, donc l'impédance d'entrée est très élevée / le courant est très faible. Comme je ne commute qu'à 9600 bauds, je ne pense pas que le comportement asymétrique de l'onduleur à transistor me fasse beaucoup de mal.
J'ai trouvé qu'une résistance de 100K sur l'entrée (R2 dans le diagramme de Stevenvh) fonctionnait et j'ai utilisé une résistance de 3,3k comme résistance de pull-up à R1. Sur la base de mes calculs (I = V / R, 5/3300), cette configuration tirera <= 1,5 mA à l'état ON (un peu moins en raison de la résistance interne du transistor.) Je pourrais brancher un pot et voir la taille une résistance que je peux m'en tirer avec un écran LCD toujours recevoir un signal.
la source
Voici comment vous le faites à la manière CMOS:
simuler ce circuit - Schéma créé à l'aide de CircuitLab
La tension du rail d'alimentation peut aller aussi haut que vous le souhaitez tant qu'elle est inférieure à la tension de claquage de la porte.
la source