Incremente 3.3V a 5V para E / S digital


35

Normalmente uso un Arduino para mis proyectos porque tiene entradas y salidas de 5V y tiene 5V Vin, lo que hace que la vida sea muy fácil cuando interactúo con componentes de 5V. Para este proyecto, quiero usar una Raspberry Pi porque quiero conectarla a una pantalla. El Pi funciona con 5V, por lo que es bastante fácil. Sin embargo, tiene pines 3.3VI / O y los dispositivos con los que quiero interactuar son 5V.

Tengo un dispositivo con un pin de entrada de 5V, que necesita ser conducido a 5V. El dispositivo tiene un pin de salida de 5V, que el dispositivo conduce a 5V cuando sale.

He convertido bidireccionalmente entre dispositivos de 5V y 3.3V antes, pero eso fue con un cambiador de nivel lógico que estaba activo BAJO. El circuito es el típico con un transistor y un diodo y dos resistencias pull up. Esta aplicación requiere ALTO activo. Afortunadamente, este proyecto no requiere E / S bidireccionales.

Para la dirección de 5V a 3.3V, funcionará un divisor de voltaje bruto.

Sin embargo, para la dirección de 3.3V a 5V, no conozco una solución fácil. Hice un poco de búsqueda y parece que hay convertidores de impulso (convertidores de impulso DC-DC), pero para construirlos a partir de componentes discretos, necesito construir un circuito PWM para impulsar la conmutación.

Me preguntaba si había una forma más sencilla de lograr esto, con una complejidad comparable a la palanca de cambios activa de bajo nivel lógico.


Echa un vistazo a los diferentes métodos para interactuar. savagecircuits.com/…
AKR


¿Cuánta corriente necesita suministrar la salida de 5V? ¿Está alimentando una entrada de nivel lógico?
Dwayne Reid

Respuestas:


31

Como Dave Tweed ha señalado la falla en la otra respuesta, básicamente he copiado mi respuesta a la palanca de cambio de nivel de transistor simple ... Observe también la interesante solución de Nicolas D en la pregunta.

Tengo algunas soluciones (algunas soluciones proporcionadas por Microchip AQUÍ ):

1) Conexión directa: si Voh (voltaje de salida de alto nivel) de su lógica de 3.3V es mayor que Vih (voltaje de entrada de alto nivel), todo lo que necesita es una conexión directa. (también se requiere para esta solución que el Vol (voltaje de salida de bajo nivel) de la salida de 3.3V sea menor que el Vil (voltaje de entrada de bajo nivel) de la entrada de 5V). Esta solución se rechaza con mayor frecuencia debido a márgenes insuficientes.

2) Si las condiciones anteriores están cercanas, a menudo puede aumentar ligeramente el voltaje de salida de alto nivel con una resistencia pull-up (a 3.3V) y conectar directamente las señales.

3) La resistencia pull-up puede proporcionar una pequeña cantidad de aumento de voltaje de alto nivel. Para más, puede usar diodos y pull-up de hasta 5V. El circuito que se muestra no se despegará a 5V, pero aumentará el voltaje de entrada de alto nivel a la lógica de 5V en la cantidad de una caída de voltaje de diodo (aprox. 0.7v). Se debe tener cuidado con este método de que todavía tenga un nivel bajo válido, ya que también se eleva con una caída de diodo. Los diodos Schottky pueden usarse para un ligero aumento en el voltaje de alto nivel mientras se minimiza el aumento no deseado en el voltaje de bajo nivel. Consulte la nota de la aplicación mencionada anteriormente para obtener más información sobre este circuito .:

esquemático

simular este circuito : esquema creado con CircuitLab

4) Si puede lidiar con una inversión lógica (y no requiere un pull-up activo), se puede usar un mosfet y una resistencia pull-up:

esquemático

simular este circuito

5) También hay muchas soluciones lógicas ic como: MC74VHC1GT125, que es un "Desplazador de nivel no inversor / CMOS Logic Level Shifter con entradas compatibles con LSTTL" en un paquete SOT23-5 o SOT-353. Pequeño simple y bastante económico. El uso de esta solución también debe incluir un condensador de desacoplamiento cerca del CI.


Creo que algunos de sus diagramas están etiquetados al revés. Tengo una salida lógica de 3.3V y una entrada lógica de 5v. Entiendo cómo funciona el n. ° 4 y puedo confirmar que la etiqueta está al revés (pero es el circuito correcto para lo que necesito). No entiendo completamente el # 3 lo suficiente como para saber si está etiquetado al revés o en realidad está al revés. Dicho esto, si uso dos instancias del # 4 para mantener la lógica no invertida, debería estar listo.
Huckle

Las etiquetas no están al revés. "3.3V logic in" indica que es una entrada en el circuito que he proporcionado ... por supuesto, es de una salida de su circuito. "Salida lógica de 5V" simplemente indica que es una salida de mi circuito a su entrada lógica de 5V. Lo editaré para aclarar.
Tut

Tiene sentido ahora que lo explique, pero está al revés desde el punto de vista convencional (donde el punto de vista convencional significa el punto de vista de alguien que interconecta circuitos integrados digitales). Gracias de nuevo.
Huckle

2
@Huckle: Tut ha proporcionado un circuito o módulo que se utilizará para interconectar otros dos circuitos. El estándar es etiquetar los terminales o puntos de interfaz desde el punto de vista del espectáculo del circuito, no los que no puede ver. Conecta sus salidas a las entradas de este circuito. A veces necesitamos indicar dónde conectarnos en otro circuito pero usar flechas en esos casos para que quede claro.
Transistor

@Tut ¿te importaría explicar un poco más sobre cómo funciona el # 3? Me está costando entender esto. No estoy seguro de para qué sirve 3.3V-D1 :( Gracias
wbkang
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.