Interfaces MCU

Conversor de nível lógico bidirecional I2C de 3,3 V para 5 V com BSS138

Tradutor de nível de tensão bidirecional para barramento I2C que conecta domínios lógicos de 3,3 V e 5 V utilizando dois MOSFETs de canal N onsemi BSS138 com resistores pull-up e desacoplamento de alimentação.

Alimentação de baixa tensão (VDD1)
+3,3 V CC nominal (faixa operacional de +1,65 V a +3,6 V)
Componentes
8
Fórmulas
4
Armadilhas
4
Abrir no Web CAD
Fonte Verificada

Área de trabalho do esquema

BSS138 Bidirectional I2C Level ShifterExported from CircuitBaseC1100nFC2100nFR110kR210kR310kR410kQ1BSS138Q2BSS138+3.3VGND+5.0VGND+3.3V+3.3V+5.0V+5.0VSDA (3.3V)+3.3VSDA (5V)SCL (3.3V)+3.3VSCL (5V)

Visão geral do circuito

Alimentação de baixa tensão (VDD1)
+3,3 V CC nominal (faixa operacional de +1,65 V a +3,6 V)
Componentes
8
Fórmulas
4
Armadilhas
4

Clique em qualquer componente no esquema para ver seus parâmetros elétricos e função no circuito.

Visão geral do circuito

Este tradutor de nível lógico bidirecional implementa a topologia clássica da NXP Semiconductors AN10441 / Philips Semiconductor AN97055 para translação bidirecional de barramento I2C entre um domínio de baixa tensão de 3,3 V (VDD1) e um domínio de alta tensão de 5,0 V (VDD2). O circuito opera as linhas de dados seriais (SDA) e de clock serial (SCL) por meio de dois MOSFETs discretos de enriquecimento de canal N (Q1 e Q2, onsemi BSS138 em encapsulamento SOT-23). As portas (gates) de ambos os MOSFETs são conectadas permanentemente ao barramento de menor tensão (+3,3 V), enquanto as fontes (sources) voltam-se para o lado de 3,3 V e os drenos para o lado de 5,0 V. Resistores pull-up discretos (R1 a R4, 10 kΩ 1%) polarizam cada linha ao seu respectivo barramento no estado ocioso. O circuito opera autonomamente em três estados sem necessidade de sinal de controle direcional: em repouso, ambos os lados permanecem em nível alto e VGS = 0 V mantém os transistores em corte; quando um dispositivo de 3,3 V comuta para nível baixo, VGS sobe para +3,3 V (superando a tensão de limiar de 1,5 V) e liga o transistor conduzindo a linha de 5 V para nível baixo; e quando um dispositivo de 5 V comuta para nível baixo, a corrente flui no sentido direto através do diodo intrínseco de substrato até que a tensão de fonte caia abaixo do limiar, ativando a condução total do canal para drenar o lado de 3,3 V para nível baixo de forma limpa. Capacitores cerâmicos de desacoplamento local C1 e C2 de 100 nF suprimem ondulações de alimentação durante transições de borda simultâneas.

Especificações técnicas principais

Alimentação de baixa tensão (VDD1)+3,3 V CC nominal (faixa operacional de +1,65 V a +3,6 V)
Alimentação de alta tensão (VDD2)+5,0 V CC nominal (faixa operacional de +2,7 V a +5,5 V)
Protocolos de barramento compatíveisI2C modo padrão (100 kHz), modo rápido (400 kHz), SMBus e 1-Wire
Resistores pull-up (R1, R2, R3, R4)10 kΩ 1% padrão (reduzir para 2,2 kΩ para alta capacitância de barramento)
Resistência de condução MOSFET (RDS(on))≤ 3,5 Ω em VGS = 10 V, ≤ 6,0 Ω em VGS = 4,5 V (onsemi BSS138)
Tensão de limiar de porta (VGS(th))0,8 V mínimo a 1,5 V máximo (onsemi BSS138)
Desacoplamento de alimentação (C1, C2)100 nF 25 V cerâmico MLCC X7R por domínio de alimentação
Tensão de saída em nível baixo (VOL)≤ 0,40 V (em conformidade com a especificação I2C Fast-mode)

Princípio de funcionamento e análise teórica

01

Topologia do circuito e polarização de porta fixa

O circuito opera como um tradutor de nível de tensão bidirecional de dois canais para o barramento serial I2C de dreno aberto, conectando uma seção de baixa tensão (VDD1 = +3,3 V) a uma seção de maior tensão (VDD2 = +5,0 V). Cada linha do barramento (SDA e SCL) utiliza um único MOSFET discreto de enriquecimento de canal N (Q1 para SDA, Q2 para SCL). As portas de ambos os MOSFETs são conectadas permanentemente à tensão de alimentação inferior VDD1 (+3,3 V). Os terminais de fonte conectam-se ao lado de 3,3 V e os drenos ao lado de 5,0 V. Os resistores pull-up R1 e R2 (10 kΩ) polarizam as linhas de 3,3 V em VDD1, enquanto R3 e R4 (10 kΩ) polarizam as linhas de 5,0 V em VDD2. Os capacitores de desacoplamento C1 e C2 (100 nF cerâmicos X7R) fornecem bypass de alta frequência e baixa impedância diretamente em cada domínio de alimentação.

02

Estado 1: Repouso e barramento em alta impedância (ambos os lados em HIGH)

Quando nenhum dispositivo do barramento (mestre ou escravo) transmite um nível baixo, as linhas de dreno aberto em ambas as seções são mantidas em nível alto por seus respectivos resistores pull-up: as linhas de 3,3 V ficam em +3,3 V e as de 5,0 V em +5,0 V. Para ambos os transistores Q1 e Q2, a porta está em +3,3 V e a fonte em +3,3 V, resultando em uma tensão porta-fonte exatamente nula (VGS = VG - VS = 3.3V - 3.3V = 0 V). Como VGS está bem abaixo da tensão de limiar (VGS(th) = 0.8\dots 1.5 V), os MOSFETs permanecem totalmente em corte. A seção de maior tensão de 5,0 V fica completamente isolada da seção de 3,3 V, prevenindo sobretensões e correntes de fuga parasitas para os pinos do microcontrolador de 3,3 V.

03

Estado 2: Dispositivo de baixa tensão comuta para nível baixo (translação LOW de 3,3 V para 5 V)

Quando um dispositivo ativo na seção de 3,3 V comuta para nível lógico baixo, ele puxa a fonte do MOSFET em direção ao terra (VS ≈ 0 V). Como a porta permanece fixada em +3,3 V, a tensão porta-fonte sobe abruptamente para VGS = 3.3V - 0V = 3.3 V, muito acima da tensão de limiar máxima de 1,5 V. O MOSFET liga completamente, proporcionando um canal condutor de baixa resistência (RDS(on) ≤ 6.0 Ω). A corrente proveniente do resistor pull-up de 5,0 V flui através do canal condutor para o terra através do driver de 3,3 V, conduzindo a linha de 5,0 V para o nível lógico baixo correspondente (VOL2 = VOL1 + Ipull-up · RDS(on) ≤ 0.4 V).

04

Estado 3: Dispositivo de alta tensão comuta para nível baixo (translação LOW de 5 V para 3,3 V)

Quando um dispositivo ativo na seção de 5,0 V comuta para nível lógico baixo, ele puxa o dreno do MOSFET em direção ao terra. Inicialmente, o canal do MOSFET não conduz. No entanto, o diodo intrínseco de substrato do MOSFET de canal N tem seu anodo na fonte (lado de 3,3 V) e seu catodo no dreno (lado de 5,0 V). À medida que a tensão de dreno cai abaixo de aproximadamente 2,6 V, o diodo de substrato fica polarizado diretamente e começa a conduzir, rebaixando a tensão de fonte através de sua queda de tensão direta (VS = VD + VSD ≈ 0.7 V). Quando a tensão de fonte cai abaixo de 3.3V - VGS(th) ≈ 1.8 V, VGS supera a tensão de limiar e o canal de inversão liga. Uma vez conduzindo, o canal desvia da queda do diodo, puxando a linha de 3,3 V de forma limpa para um nível baixo real compatível com o driver de 5,0 V.

05

Estado 4: Liberação do barramento e dinâmica de subida com pull-up passivo

Quando o driver ativo em qualquer um dos lados libera o barramento, ambas as linhas começam a subir em direção aos seus respectivos trilhos de alimentação. Inicialmente, enquanto a tensão da linha for inferior a VDD1 - VGS(th), o MOSFET em condução mantém ambos os lados interligados, subindo em sincronia. Assim que a linha de menor tensão ultrapassa VDD1 - VGS(th) ≈ 1.8 V, VGS cai abaixo do limiar e o MOSFET desliga. A partir desse instante, as duas seções do barramento sobem de forma independente: a seção de 3,3 V carrega através de R1/R2 com constante de tempo \tau1 = Rp · Cb1, e a seção de 5,0 V através de R3/R4 com \tau2 = Rp · Cb2. Isso desacopla eletricamente a capacitância da linha de alta tensão da seção de baixa tensão, otimizando a integridade geral do sinal.

Equações e fórmulas de dimensionamento

Resistor pull-up máximo para tempo de subida I2C

Rp(max) = tr0.8473 · Cb

Calcula a resistência pull-up máxima admissível para satisfazer os requisitos de tempo de subida do barramento I2C (tr <= 1000 ns para Standard-mode, tr <= 300 ns para Fast-mode) com base na carga capacitiva Cb.

SímboloParâmetroValor típico
Rp(max)Resistência pull-up máxima3.54kΩ
trTempo de subida máximo admissível no barramento300ns
CbCapacitância total do barramento por linha100pF

Resistor pull-up mínimo por limite de drenagem de corrente

Rp(min) = VDD − VOLIOL

Calcula o limite inferior da resistência pull-up para não ultrapassar a capacidade máxima de corrente do driver de dreno aberto (tipicamente 3 mA para dispositivos I2C Standard e Fast-mode).

SímboloParâmetroValor típico
Rp(min)Resistência pull-up mínima1.53kΩ
VDDTensão do barramento de alimentação5.00V
VOLTensão máxima de saída em nível baixo0.40V
IOLCorrente máxima de dreno aberto suportada3.00mA

Tensão de nível baixo na translação de alta para baixa tensão

VOL1 = VOL2 + Ipull − up · RDS(on)

Calcula a tensão real de nível baixo aplicada ao lado de 3,3 V quando um dispositivo de 5 V drena a linha para o terra através do canal condutor do MOSFET.

SímboloParâmetroValor típico
VOL1Tensão de saída em nível baixo no lado de 3,3 V0.12V
VOL2Tensão de nível baixo do driver no lado de 5,0 V0.10V
Ipull − upCorrente de pull-up pelo resistor de 3,3 V0.32mA
RDS(on)Resistência estática de condução do canal MOSFET6.00Ω

Margem de tensão de excitação de porta

VGS(drive) = VDD1 − Vin(LV) ≥ VGS(th)

Quantifica a sobretensão porta-fonte disponível para acionar o canal do MOSFET quando o lado de baixa tensão comuta para o terra.

SímboloParâmetroValor típico
VGS(drive)Tensão de excitação porta-fonte disponível3.30V
VDD1Barramento de alimentação de baixa tensão3.30V
Vin(LV)Nível de entrada em baixa tensão0.00V
VGS(th)Tensão de limiar máxima do MOSFET1.50V

Lista de materiais (BOM)

Todas as peças necessárias para montar este circuito. Selecione uma referência para inspecioná-la no esquema.

Ref.ComponenteValorEncapsulamentoFunção no circuitoReferência
MOSFET de nível lógico de canal N

onsemi BSS138; 50 V VDSS, 220 mA ID, RDS(on) <= 3,5 Ω em 10 V, VGS(th) de 0,8 V a 1,5 V

BSS138SOT-23 (TO-236AB)Conversor de nível bidirecional SDAMOSFET de nível lógico de canal N: pinagem e folha de dados
MOSFET de nível lógico de canal N

onsemi BSS138; 50 V VDSS, 220 mA ID, RDS(on) <= 3,5 Ω em 10 V, VGS(th) de 0,8 V a 1,5 V

BSS138SOT-23 (TO-236AB)Conversor de nível bidirecional SCLMOSFET de nível lógico de canal N: pinagem e folha de dados
Resistor chip SMD

Yageo RC0805FR-0710KL; 10 kΩ 1% 1/8 W filme espesso

10kΩ0805 SMDResistor pull-up de 3,3 V para SDA—
Resistor chip SMD

Yageo RC0805FR-0710KL; 10 kΩ 1% 1/8 W filme espesso

10kΩ0805 SMDResistor pull-up de 3,3 V para SCL—
Resistor chip SMD

Yageo RC0805FR-0710KL; 10 kΩ 1% 1/8 W filme espesso

10kΩ0805 SMDResistor pull-up de 5,0 V para SDA—
Resistor chip SMD

Yageo RC0805FR-0710KL; 10 kΩ 1% 1/8 W filme espesso

10kΩ0805 SMDResistor pull-up de 5,0 V para SCL—
Capacitor cerâmico multicamada

Murata GRM21BR71E104KA01L; 100 nF 25 V X7R cerâmico 10%

100nF0805 SMDCapacitor de desacoplamento de alimentação de 3,3 V—
Capacitor cerâmico multicamada

Murata GRM21BR71E104KA01L; 100 nF 25 V X7R cerâmico 10%

100nF0805 SMDCapacitor de desacoplamento de alimentação de 5,0 V—

Aplicações práticas e cenários de uso

Interface entre microcontroladores de 3,3 V (ARM Cortex, ESP32, RP2040) e periféricos e sensores I2C de 5,0 V
Translação de nível lógico bidirecional de dreno aberto para barramentos SMBus, PMBus e 1-Wire
Circuito de translação fundamental para placas adaptadoras modulares (SparkFun BOB-12009, Adafruit 757, Pololu 2595)
Isolamento de barramento com referência galvânica comum prevenindo sobretensão de 5,0 V em silício de 3,3 V

Armadilhas críticas de projeto e cuidados de engenharia

Armadilhas encontradas em montagens reais, com a solução de cada uma.

Crítico

Orientação invertida de fonte-dreno e condução do diodo de substrato

Conectar o dreno do MOSFET ao barramento de 3,3 V e a fonte ao de 5,0 V inverte o diodo intrínseco de substrato. O anodo do diodo (agora em 5 V) conduz diretamente de forma contínua para o trilho de 3,3 V, causando superaquecimento severo do transistor e alimentando reversamente o microcontrolador com sobretensão destrutiva.

Mitigação

Sempre conecte a fonte do MOSFET ao domínio de menor tensão (3,3 V) e o dreno ao de maior tensão (5,0 V). Certifique-se de que o catodo do diodo intrínseco esteja voltado para o lado de 5,0 V.

Aviso

Capacitância excessiva no barramento e violação do tempo de subida

Resistores pull-up padrão de 10 kΩ formam um filtro passa-baixa RC com a capacitância parasita do barramento (trilhas, comprimento de cabos, pinos dos circuitos integrados). Quando a capacitância total ultrapassa 100 pF, o tempo de subida excede o limite de 300 ns exigido pelo padrão I2C Fast-mode (400 kHz), provocando erros de enquadramento e perda de bits de reconhecimento ACK.

Mitigação

Calcule a resistência pull-up utilizando a equação Rp <= tr / (0.8473 * Cb). Para operação em 400 kHz Fast-mode com múltiplos dispositivos, substitua os resistores de 10 kΩ por 2,2 kΩ ou 4,7 kΩ.

Crítico

Excitação de porta insuficiente em níveis lógicos inferiores a 3,3 V

A tentativa de usar este circuito discreto com BSS138 em tensões ultrabaixas (1,8 V ou 1,2 V) falha porque a tensão de limiar VGS(th) do BSS138 pode atingir até 1,5 V. Com VDD1 = 1,8 V, a tensão de excitação efetiva (VGS - VGS(th)) é de apenas 0,3 V, resultando em alta resistência de condução (dezenas de ohms) e violando o limite VOL máximo de I2C (0,4 V).

Mitigação

Para translação de 1,8 V para 3,3 V ou 5,0 V, escolha MOSFETs específicos para níveis sublógicos com VGS(th) <= 0,8 V garantido e baixo RDS(on) com gate em 1,8 V (como DMN2004K ou SSM3K339R), ou use circuitos integrados dedicados com auto-direcionamento (como TI TXS0102).

Aviso

Ausência de terra comum entre domínios de alimentação

Alimentar as seções de 3,3 V e 5,0 V a partir de fontes independentes sem interligar suas linhas de terra de 0 V (0V) permite flutuações de modo comum. Ruídos e deslocamentos de tensão de terra distorcem a tensão VGS efetiva, provocando travamento do barramento (latch-up), disparos falsos ou quebra dielétrica da porta.

Mitigação

Assegure um plano de retorno de terra sólido e de baixa impedância conectando os planos de referência de ambos os sistemas (3,3 V e 5,0 V) adjacente ao circuito conversor.

Fontes primárias

Ajude a manter esta página correta

Montou, simulou ou revisou este circuito? Confirme-o ou relate uma peça, valor ou ligação errada.

Abre um formulário público no GitHub com esta página já preenchida; é preciso uma conta gratuita do GitHub. Como funcionam relatos e confirmações

Código HTML

<iframe src="https://circuitbase.tech/embed/schematic/bss138-bidirectional-i2c-level-shifter?theme=paper" width="100%" height="500" frameborder="0" loading="lazy" style="border: 1px solid #e5e7eb; border-radius: 6px; max-width: 100%;" title="Conversor de nível lógico bidirecional I2C de 3,3 V para 5 V com BSS138 — CircuitBase Interactive Schematic"></iframe>