Bi-directionele logic level converter voor 5V-systemen met 3.3V I2C of UART, geschikt voor Arduino en andere modules.
SKU: ot8520 Artikelnummer: NA018 EAN: 8720828223239 Locatie: D01.02
Alternatief
4-kanaals logic voltage level converter
€ 0,80
Bekijk dit alternatief
Zo sluit je de I2C-UART Bi-Directionele Logic Level Converter 5V-3.3V 2-kanaals aan op een Arduino UNO of ESP32, met een voorbeeldsketch die je direct kunt uploaden.
Dit circuit verbindt de 5V Arduino Uno veilig met een 3.3V serieel apparaat met behulp van de 4-kanaals bidirectionele logicaniveaushifter. De Arduino verzendt en ontvangt seriële data via software serial (pins 2 en 3), terwijl de niveaushifter signalen omzet tussen 5V (HV) en 3.3V (LV). Open de Serial Monitor op 115200 baud om de communicatie te volgen.
/*
* ==================================================================
* Generated by Codey.online — https://www.codey.online
* ==================================================================
* Project : 4-Channel Logic Level Shifter with 3.3V Device
* Board : Arduino UNO (arduino:avr:uno)
* Parts : Logic Level Shifter 4-channel
* Libraries : none (built-in)
*
* Codey Online is an AI-powered browser IDE for Arduino and ESP32.
* Describe your project and Codey writes the code, draws the wiring
* diagram and uploads it to your board, straight from the browser.
* This code is free to use, modify and share, without warranty.
* ==================================================================
*/
#include <SoftwareSerial.h>
// Arduino Uno pins connected to the HV (5V) side of the level shifter
const int rxPin = 2; // HV2 (receives translated 5V from 3.3V device TX)
const int txPin = 3; // HV1 (transmits 5V to be translated to 3.3V device RX)
SoftwareSerial deviceSerial(rxPin, txPin);
void setup() {
Serial.begin(115200);
deviceSerial.begin(9600);
Serial.println(F("Logic Level Shifter Demo Initialized."));
Serial.println(F("Forwarding serial data between USB and 3.3V device..."));
}
void loop() {
// Forward data from USB Serial to 3.3V device
if (Serial.available()) {
char c = Serial.read();
deviceSerial.write(c);
}
// Forward data from 3.3V device to USB Serial
if (deviceSerial.available()) {
char c = deviceSerial.read();
Serial.write(c);
}
}
Wiring diagram and example code generated by Codey.online — https://www.codey.online
Dit project demonstreert bidirectionele spanningsvertaling met de 4-kanaals logic level shifter. De ESP32 stuurt een 3.3V-signaal naar LV1, dat wordt opgehoogd naar 5V op HV1. Een jumper verbindt HV1 met HV2, waardoor het 5V-signaal weer omlaag wordt gebracht naar 3.3V op LV2, zodat het door de ESP32 kan worden gecontroleerd.
/*
* ==================================================================
* Generated by Codey.online — https://www.codey.online
* ==================================================================
* Project : 4-Channel Logic Level Shifter Loopback Test
* Board : ESP32 DEVKIT V1 (esp32:esp32:esp32doit-devkit-v1)
* Parts : Logic Level Shifter 4-channel
* Libraries : none (built-in)
*
* Codey Online is an AI-powered browser IDE for Arduino and ESP32.
* Describe your project and Codey writes the code, draws the wiring
* diagram and uploads it to your board, straight from the browser.
* This code is free to use, modify and share, without warranty.
* ==================================================================
*/
// 4-Channel Logic Level Shifter Loopback Demo
// Sends 3.3V pulses on GPIO 18 (LV1), stepped up to 5V (HV1),
// looped to HV2 (5V), and stepped down to 3.3V on LV2 to read on GPIO 19.
const int TX_PIN = 18; // 3.3V Output to LV1
const int RX_PIN = 19; // 3.3V Input from LV2
void setup() {
Serial.begin(115200);
while (!Serial) {
delay(10);
}
pinMode(TX_PIN, OUTPUT);
pinMode(RX_PIN, INPUT);
Serial.println("=== Logic Level Shifter Loopback Test ===");
}
void loop() {
// Test HIGH state
digitalWrite(TX_PIN, HIGH);
delay(10);
int highRead = digitalRead(RX_PIN);
// Test LOW state
digitalWrite(TX_PIN, LOW);
delay(10);
int lowRead = digitalRead(RX_PIN);
// Report status
Serial.print("Sent HIGH -> Read: ");
Serial.print(highRead == HIGH ? "HIGH [PASS]" : "LOW [FAIL]");
Serial.print(" | Sent LOW -> Read: ");
Serial.println(lowRead == LOW ? "LOW [PASS]" : "HIGH [FAIL]");
delay(1000);
}
Wiring diagram and example code generated by Codey.online — https://www.codey.online
Sommige modules werken met 3.3V I2C of UART, dan kan deze module de spanning omzetten indien je systeem met 5V werkt.(bijv. je 5V Arduino)
Daarbij zit er een spanningsregelaar ingebouwd die 5V naar 3.3V omzet tot 100mA, ook handig als je een module moet voeden met 3.3V die geen ingebouwde spanningsregelaar heeft.
De pinnen staan aan de onderkant vermeld:
AVCC aansluiten op 5V
ASCL aansluiten op SCL/TX pin van 5V systeem
ASDA aansluiten op SDA/RX pin van 5V systeem
AGND aansluiten op GND van 5V systeem
BVCC aansluiten op 3.3V van systeem
BSCL aansluiten op SCL/RX pin van 3.3V systeem
BSDA aansluiten op SDA/TX pin van 3.3V systeem
BGND aansluiten op GND van 3.3V systeem
Deze module is in principe alleen geschikt om van 5V naar 3.3V te gaan. De spanningsregelaar kan namelijk alleen 5V naar 3.3V omzetten.
Indien je systeem 3.3V is en je een 5V module wilt aansluiten moet je het als volgt aansluiten:
AVCC aansluiten op 5V (5V voedingslijn)
ASCL aansluiten op SCL/TX pin van 5V systeem
ASDA aansluiten op SDA/RX pin van 5V systeem
AGND aansluiten op GND van 5V systeem
BVCC niet aansluiten
BSCL aansluiten op SCL/RX pin van 3.3V systeem
BSDA aansluiten op SDA/TX pin van 3.3V systeem
BGND aansluiten op GND van 3.3V systeem
Let op: De pin headers voor deze module zijn nog niet gesoldeerd. Indien u de headers wilt gebruiken moeten deze zelf gesoldeerd worden.

| Interface | I2C |
|---|---|
| Ingangsspanning | 5V |
| Uitgangsspanning | 3.3 V |
| Stroom | 100mA |
werkt perfect!
Conforme à la description
Niet tevreden? Je hebt 30 dagen bedenktijd na ontvangst om het product terug te sturen.
Alles over retourneren
I2C-UART Bi-Directionele Logic Level Converter 5V-3.3V 2-kanaals