Convertir niveaux logiques (level shifter)

Bonjour,
je débute dans l'électronique et j'ai besoin de convertir les signaux 5v de l'Arduino en 3.3v. J'ai donc testé deux puces mais pas certain de savoir comment bien les utiliser:

CD4050BE :

Vcc : 3.3V
A: Sortie D13
Vss: GND

Si je lis la tension entre G et GND j'obtiens 4,4v mais si je ne connecte rien sur Vss, je lis 3v. Faut-il donc connecter le GND de l'Arduino sur Vss de la puce ? Je suis plus proche des 3.3v si je ne le fait pas mais alors pourquoi faire cette broche ?

HW-221 :

Si je reproduis ce qu'il y a sur ce schéma, je lis 2,9V mais si je connecte le GND de l'Arduino sur GND de la puce je n'ai plus que 2v...

Au final, je n'obtiens jamais 3.3v :frowning:

Wally06:
Bonjour,
je débute dans l'électronique et j'ai besoin de convertir les signaux 5v de l'Arduino en 3.3v. J'ai donc testé deux puces mais pas certain de savoir comment bien les utiliser:

Bonjour
La 1ere question à se poser est peut etre : ai je vraiment besoin de level shifter de "course" ?
dans la majorité des cas une translation 5V-3.3V peut etre realisée par un simple pont diviseur et les entrées d'un MCU "5V" reagissent correctement avec des signaux 3.3v

C'est juste plus simple pour tout connecter / déconnecter facilement quand il y en a plusieurs à convertir.

Je ne veux rien fabriquer de concret, je me pose des questions c'est tout, comme s'il faut brancher la sortie GND de l'arduino sur ces composants? Même si on peut le faire avec des ponts diviseurs, ces deux composants existent et ne semblent pas faire leur job, je me demande juste pourquoi, bref c'est plus expérimental

Ce que l'on appelle le "courant électrique" est une circulation d'électrons.
Pour que les électrons circulent il faut un circuit fermé.
Dans une installation de chauffage central l'eau revient vers la chaudière, pour les électrons c'est pareil. Et quand il y a deux chaudières les chaudières sont en général reliées au niveau ou la température de l'eau est la plus froide.

Avec deux alimentations c'est du même ordre : on mélange deux circuits.
Les électrons doivent pouvoir circuler entre les deux circuits.
C'est pour cela qu'il est impératif que les alimentation 5V et 3,3V aient un point commun.

La "seule bonne" solution est de relier systématiquement les masses des deux alimentations.

La seule exception est quand on a besoin d'avoir deux alimentions totalement indépendantes (on parle d'isolement galvanique).
Dans ce cas on remplace le courant d'électron par une liaison par fluide.
Magnétique avec l'utilisation de transformateurs (c'est devenu très rare aujourd'hui) ou lumineux avec des opto coupleurs.

Merci pour l'explication avec analogie, je me doutais bien qu'il faut utiliser et connecter les masses au UNO, c'est juste que les mesures observées ne sont pas celles attendues lorsque c'est fait: Au lieu de 3,3V j'obtiens 4,4V sur CD4050, et 2V sur HW-221... Je pensais que c'était mon multimètre qui déconnait mais quand je mesure directement les pins 3,3V-GND du UNO, là j'ai bien 3.3V. Bref, j'en conclue que ce n'est pas du matériel fiable

.... Ou que le montage de test et/ou la méthode de mesure ne sont pas appopriés.....

Ls CD5050 rendent service sur de nombreuses cartes pour interfacer des embases SD ou des afficheurs a des microcontrolleurs sous 5v. C'est fiable.

Idem en bidirectionnel pour les circuits intégrés TXS0108 qui semblent équipper les modules HX-221

Bref, j'en conclue que ce n'est pas du matériel fiable

Avec une longue expérience des labos d'électronique je certifie que le matériel est plus fiable que celui qui le manipule, et quelque soit le nombre d'années d'expérience, hélas.

Avant de mettre en cause le matériel je me suis toujours posé la question : qu'est ce que tu as encore fait comme connerie.

+1
L'interface chaise-maquette est souvent prise en défaut , surtout si elle n'étudie pas les notices des composants

CD4050 et TSX0108 : fiables en adaptation de niveaux logiques, unidirectionnel pour l'un (Rx, Tx, bus SPI) bidirectionnel pour l'autre.(bus I2C..)

resolu

quel est le niveau logique de OE ?

En fait, le tuto que j'ai suivi et qui fourni le schéma plus haut est erroné. OE doit être HIGH pour que les sorties soient activées, et là j'obtiens 3,4V. Reste maintenant à régler le problème du CD4050...

https://ibb.co/hXmfVQp

En fait, le tuto que j'ai suivi et qui fourni le schéma plus haut est erroné. OE doit être HIGH pour que les sorties soient activées

Preuve qu'il ne faut jamais faire confiance aveuglément.
Preuve aussi que la lecture de la datasheet est INDISPENSABLE

Prochaine étape :
Moteur de recherche et : CD4050 datasheet

Toujours préférer les liens vers le fabricant du produit, les exemplaires des datasheets sur les sites marchands sont rarement à jour.

Un bon site pour obtenir les datasheet :
http://www.datasheetcatalog.com/

C'est du sérieux, le seul inconvénient est qu'il ne référencie que les fabricants sérieux, là le CD4050 est référencé mais pour les obscurs CI chinois il faut souvent se contenter de ce que l'on trouve avec le moteur de recherche, quand on a la chance de trouver.

Dans une datasheet il y a souvent 4 parties

  1. Feature :
    C'est la présentation du produit -> souvent idéalisée, tout le monde il est beau et il est gentil.

  2. Absolute Maximum Rating
    C'est les limites à ne jamais dépasser et parfois à atteindre très brièvement : le silicium se rappelle de toutes les agressions et peut péter apparemment sur une pichenette de rien du tout mais qui est la goutte d'eau qui fait déborder le vase après une grosse agression 3 mois avant.

  3. Les caractéristiques garanties en fonctionnement "normal"
    C'est là qu'il faut chercher les informations utiles.
    Bien prendre en compte les valeurs min et max, les valeurs typiques (ou nominales) ne sont que le résultat d'une moyenne basée sur l'étendue de la fabrication.

  4. Des exemples d'utilisation.
    Partie super utile pour comprendre comment utiliser le produit.

Merci pour tout vos conseils, elles me seront sûrement utiles ! Je viens de trouver une vidéo intéressante qui explique comment lire une datasheet