Convertisseur de niveau logique utilisant des transistors


8

J'essaye de faire un convertisseur de niveau logique en utilisant le transistor BC547. Il s'agit de convertir le niveau de tension de Rpi Gpio de 3,3 à 5V. J'ai câblé le circuit selon ce schéma: entrez la description de l'image ici

J'ai fait cela pour convertir 3,3 V en 5 V pour une application PWM. J'ai connecté le circuit au GPIO no 17 et je l'ai placé haut

Questions :

1) pourquoi n'y a-t-il pas de terre dans le circuit?

2) J'ai essayé de mesurer la tension à l'autre extrémité par rapport à la masse, ne montre rien. Quel est le problème?

Merci.


1
Veuillez clarifier # 2. Autre extrémité de quoi par rapport à quoi et quelle tension est à l'autre extrémité .. quoi que ce soit .....
Trevor_G

@Trevor c'est un convertisseur bidirectionnel, j'ai donc connecté le gpio à l'extrémité 3v du convertisseur et je m'attends à obtenir 5v à l'extrémité 5v du convertisseur lorsque gpio est réglé sur haut. tension par rapport à la masse de rpi .. je suis trop confus sur celui-ci !!
Mr.Sky

1
@Trevor Nah. Ce n'est pas aussi mauvais que vous l'imaginez, je pense. Essayez-le avec du piquant et voyez ce que vous en pensez. À peu près aussi propre (et moche) dans les deux sens.
jonk

1
@Trevor Tout ce que je voulais dire, c'est que le deuxième BJT n'ajoute pas grand-chose d'utile. Maintenant, il y a une différence entre le front montant et le front descendant. Mais je suis presque sûr que cela ne s'améliore pas avec le BJT supplémentaire. Je devrais cependant vérifier.
jonk

1
@Trevor Soit dit en passant, la façon dont le schéma est présenté est terrible pour essayer de le comprendre. C'est aussi une description terrible et complètement inutile de «chiens avalant des queues». C'est presque comme si c'était intentionnellement destiné à mystifier plutôt qu'à clarifier.
jonk

Réponses:


15

Je déteste ajouter une réponse ici, d'autant plus que l'OP n'a même pas besoin d'une opération bidirectionnelle. Mais le circuit est terriblement aménagé (pour le comprendre.) Et la description des chiens et des queues n'aide pas , à l'exception peut-être des alchimistes essayant d'écrire des morceaux allégoriques et mystifiants de leur "art".

(Il existe des termes partagés, développés au fil du temps et utilisés en électronique pour aider à communiquer. Un "pull-down" pourrait être un tel exemple. Mais ils ont survécu à l'épreuve du temps et ils communiquent en utilisant l'idée générale de tirer sur un nœud , ce qui n'est pas difficile à communiquer lorsque quelqu'un demande et essaie d'apprendre le terme. Et il peut être facilement adapté pour discuter de "tirer plus fort", par exemple, sans perte de sens. L'idée de faible et de fort est communément admise , tout comme l'idée de tirer, et celles-ci sont facilement applicables une fois que quelqu'un a acquis les idées de la loi d'Ohm, de la tension, du courant et de la résistance.)

Une façon d'utiliser un BJT pour le changement de niveau consiste à l'utiliser dans un mode de base commune. Il suffit de câbler la base à un rail et de «tirer vers le bas» sur son émetteur. Vous pouvez placer la résistance à la base ou à l'émetteur. Il ne reste plus qu'à utiliser un pull-up sur le collecteur. Étant donné que nous espérons atteindre une utilisation bidirectionnelle, la résistance sera placée à la base.

Voici un exemple pour passer d'un 3V sortie logique vers un 5V entrée logique:

schématique

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

En allant dans l'autre sens, il est très tentant d'utiliser une approche symétrique:

schématique

simuler ce circuit

Mais ça ne marche pas. Pourquoi? Parce que la base a5V à sa disposition et le pull-up du collecteur est accroché à une tension plus basse, 3V. Cela signifie que la diode de base-collecteur (qui n'est plus communément montrée sur le symbole, même si c'était autrefois lorsque les BJT étaient eux-mêmes fabriqués de manière plus symétrique) peut être (et sera) polarisée en direct. Donc, quand le BJT est censé être éteint , ce n'est pas le cas. Au lieu de cela, il y a une diode polarisée vers l'avant coincée entre5V et 3Vavec deux résistances pour limiter le courant. Ainsi, la sortie sera à une certaine valeur intermédiaire ci-dessus3V mais pas tout à fait 5V.

La symétrie échoue.

C'est facile à réparer. Nous pouvons simplement revenir à la tension de base3V:

schématique

simuler ce circuit

Et ça marche.

Supposons que vous vouliez rendre cette bidirectionnelle. Pourriez-vous simplement utiliser deux de ces circuits, un pour chaque direction?

schématique

simuler ce circuit

Et la réponse est oui, vous le pouvez. En fait, ce que j'ai fait est simplement de reproduire ce circuit de queue de chien-manger que l'OP a présenté. C'est la même chose. Mais maintenant, vous pouvez voir la progression qui y a conduit. Et ce n'est plus aussi déroutant que quelque chose de queue de chien étrange et croisée. Ce ne sont que deux circuits élaborés individuellement réunis en un seul plus grand.

Mais vous souvenez-vous du problème antérieur avec le mauvais circuit? Le fait qu'il y ait une diode de collecteur de base sournoise qui a causé un mauvais fonctionnement du circuit? Ce fait devrait nous rappeler que tous les BJT peuvent également fonctionner en mode rétro-actif. Ce faisant, en particulier avec les conceptions asymétriques modernes pour leurs collecteurs et émetteurs, signifie que leβdans un mode sera différent de l'autre (parmi quelques autres différences.) Mais cela ne signifie pas qu'ils ne fonctionnent pas.

Et si nous revenions à notre premier circuit et ajoutions simplement ce pull-up supplémentaire:

schématique

simuler ce circuit

Est-ce que cela fonctionnerait? La réponse est oui, cela fonctionnera en effet. La seule question qui reste pourrait être de savoir de quelle manière pointer l'émetteur. Et c'est là qu'une bonne réponse "dépend". Il y a des problèmes de stockage de charges à prendre en compte, par exemple. (Et c'est une raison pour laquelle il y a une différence de comportement entre le front montant et le front descendant montré dans le graphique par l'OP.) La réponse dépendra de ce qui vous intéresse car il y aura des considérations de front montant vs front descendant et aucune réponse particulière n'est toujours correcte. Pour mes besoins ici, je vais éviter de traîner cela plus loin et laisser plutôt cette question comme quelque chose à méditer. Il suffit que ce circuit fonctionne malgré tout.


Remarque : La valeur réelle des résistances utilisées dans les circuits ci-dessus ne signifie pas que ce sont les seules bonnes valeurs à utiliser dans certaines circonstances particulières. En règle générale, les sorties numériques peuvent descendre plus de1mA du courant de commande et, typiquement, les entrées numériques diminueront considérablement 100μUNE. Mais ces hypothèses peuvent être erronées pour des cas spécifiques. Cependant, il n'est pas difficile d'ajuster les détails. Donc, l'idée de base peut toujours s'appliquer, bien qu'avec des changements raisonnés dans les valeurs de résistance.


Il y a plus de mesures que l'on pourrait prendre maintenant. Et Trevor a trouvé un bel exemple de l'endroit où l'on pourrait se diriger. Je vais l'inclure ici afin de capturer ce résultat. Ça vaut le coup. Les personnes intéressées peuvent considérer le pourquoi et le comment. Sans plus d'explications de ma part, profitez de l'ajout de Trevor ci-dessous:

entrez la description de l'image ici


bon travail .. voici une autre version de la même chose qui superpose deux npns pour le rendre plus uniformément bidirectionnel. i.cmpnet.com/planetanalog/features/Maxim_Level/FigSB5.gif
Trevor_G

1
@Trevor Nice catch. Cela me donne presque envie d'ajouter un autre groupe de paragraphes et de diagrammes progressifs à ma réponse afin d'atteindre ce résultat final (qui vaut la peine d'être inclus.) Mais mon temps est écoulé, je pense. Je pense donc que je vais simplement télécharger votre offre dans ma réponse, sans beaucoup de commentaires, juste en la capturant. Merci!
jonk

Fait intéressant, cela revient presque à notre point de départ. Chassant les transistors de queue, mais avec une base commune.
Trevor_G

1
Vous m'avez inspiré pour mettre à jour ma propre réponse .. :)
Trevor_G

1
@jonk J'ai littéralement pris des notes sur cette réponse et construit le circuit, cela a fonctionné dans les deux sens !! Merci, messieurs, vous Rock !! :)
Mr.Sky

9

Il s'agit d'un convertisseur couplé à un émetteur et, en tant que tel, ne nécessite aucune connexion à la terre.

REMARQUE L'étiquetage schématique est un peu ambigu. "Système 3V" et "Système 5v" sont les signaux logiques. + 5V et + 3V sont les rails d'alimentation logique.

Lorsque vous tirez l'un des côtés vers le bas, vous tirez vers le bas l'émetteur du transistor opposé, ce qui l'allume en tirant la sortie opposée vers le bas.

Les tractions internes gèrent les états logiques élevés.

Soit dit en passant, le point au sol est IMPLICITE sur ce schéma. C'est ce à quoi + 3V et + 5V sont référencés.

Inspiré par la réponse de Jonk, j'ai redessiné le schéma de cette façon pour le rendre un peu "plus clair".

schématique

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

Mais, en réalité, R3 et R4 peuvent être combinés, et les deux transistors deviennent un transistor bidirectionnel.

schématique

simuler ce circuit

Ce qui vous amène à peu près au même endroit que la réponse de Jonk.


Où dois-je mesurer pour obtenir une tension de sortie de 5 V?
Mr.Sky

Le système 5v et le système 3V sont les signaux logiques.
Trevor_G

1
@ Mr.Sky Votre terrain .. qui je suppose est commun aux deux côtés.
Trevor_G

2
Ça a marché !! Merci beaucoup! c'était un problème matériel. La tension devait être mesurée entre la broche de sortie et la masse elle-même!
Mr.Sky

1
@Trevor a accepté d'accepter cette réponse. Maintenant qu'il sait que ce n'est qu'une seule direction, il devrait aller chercher les réponses passées. Il a été répondu ici plusieurs fois (par moi une ou deux fois, sans compter les autres.) Il n'y a donc pas vraiment besoin d'une autre question à ce sujet.
jonk
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.