Kunkune

Como usar um conversor de nível lógico com Arduino

Como usar um conversor de nível lógico com Arduino

By Kunkune | Published: 2026-10-23

Category: Guias Práticos

Aprenda a ligar um Arduino de 5V a sensores de 3.3V usando um conversor de nível lógico. Cablagem passo a passo e código para deslocamento de nível I2C com TXS0108E.

Resposta Rápida

Use um conversor de nível lógico bidirecional como o TXS0108E para ligar com segurança os pinos Arduino de 5V a sensores I2C de 3.3V. Ligue o lado de alta tensão a 5V e o lado de baixa tensão a 3.3V, depois conecte as suas linhas SDA e SCL através dos canais do conversor.

Por que precisa de um conversor de nível para I2C

O Arduino Uno e muitas placas clássicas funcionam com lógica de 5V, enquanto sensores populares como o MPU6050, BMP280 e ecrãs OLED operam a 3.3V. Ligá-los diretamente pode danificar o sensor ou causar comunicação errática. Um conversor de nível bidirecional faz a tradução de tensão automaticamente sem pinos de controlo extra.

O TXS0108E fornece oito canais, para que possa deslocar vários sinais ao mesmo tempo. Para projetos I2C simples, só precisa de dois canais (SDA e SCL), mas os canais extra permanecem disponíveis para outros periféricos de 3.3V.

Escolher entre módulos de 2 canais e 8 canais

O Módulo Conversor de Nível Lógico IIC I2C de 2 Canais (ID do produto 2426955) é compacto e suficiente para a maioria dos projetos de sensores I2C. Custa um pouco mais, mas inclui resistências de pull-up otimizadas para I2C. O Conversor de Nível Lógico Bidirecional TXS0108E de 8 Canais (ID do produto 2426944) oferece mais canais a um custo menor por canal, tornando-o melhor para projetos com múltiplos dispositivos de 3.3V ou tipos de sinal mistos.

Se só precisar de deslocar uma ou duas linhas I2C, o módulo de 2 canais mantém a cablagem simples. Se planear expandir mais tarde, a versão de 8 canais dá-lhe espaço para adicionar dispositivos SPI ou UART sem comprar outro conversor.

Guia Passo a Passo: Cablagem e Utilização de um Conversor de Nível Lógico

  1. Identifique os Lados de Alta Tensão e Baixa Tensão: Num módulo conversor de nível típico, um lado está etiquetado como HV (alta tensão, 5V) e o outro LV (baixa tensão, 3.3V). Ligue o pino HV ao 5V do Arduino e o pino LV à alimentação de 3.3V do sensor. Erro comum: inverter estas tensões pode danificar o módulo ou o sensor. Verifique as etiquetas de serigrafia antes de alimentar o circuito.
  2. Ligue a Referência de Terra: Ligue um fio de terra do GND do Arduino ao pino GND no conversor de nível, e outro do GND do conversor ao GND do sensor. Ambos os lados devem partilhar um terra comum para o conversor de nível funcionar. Erro comum: esquecer a ligação à terra causa dados erráticos ou nenhuma comunicação. Use um barramento de breadboard para distribuir terra a todos os dispositivos.
  3. Ligue as Linhas de Dados I2C: Ligue o SDA do Arduino (A4 no Uno) a um pino de canal HV (por exemplo, HV1), depois ligue o pino de canal LV correspondente (LV1) ao SDA do sensor. Repita para o SCL (A5 no Uno) usando um segundo canal (HV2 para LV2). Erro comum: cruzar canais (por exemplo, SDA no HV1 e SCL no LV2) não funcionará. Mantenha o mesmo número de canal para cada linha de sinal em ambos os lados.
  4. Adicione Resistências de Pull-Up (Se Necessário): Muitos módulos conversores de nível incluem resistências de pull-up em ambos os lados. Se o seu módulo não as tiver ou o seu barramento I2C for maior que 10 cm, adicione resistências de 4.7kΩ de SDA e SCL para 3.3V apenas no lado LV. Erro comum: adicionar pull-ups para 5V no lado HV pode sobrecarregar o sensor. Consulte a ficha técnica do seu módulo; o módulo de 2 canais inclui-as, o TXS0108E pode não incluir.
  5. Carregue e Teste com o Scanner I2C: Carregue o sketch padrão do scanner I2C (Ficheiro > Exemplos > Wire > i2c_scanner) para o seu Arduino. Abra o Monitor Serial a 9600 baud. Se a cablagem estiver correta, verá o endereço I2C do sensor. Erro comum: não ver dispositivos significa verificar terra, alimentação e mapeamento de canais. Uma digitalização bem-sucedida confirma que o conversor de nível está a funcionar antes de escrever o seu sketch principal.

Factos do Produto

  • 5 unidades Módulo Conversor de Nível Lógico IIC I2C de 2 Canais 5V para 3.3V Arduino: O Conversor de Nível IIC I2C de 2 Canais faz a ponte entre sistemas de 5V e 3.3V, permitindo uma comunicação eficiente e estável entre dispositivos de diferentes tensões, perfeito para uma variedade de aplicações seriais. Este módulo inclui resistências de pull-up integradas que correspondem aos requisitos de temporização I2C, para que possa ligá-lo diretamente sem componentes externos.
    5pcs 2 Channel IIC I2C Logic Level Converter Module 5V to 3.3V Arduino
    5 unidades Módulo Conversor de Nível Lógico IIC I2C de 2 Canais 5V para 3.3V Arduino
  • Conversor de Nível Lógico Bidirecional TXS0108E de 8 Canais: Conversor de Nível Lógico Bidirecional TXS0108E de 8 Canais Oito canais permitem-lhe deslocar sinais I2C, SPI, UART e GPIO simultaneamente, tornando-o uma escolha flexível para projetos com múltiplos sensores.
    TXS0108E 8 Channel Bidirectional Logic Level Converter
    Conversor de Nível Lógico Bidirecional TXS0108E de 8 Canais

Shop Related Products

5pcs Módulo Conversor de Nível Lógico IIC I2C 2 Canais 5V para 3.3V Arduino

5pcs Módulo Conversor de Nível Lógico IIC I2C 2 Canais 5V para 3.3V Arduino

$2.99 $4.90

Shop Now
TXS0108E Conversor de Nível Lógico Bidirecional 8 Canais

TXS0108E Conversor de Nível Lógico Bidirecional 8 Canais

$1.29 $1.90

Shop Now