En una pregunta anterior, pregunté cómo evitar que el pin MCU TX (3,3 V cuando está inactivo) alimente un chip FT232RL Usb to Serial a través de la línea TX:
Prevención de la alimentación parasitaria de FT232RL por ATMega328P
Terminé buscando una solución en la que bajaba TX y RX si no se detectaban más comunicaciones válidas dentro de un tiempo determinado.
Sin embargo, esto todavía no es satisfactorio. No quiero que el chip FTDI reciba alimentación si no hay voltaje USB presente. Ahora he creado el siguiente circuito:
FTDI3V3 es la salida de 3,3 V del FTDI LDO que funciona con USB. El interruptor SW1 simula el encendido del USB (a la mitad de la simulación). MCU_TX es una onda cuadrada que simula la actividad de TX, y FTDI_RX es la entrada al chip FTDI. Debe ser 0V cuando SW1 está abierto.
La simulación del circuito da el comportamiento deseado:
Una forma habitual de resolverlo es un cambiador de nivel de voltaje. La gente parece ofrecer principalmente cambios bidireccionales, pero me gusta usar cambios unidireccionales, ya que son más resistentes al ruido. Por ejemplo, SN74LVC1T45 es un cambiador de nivel unidireccional de suministro dual de 1 bit. Su hoja de datos menciona específicamente lo que necesita:
"Característica de aislamiento de V_CC: si cualquiera de las entradas de V_CC está en GND, ambos puertos están en estado de alta impedancia"
Transeúnte
Is there an easier alternative?
Optoacoplador.geométrico
Transeúnte
geométrico