Codey OnlineBiblioteca de componentes Arduino y ESP32 › Logic Level Shifter 4-channel
Logic Level Shifter 4-channel
Comunicación

Logic Level Shifter 4-channel

Conversor de nivel lógico bidireccional de 4 canales (tipo BSS138) que convierte entre 5V y 3.3V en hasta 4 líneas de señal. Adecuado para I2C (2x), SPI (1x) o UART (2x). También funciona con módulos/chips de 2.8V o 1.8V.

Protocolos: I2C, SPI, UART Ancho: 14.9 mm

Pinout — Logic Level Shifter 4-channel

Pin Señal Descripción
HV1 power top-edge through-hole pin 1 on high-voltage side
HV2 power top-edge through-hole pin 2 on high-voltage side
HV power top-edge through-hole high-voltage supply pin
GND ground top-edge through-hole ground pin
HV3 power top-edge through-hole pin 3 on high-voltage side
HV4 power top-edge through-hole pin 4 on high-voltage side
LV1 power bottom-edge through-hole pin 1 on low-voltage side
LV2 power bottom-edge through-hole pin 2 on low-voltage side
LV power bottom-edge through-hole low-voltage supply pin
GND.1 ground bottom-edge through-hole ground pin
LV3 power bottom-edge through-hole pin 3 on low-voltage side
LV4 power bottom-edge through-hole pin 4 on low-voltage side

Esquema de cableado de ejemplo — Logic Level Shifter 4-channel

Desde Hasta Cable
board:5V x1:HV red
board:GND x1:GND black
board:3.3V x1:LV darkorange
board:GND.1 x1:GND.1 black
board:D2 x1:HV1 green
board:D3 x1:LV1 blue

Código Arduino de ejemplo — Logic Level Shifter 4-channel

Este ejemplo se escribió y verificó por compilación para arduino-uno. Codey Online lo adapta a cualquier otra placa compatible.

// Canonical beginner example for a 4-channel logic level shifter
// Demonstrates shifting a digital signal between the Arduino Uno's 5V side (HV)
// and 3.3V side (LV) using one channel of the module.

const int hvPin = 2; // Connected to HV1
const int lvPin = 3; // Connected to LV1

void setup() {
  pinMode(hvPin, OUTPUT);
  pinMode(lvPin, INPUT);

  Serial.begin(9600);
  while (!Serial) {
    ;
  }

  Serial.println("Logic level shifter example started.");
  Serial.println("Press ENTER in the Serial Monitor to switch the signal.");

  // Start with the signal LOW.
  digitalWrite(hvPin, LOW);
}

void loop() {
  // Drive the 5V side HIGH, then read the translated 3.3V side.
  digitalWrite(hvPin, HIGH);
  delay(10);
  int lvReadingHigh = digitalRead(lvPin);
  Serial.print("HV1 driven HIGH, LV1 reads: ");
  Serial.println(lvReadingHigh);

  delay(1000);

  // Drive the 5V side LOW, then read the translated 3.3V side.
  digitalWrite(hvPin, LOW);
  delay(10);
  int lvReadingLow = digitalRead(lvPin);
  Serial.print("HV1 driven LOW, LV1 reads: ");
  Serial.println(lvReadingLow);

  delay(1000);
}

Componentes relacionados

Logic Level Shifter 8-channel

Logic Level Shifter 8-channel

MAX485 TTL to RS485 Converter Module

MAX485 TTL to RS485 Converter Module

Crea tu proyecto de Arduino o ESP32 con IA

Describe lo que quieres construir. Codey Online escribe el codigo, dibuja el esquema de conexiones, lo compila y graba tu placa directamente desde el navegador.

Empieza gratis