4-kanaals bidirectionele logic-level converter (BSS138-type) die spanningsniveaus omzet tussen 5V en 3.3V op maximaal 4 signaallijnen. Geschikt voor I2C (2x), SPI (1x) of UART (2x). Werkt ook met 2.8V- of 1.8V-modules/chips.
| Pin | Signaal | Beschrijving |
|---|---|---|
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 |
| Van | Naar | Draad |
|---|---|---|
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 |
Dit voorbeeld is geschreven en compile-gecheckt voor de arduino-uno. Codey Online past het voor je aan naar elk ander ondersteund board.
// 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);
}
Beschrijf wat je wilt bouwen. Codey Online schrijft de code, tekent het aansluitschema, compileert het en flasht je board rechtstreeks vanuit de browser.
Gratis starten