Partage
  • Partager sur Facebook
  • Partager sur Twitter

Des infos sur les level shifter

    18 août 2013 à 17:38:58

    Hey,

    J'aimerai bien savoir comment marche les level shifter (surtout en double sens par exemple pour les com Rx/Tx ou i2c) et comment en créer facilement :D

    Mici :)

    -
    Edité par nicolay1 18 août 2013 à 17:45:43

    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      18 août 2013 à 18:42:16

      Bah c'est pas bien compliqué, essentiellement un level shifter de A vers B, c'est un transistor qui switche entre 0V et B, et qui se contrôle avec A. Après il suffit de 2/3 résistances pour contrôler la polarisation du transistor, de doubler le circuit pour RX/TX, et puis c'est réglé.

      Tu peux chercher sur Farnell un composant de ce type, souvent le schéma de principe est donné.

      -
      Edité par Anonyme 18 août 2013 à 18:42:42

      • Partager sur Facebook
      • Partager sur Twitter
        18 août 2013 à 19:56:19

        Je ne sais pas vraiment ce que tu veux faire ni si tu as trois fois mon niveau en électronique ou pas (ce qui n'est pas très difficile je crois :p), par contre, si c'est seulement pour du 5 V vers 3,3V ou quelque chose comme cela, certes, tu peux utiliser le HEF4050BP que tu as peut-être déjà vu (fourni avec des composants commandés sur Snootlab par exemple), mais tu peux aussi réaliser un simple pont diviseur :p

        Si tu as besoin d'une explication (à ne surtout pas lire si tu es dans le cas évoqué plus haut...) : Tu connectes deux résistances en série, du 5V vers la masse. Tu connectes la sortie 3,3 V par exemple entre les deux. La tension associée (entre ce point est la masse) est donc la tension aux bornes de la deuxième résistance, à savoir U*R2/(R1+R2) avec U = 5 V ici, Ri la résistance i. Tu choisis une valeur et tu en déduis l'autre. Un exemple ici : http://letsmakerobots.com/files/userpics/u1533/Xbee1_Schematic.jpg (ne regarde pas le premier fil en haut).

        Voilà, je ne t'ai peut-être absolument pas aidé, mais dans le doute, je préfère poster le message, on ne sait jamais ^^

        -
        Edité par Soaocohoa 18 août 2013 à 19:57:21

        • Partager sur Facebook
        • Partager sur Twitter
        Anonyme
          18 août 2013 à 19:59:45

          Le pont diviseur n'est pas un level shifter, en tout cas pas un bon, puisqu'il ne garantir pas du tout la tension de sortie.
          • Partager sur Facebook
          • Partager sur Twitter
            18 août 2013 à 21:41:11

            Je sais, mais je ne pouvais pas savoir exactement ce que nicolay1 voulait. Cela aurait peut-être pu lui convenir ^^
            • Partager sur Facebook
            • Partager sur Twitter
              18 août 2013 à 21:48:58

              Boah, si l'entrée qui est derrière est une porte logique (haute impédance DC), on s'en fout.

              Le problème de la résistance si tu es sur batterie, c'est que tu es un peu pressé (mettons 10 kHz), ça consommera plus que le micro... d'ailleurs c'est pareil pour le truc avec le transistor.

              > comment ça fonctionne

              Dedans tu as, grosso modo, une source de courant commandée par la tension d'entrée, et un étage de sortie qui réagit à ce courant. La version simple c'est comme source de courant, une résistance sur la base d'un transistor, et en sortie, le susdit transistor avec un pullup. Si tu veux que ça aille plus vite en consommant moins c'est plus évolué, on aura des MOS, des push-pull, etc, mais ça change pas le principe.

              > et comment en créer facilement

              Si tu as plein de lignes à level shifter, il y a des chips avec plein de pattes et qui coutent pas cher, rubrique interfaces/bus/translator etc.

              Si c'est pour peu de lignes et que t'es pressé (HF) ou avare en consommations, 74LVC ou 74LVC2T45 enfin le choix ne manque pas, tu peux passer 4 plombes à sélectionner un composant à 0,2$

              Si t'es pas pressé et peu regardant sur les détails, une résistance à la con fait le boulot dans le sens 5V->3.3V (en comptant sur les diodes de protection de la victime pour absorber le courant) (peut provoquer des effets secondaires) ou si t'es riche, un diviseur de tension (2 résistances !!! faut cacher la 2ème si le cost cutter passe) ; et dans le sens 3.3V -> 5V, rien, vu que 3.3V est un logique 1 pour à peu près n'importe quoi qui marche en 5V (surtout du HCT, pour le HC, il faut pas parler trop fort de la marge de bruit).


              Sinon, la problématique est simple, c'est un truc avec une entrée visible, 2 entrées cachée, et une sortie, donc il faut se poser comme questions :

              - on a quoi en entrée ?

              Des niveaux spécifiés (lvcmos, etc) ? si oui est-ce qu'on les respecte ou non ? Par exemple en HCMOS 5V, 1V c'est un 0. Si on utilise un transistor pour faire le shifting, 1V sur la résistance de base ce sera peut-être un 1. Sauf si c'est un MOS, suivant le MOS, 4V ce sera peut-être un 0. Gênant ou pas ? Si elle n'a pas de niveaux spécifiés, il faut prendre une décision, on considère quoi comme un 0, comme un 1 ? Si on a besoin de précision, peut-être un comparateur... Est-ce qu'on met une hystérésis ? Il se passe quoi si l'entrée est en haute impédance (câble débranché, uC en reset, bug du soft, etc), est-ce qu'on met un pullup, un pulldown, un enable, ou pas, bla, bla.

              - on a quoi en sortie ?

              Idem, faut sortir des niveaux spécifiés par une norme ou bien allumer une LED ? Quid du court-circuit en sortie (si il y a un câble) ou encore si le truc après n'est pas alimenté ?

              - les entrées cachées c'est les 2 alims 

              Si il y a 2 tensions dans un truc alors quand on le met en marche elles vont pas forcément venir en même temps. Par exemple peut-être que le 3.3V sera stabilisé avant le 5V, ou pas si c'est deux alims différentes. Si on n'a pas envisagé le problème, la loi de murphy fera qu'il se passera des trucs. Faut décider ce que tu veux qu'il se passe ("n'importe quoi" peut être une réponse convenable, ou pas)  suivant la présence ou l'absence des 2 tensions et leur respect des tolérances, etc.




              -
              Edité par Lord Casque Noir 18 août 2013 à 22:04:42

              • Partager sur Facebook
              • Partager sur Twitter
                19 août 2013 à 14:24:03

                ... ... ... Pourquoi je comprend rien ? ça commence à me saouler --" merci beaucoup mais j'ai les connaissance d'un STI en electronique... en gros aucunes... Ou est ce que je pourrai trouver des cours bien ? il est complet ce tuto ? http://www.siteduzero.com/sciences/tutoriels/l-electronique-de-zero ?
                • Partager sur Facebook
                • Partager sur Twitter
                  19 août 2013 à 14:35:39

                  Je crois que le plus simple est que tu exposes ton problème... si tu en as un... Sinon pose un problème qui nécessiterait ce dont tu as besoin.
                  Ainsi, exprime le besoin, ce que ce que tu veux doit faire, on te donnera ici une solution technique appropriée, et on te l'expliquera, mais avant que l'on te parle de tout et n'importe quoi, je crois qu'il faudrait vraiment savoir ce que tu veux faire.

                  -
                  Edité par Soaocohoa 19 août 2013 à 14:44:20

                  • Partager sur Facebook
                  • Partager sur Twitter
                    19 août 2013 à 15:03:00

                    J'ai aucun problème en ce moment :p just un post ou j'ai vu level shifter et ça ma rappellé que j'en aurai bien eu besoin entre arduino (5V) et une camera Ov7670 (3,3V) mais c'était sur 10 broche que j'en avais besoins... j'y suis allé au final à coup de pont diviseur de tension mais je pouvais que écrire et pas lire...

                    ^^' je ne pense pas que ça soit une bonne idée :p je me sens un peu comme un mec qui doit changer le design d'un site sans connaitre ni HTML ni CSS, juste le XML...

                    Par exemple en prenant le message de Lord Casque Noir on va dire que je bloque sur le fonctionnement des choses suivantes (que sur les 10 premières lignes)

                    porte logique (haute impédance DC) // jamais compris la notion d'impédance dans une porte logique ou même autre part... (et ?->HAUTE impédance)

                    Le problème de la résistance si tu es sur batterie, c'est que tu es un peu pressé (mettons 10 kHz), ça consommera plus que le micro... d'ailleurs c'est pareil pour le truc avec le transistor. // raport entre résistance, fréquence et intensité ? et pourquoi existe t'il ?

                    Dedans tu as, grosso modo, une source de courant commandée par la tension d'entrée, et un étage de sortie qui réagit à ce courant.(en gros un transistor avec la grille commandé par la tension d'entrée et le courant qui passe ou non ? ça veut dire que ya un autre transistor pour l'autre sens ?)

                    La version simple c'est comme source de courant, une résistance sur la base d'un transistor, et en sortie, le susdit transistor avec un pullup /*(pullup jamais compris ce mot...)*/. Si tu veux que ça aille plus vite en consommant moins c'est plus évolué, on aura des MOS, des push-pull/*(idem)*/, etc, mais ça change pas le principe.

                    > et comment en créer facilement

                    Si tu as plein de lignes à level shifter, il y a des chips avec plein de pattes et qui coutent pas cher, rubrique interfaces/bus/translator etc.

                    Si c'est pour peu de lignes et que t'es pressé (HF) ou avare en consommations, 74LVC ou 74LVC2T45 enfin le choix ne manque pas, tu peux passer 4 plombes à sélectionner un composant à 0,2$

                    Si t'es pas pressé et peu regardant sur les détails, une résistance à la con fait le boulot dans le sens 5V->3.3V (en comptant sur les diodes de protection de la victime pour absorber le courant) (peut provoquer des effets secondaires) ou si t'es riche, un diviseur de tension (2 résistances !!! faut cacher la 2ème si le cost cutter passe/*(blague d'ingé system embarqué ? ^^')*/) ; et dans le sens 3.3V -> 5V, rien, vu que 3.3V est un logique 1 pour à peu près n'importe quoi qui marche en 5V (surtout du HCT, pour le HC, il faut pas parler trop fort de la marge de bruit).

                    Voilà ^^'
                    • Partager sur Facebook
                    • Partager sur Twitter
                      19 août 2013 à 15:14:17

                      level shifter...c'est quoi, ça....un abaisseur de tension??
                      • Partager sur Facebook
                      • Partager sur Twitter
                        19 août 2013 à 17:02:54

                        xD non c un truc qui permet de changer la tension d'un signal continu :)
                        • Partager sur Facebook
                        • Partager sur Twitter
                          19 août 2013 à 23:31:43

                          > level shifter...c'est quoi, ça

                          En gros si tu parles de niveaux logiques tu dois donner un sens à une tension. Par exemple si tu es en CMOS 5V, alors entre 0V et 1.5V c'est un niveau "0", entre 3.5V et 5V c'est un "1", entre les deux c'est n'importe quoi. Les autres familles (TTL, etc) ont d'autres correspondances entre tensions et niveaux. Idem si les tensions d'alim sont différentes.

                          Un level shifter c'est une interface entre deux machins qui parlent avec des tensions différentes pour que l'information passe proprement sans erreur et sans que rien ne crame...

                          > just un post ou j'ai vu level shifter et ça ma rappellé que j'en aurai bien eu besoin entre arduino (5V)

                          > et une camera Ov7670 (3,3V) mais c'était sur 10 broche que j'en avais besoins...

                          réponse 1, utilise un uC en 3.3V

                          réponse 2, 74LVC2T45 ou son avatar à 2x8 ports, je me souviens plus de la référence


                          • Partager sur Facebook
                          • Partager sur Twitter
                            20 août 2013 à 0:17:13

                            merci, c'est donc une remise en forme logique
                            • Partager sur Facebook
                            • Partager sur Twitter
                              20 août 2013 à 18:22:09

                              @Lord Casque Noir :

                              reponse 1 : ouai fin les profs nous donnent que des arduino :/ je suis pas (encore ^^) ingénieur système (oui j'ai de l'ambition :p) et mon raspberry pi consommait beaucoup trop pour être mis sur mon pitit robot :)

                              reponse 2 : j'y penserai la prochaine fois :) ... c dingue que les profs nous donnent pas des tuyaux comme ça... ils y connaissent rien ou quoi ? en plus ils savaient que j'allais souvent à elecdiff donc que c'était pas un problème pour acheter des trucs comme ça --" merci en tout cas ^^

                              • Partager sur Facebook
                              • Partager sur Twitter
                                21 août 2013 à 7:59:59

                                De nos jours le 5V est plus ou moins obsolète...

                                Note que le micro qui est dans l'arduino peut travailler en 3.3V il me semble (mais peut-être pas le reste de la carte).

                                • Partager sur Facebook
                                • Partager sur Twitter
                                  21 août 2013 à 10:00:25

                                  De nos jours le 5V est plus ou moins obsolète..

                                  Alors, c'est combien, aujourd'hui?

                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                  Anonyme
                                    21 août 2013 à 10:19:19

                                    5V pour les vieilleries, 3.3V pour les trucs simples, 1.8V dès qu'on touche à des processeurs, 1.2V et moins quand on arrive sur du matériel puissant (FPGA, processeurs PC, etc). Notons que le 3.3V reste présent partout (par exemple c'est courant d'avoir 2 ou 3 tensions d'alimentation sur un processeur).
                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                      21 août 2013 à 10:32:32

                                      Globalement, dans une optique "bricoleur" (< 100 MHz), les entrées/sorties se font quasiment tout le temps en 3.3V de nos jours. Le 5V est vraiment obsolète, tous les circuits modernes intéressants sont au maxi en 3.3V en IO (dedans, la logique va peut-être être entre 1 et 2V, mais tu t'en fous).

                                      3.3V c'est bien assorti avec un accu LiIon sans trop de complications.

                                      Il y a pas mal de chips "standard" qui marchent encore à 1.8v (uC, portes logiques, périphériques...), si tu utilises des piles, ça peut servir...

                                      On va pas parler de mémoire DDRx ou de gigabits, ou de carte mère de PC, et autres trucs hors du champ "bricoleur" (que je limite à 4 couches et pas de scope ou autre fanfreluche gigahertz/picoseconde à 15.000€, hum). 

                                      -
                                      Edité par Lord Casque Noir 21 août 2013 à 10:33:50

                                      • Partager sur Facebook
                                      • Partager sur Twitter

                                      Des infos sur les level shifter

                                      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                      • Editeur
                                      • Markdown