- Ingangsspanning op hoog en laag niveau
- Bi-directionele logische niveau-omzetter
- Eenvoudige bidirectionele logische niveau-omzetter
- 5V naar 3.3V niveau-omzetter met MOSFET
- Simulatie van bi-directionele logische niveau-omzetter
- Logic Level Converter Circuit werkt
- Schakelsnelheid van de converter
- Uw logische omzetter testen
- Beperkingen van Logic Level Converter
- Belang en toepassingen
- Populaire Logic Level Converter IC's
In het ENIAC-tijdperk waren computers meer analoog van aard en gebruikten ze heel weinig digitale IC's. Tegenwoordig werkt de computer van een gemiddelde Joe met meerdere spanningsniveaus, mensen die de SMPS van een CPU hadden gezien, zouden hebben gemerkt dat uw computer ± 12V, + 5V en + 3.3V nodig heeft om te werken. Deze spanningsniveaus zijn erg belangrijk voor een computer; een specifieke spanning bepaalt de toestand van het signaal (hoog of laag). Deze hoge toestand wordt door de computer geaccepteerd als binair 1 en de lage toestand als binair 0. Afhankelijk van de 0 en 1 toestand produceert de computer gegevens, codes en instructies om de vereiste uitvoer te leveren.
Moderne logische spanningsniveaus variëren grotendeels van 1,8 V tot 5 V. De standaard logische spanningen zijn 5V, 3.3V, 1.8V, etc. Maar, hoe communiceert een systeem of controller die werkt met 5V logisch niveau (Voorbeeld Arduino) met een ander systeem dat werkt met 3.3V (Voorbeeld ESP8266) of een andere andere spanning niveau? Dit scenario komt vaak voor in veel ontwerpen, waarbij er meerdere microcontrollers of sensoren worden gebruikt en de oplossing hier is om een Logic Level Converter of Logic Level Shifter te gebruiken. In dit artikel zullen we meer leren over logische niveau-omvormers en we zullen ook een eenvoudig bidirectioneel logisch niveau-omzettercircuit bouwen met behulp van MOSFET, wat handig zal zijn voor uw circuitontwerpen.
Ingangsspanning op hoog en laag niveau
Van de microprocessor- of de microcontrollerzijde is de waarde van het logische spanningsniveau echter geen vaste waarde; het heeft er enige tolerantie mee. De geaccepteerde Logic High (logic 1) voor microcontrollers op logisch niveau van 5 V is bijvoorbeeld minimaal 2,0 V (Minimum High Level Input Voltage) tot maximaal 5,1 V (Maximum High Level Input Voltage). Evenzo is voor logisch laag (logisch 0) de geaccepteerde spanningswaarde van 0V (minimale lage ingangsspanning) tot maximaal 8V (maximale lage ingangsspanning).
Het bovenstaande voorbeeld is waar voor 5V microcontrollers op logisch niveau, maar er zijn ook 3.3V en 1.8V microcontrollers op logisch niveau beschikbaar. Bij dergelijke microcontrollers zal het spanningsbereik van het logische niveau variëren. U kunt de relevante informatie uit het gegevensblad van die specifieke controller-IC halen. Bij gebruik van een spanningsniveau-omzetter moet erop worden gelet dat de hoogspanningswaarde en de laagspanningswaarde binnen de limiet van deze parameters vallen.
Bi-directionele logische niveau-omzetter
Afhankelijk van de toepassing en technische constructie zijn er twee soorten niveauverschuivers beschikbaar: Unidirectionele Logic Level Converter en Bi-directional Logic Level Converter. In unidirectionele niveau-omvormers zijn ingangspennen bestemd voor één spanningsdomein en de uitgangspennen zijn bestemd voor het andere spanningsdomein, maar dit is niet het geval voor bidirectionele niveau-omvormers, het kan logische signalen in beide richtingen converteren. Voor de bidirectionele niveau-omvormers heeft elk spanningsdomein niet alleen ingangspennen, maar ook de uitgangspen. Als u bijvoorbeeld 5,5 V aan de ingangszijde levert, wordt deze aan de uitgangszijde omgezet in 3,3 V, en als u 3,3 V aan de uitgangszijde levert, wordt dit aan de ingangszijde omgezet in 5 V.
In deze tutorial zullen we een eenvoudige bidirectionele niveau-omzetter bouwen en deze testen op conversie van hoog naar laag en van laag naar hoog.
Eenvoudige bidirectionele logische niveau-omzetter
Een eenvoudig bi-directionele logische omzetcircuit wordt getoond in de onderstaande afbeelding.
De schakeling gebruikt een n-kanaals MOSFET om het logische laagspanningsniveau om te zetten naar een logisch hoogspanningsniveau. Een eenvoudige logische niveau-omzetter kan ook worden gebouwd met behulp van resistieve spanningsdelers, maar dit zal spanningsverlies veroorzaken. MOSFET- of transistorgebaseerde omzetters voor logisch niveau zijn professioneel, betrouwbaar en veiliger te integreren.
Het circuit maakt ook gebruik van twee extra componenten, R1 en R2. Dat zijn pull-up-weerstanden. Vanwege het laagste aantal onderdelen is het ook een kosteneffectieve oplossing. Afhankelijk van de bovenstaande schakeling zal een eenvoudige 3,3V naar 5V bi-directionele logische omzetter worden geconstrueerd.
5V naar 3.3V niveau-omzetter met MOSFET
Het 5V naar 3.3V bi-directionele logische niveau- omzetcircuit is te zien in de onderstaande afbeelding -
Zoals je kunt zien, moeten we een constante spanning van 5V en 3,3V leveren aan de weerstanden R1 en R2. De pinnen Low_side_Logic_Input en High_Side_Logic_Input kunnen door elkaar worden gebruikt als invoer- en uitvoerpinnen.
De componenten die in het bovenstaande circuit worden gebruikt, zijn
R1 - 4,7k
R2 - 4,7k
Q1 - BS170 (N-kanaal MOSFET).
Beide weerstanden zijn 1% tolerant. Weerstanden met een tolerantie van 5% zullen ook werken. De pinouts van BS170 MOSFET zijn te zien in de onderstaande afbeelding in de volgorde Drain, Gate en Source.
De circuitconstructie bestaat uit twee pull-up weerstanden van elk 4.7k. Drain en de source pin van MOSFET worden opgetrokken tot het gewenste spanningsniveau (in dit geval 5V en 3.3V) voor de laag naar hoog of hoog naar laag logische conversie. U kunt ook elke waarde tussen 1k en 10k gebruiken voor R1 en R2, aangezien deze alleen fungeren als pull-up-weerstanden.
Voor een perfect werkende staat zijn er twee voorwaarden waaraan moet worden voldaan tijdens het bouwen van het circuit. De eerste voorwaarde is dat de logische spanning van laag niveau (3,3 V in dit geval) moet worden verbonden met de bron van de MOSFET en dat de logische spanning van hoog niveau (5 V in dit geval) moet worden aangesloten op de afvoerpen van de MOSFET. De tweede voorwaarde is dat de poort van de MOSFET moet worden aangesloten op de laagspanningsvoeding (in dit geval 3,3V).
Simulatie van bi-directionele logische niveau-omzetter
De volledige werking van het logische niveau-shifter-circuit kan worden begrepen door simulatieresultaten te gebruiken. Zoals je kunt zien in de onderstaande GIF-afbeelding, wordt tijdens logische conversie van hoog naar laag niveau de logische invoerpen verschoven tussen 5V en 0V (aarde) en wordt de logische uitvoer verkregen als 3.3V en 0V.
Evenzo wordt tijdens de conversie van laag naar hoog niveau de logische invoer tussen 3.3V en 0V omgezet in logische uitvoer van 5V en 0V, zoals weergegeven in de onderstaande GIF-afbeelding.
Logic Level Converter Circuit werkt
Nadat aan deze twee voorwaarden is voldaan, werkt het circuit in drie staten. De staten worden hieronder beschreven.
- Wanneer de lage kant in logische 1 of hoge toestand is (3.3V).
- Wanneer de lage kant in logische 0 of lage toestand (0V) is.
- Wanneer de hoge kant de status verandert van 1 naar 0 of van hoog naar laag (5V naar 0V)
Wanneer de lage kant hoog is, betekent dit dat de bronspanning van de MOSFET 3,3 V is, de MOSFET geleidt niet omdat het Vgs-drempelpunt van de MOSFET niet wordt bereikt. Op dit punt is de poort van de MOSFET 3,3V en de bron van de MOSFET ook 3,3V. Daarom is Vgs 0V. De MOSFET is uitgeschakeld. Logica 1 of hoge toestand van de lage ingang reflecteert op de afvoerzijde van de MOSFET als een 5V uitgang via de pullup-weerstand R2.
Als in deze situatie de lage kant van de MOSFET van toestand verandert van hoog naar laag, begint de MOSFET te geleiden. De bron is in logica 0, vandaar dat de hoge kant ook 0 werd.
Die boven de twee voorwaarden converteren met succes de logische toestand van lage spanning naar een logische toestand van hoge spanning.
Een andere werkende staat is wanneer de hoge kant van de MOSFET zijn status verandert van hoog naar laag. Het is het moment waarop de drainsubstraatdiode begint te geleiden. De lage kant van de MOSFET wordt naar een laagspanningsniveau getrokken totdat de Vgs het drempelpunt overschrijden. De buslijn van zowel het laag- als het hoogspanningsgedeelte werd laag bij hetzelfde spanningsniveau.
Schakelsnelheid van de converter
Een andere belangrijke parameter waarmee rekening moet worden gehouden bij het ontwerpen van een logisch-niveau-omzetter is de overgangssnelheid. Aangezien de meeste logische omvormers zullen worden gebruikt tussen communicatiebussen zoals USART, I2C enz., Is het belangrijk dat de logische omzetter snel genoeg schakelt (overgangssnelheid) om overeen te stemmen met de baudrate van de communicatielijnen.
De overgangssnelheid is hetzelfde als de schakelsnelheid van de MOSFET. Vandaar dat in ons geval volgens de BS170-datasheet de inschakeltijd van de MOSFET en de uitschakeltijd van de MOSFET hieronder worden vermeld. Daarom is het belangrijk om de juiste MOSFET te selecteren voor uw logisch niveau-omzetterontwerp.
Dus onze MOSFET hier heeft 10nS nodig om in te schakelen en 10nS om uit te schakelen, wat betekent dat hij in één seconde 10,00.000 keer kan in- en uitschakelen. Ervan uitgaande dat onze communicatielijn werkt met een snelheid van (baudrate) 115200 bits per seconde, betekent dit dat deze slechts 1,15,200 in één seconde wordt in- en uitgeschakeld. We kunnen ons apparaat dus ook heel goed gebruiken voor communicatie met hoge baudrate.
Uw logische omzetter testen
De volgende componenten en gereedschappen zijn vereist om het circuit te testen -
- Voeding met twee verschillende spanningsuitgangen.
- Twee multimeters.
- Twee tactiele schakelaars.
- Weinig draden voor verbinding.
Het schema is aangepast om het circuit te testen.
In het bovenstaande schema zijn twee extra tactiele schakelaars geïntroduceerd. Er is ook een multimeter aangesloten om de logische overgang te controleren. Door op SW1 te drukken, verandert de lage kant van de MOSFET zijn toestand van hoog naar laag en werkt de logisch niveau-omzetter als een laagspanning naar hoogspanningslogisch niveau-omzetter.
Aan de andere kant, door op SW2 te drukken, verandert de hoge zijde van de MOSFET zijn toestand van hoog naar laag en werkt de logisch niveau-omzetter als een hoogspanning naar laagspanningslogisch niveau-omzetter.
Het circuit is opgebouwd in een breadboard en getest.
De bovenstaande afbeelding toont de logische toestand aan beide zijden van de MOSFET. Beide bevinden zich in de status Logica 1.
De volledige werkende video is te zien in de onderstaande video.
Beperkingen van Logic Level Converter
Het circuit heeft zeker enkele beperkingen. De beperkingen zijn sterk afhankelijk van de selectie van de MOSFET. De maximale spanning en afvoerstroom die in dit circuit kan worden gebruikt, is afhankelijk van de specificatie van de MOSFET. Ook is de minimale logische spanning 1,8 V. Minder dan 1,8 V logische spanning zal niet goed werken vanwege de Vgs-beperking van de MOSFET. Voor een lagere spanning dan 1,8 V kunnen speciale omzetters voor logisch niveau worden gebruikt.
Belang en toepassingen
Zoals besproken in het inleidende deel, vormt een incompatibel spanningsniveau in digitale elektronica een probleem voor interfacing en gegevensoverdracht. Daarom is een niveau-omzetter of niveauverschuiver vereist om de spanningsniveau-gerelateerde fouten in de schakeling te overwinnen.
Als gevolg van de beschikbaarheid van een breed scala logisch niveau schakelingen in de elektronica-markt en ook voor de verschillende spanningsniveau microcontrollers, logisch niveau shifter heeft een ongelooflijke use case. Verschillende randapparatuur en oudere apparaten die werken op basis van I2C, UART of audiocodec, hebben niveau-omvormers nodig voor communicatiedoeleinden met een microcontroller.
Populaire Logic Level Converter IC's
Er zijn veel fabrikanten die geïntegreerde oplossingen bieden voor conversie op logisch niveau. Een van de populaire IC's is MAX232. Het is een van de meest voorkomende logische niveau-omvormers-IC die de logische spanning van de microcontroller van 5V naar 12V omzet. RS232-poort wordt gebruikt om te communiceren tussen computers met een microcontroller en vereist +/- 12V. We hebben MAX232 al gebruikt met PIC en enkele andere microcontrollers eerder om een microcontroller met een computer te verbinden.
Er zijn ook verschillende vereisten, afhankelijk van de conversie op zeer laag spanningsniveau, conversiesnelheid, ruimte, kosten, enz.
SN74AX is ook een populaire serie bi-directionele spanningsniveau-omvormers van Texas Instruments. Er zijn veel IC's in dit segment die een enkele bit naar 4-bit voedingsbus-overgang bieden, samen met extra functies.
Een andere populaire bi-directionele logic level converter IC is MAX3394E van Maxim Integrated. Het gebruikt dezelfde conversietopologie met MOSFET. Het pin-diagram is te zien in de onderstaande afbeelding. De converter ondersteunt een afzonderlijke activeringspin die kan worden bestuurd met behulp van microcontrollers, wat een extra functie is.
De bovenstaande interne constructie toont dezelfde MOSFET-topologie maar met een P-kanaalconfiguratie. Het heeft veel extra functies, zoals 15 kV ESD-bescherming op I / O- en VCC-lijnen. Het typische schema is te zien in de onderstaande afbeelding.
Het bovenstaande schema toont een circuit dat het logische niveau van 1,8 V omzet naar een logisch niveau van 3,3 V en vice versa. De systeemcontroller die elke microcontrollereenheid kan zijn, bestuurt ook de EN-pin.
Dit gaat dus allemaal over het bidirectionele conversiecircuit op logisch niveau en werken.