Conversor de nível lógico entre 3.3V e 5V com 4 canais.
Este tipo de conversores permite fazer a ligação por uart, spi e i2c entre dispositivos que trabalham a 3.3V e 5V.
Este conversor de nível lógico é util por exemplo na ligação entre o Arduino e o Raspberry Pi. Como o seu uso fica garantido que nunca chega 5V ao Pi que o danificavam.
O meu conversor é igual ao da imagem. Pelo que pesquisei na net, nao percebi se todos os canais são bidirecionais. Por isso, na ligação I2C do Arduino com o Raspberry Pi B joguei pelo seguro, com a unica informação disponivel, e usei o esquema de pinos abaixo em que apenas os canais exteriores são bi-direcionais.

No entanto, acho que este conversor lógico tem todos os canais bi-direcionais.
Programa de teste
logic_level_test_v1
#define serialSpeed 115200
#define PIN1 11
#define PIN2 12
#define TIME1 2000
#define TIME2 3000
unsigned long timer1;
unsigned long timer2;
bool state1 = false;
bool state2 = false;
void setup() {
Serial.begin(serialSpeed);
pinMode(PIN1, OUTPUT);
pinMode(PIN2, OUTPUT);
timer1 = millis() + TIME1;
timer2 = millis() + TIME2;
}
void loop() {
if(millis() > timer1) {
timer1 = millis() + TIME1;
state1 = !state1;
digitalWrite(PIN1, state1);
}
if(millis() > timer2) {
timer2 = millis() + TIME2;
state2 = !state2;
digitalWrite(PIN2, state1);
}
}
O programa acima permite testar as saidas para os 3.3V com um multimetro.
Links
https://www.arduinoecia.com.br/2015/11/conversor-de-nivel-logico-33-5v-Arduino.html
