Bidireccional Paso arriba y paso abajo (3.3v - 5, etc.)

9

Así que he estado leyendo algunos hilos aquí y en otros foros. Entiendo que hay varias soluciones para reducir o subir un voltaje. Lo que he encontrado son los registros de cambios de la serie LVC que dan una salida constante, MCP1825 que será un paso abajo 5 a 3.3 (y otras versiones que tienen diferentes incrementos) el 74LCX245 que pasará de 2.5 o 3.3 a 5v y quizás algunos otros que estoy olvidando. Luego están los tableros ya hechos, como los conversores Sparkfun o este convertidor de 8 pin a 8 pin . Pero todos estos son solo una dirección, o bidireccionales cambiados por un puente.

¿Cómo convertiría los voltajes hacia arriba o hacia abajo en ambas direcciones sin requerir una selección de pin.

5--3.3

5--2.5

5--1.8

gracias

    
pregunta cyphunk

4 respuestas

3

Maxim tiene un grupo de traductores de nivel lógico , la mayoría de los cuales son bidireccionales. Las velocidades varían, la más rápida admite una velocidad de datos máxima de 100 MBit / seg, que debería cubrir prácticamente cualquier cosa que quieras hacer a un nivel de pasatiempo. Los voltajes van desde 0.9V a 5.5V.

    
respondido por el davr
2

Estás trabajando con un bus I2C, ¿verdad? Voy a llamar a las líneas en el lado de 3.3 V SDA3 y SCL3 ; las dos líneas en el lado de 5.0 V SDA5 y SCL5 .

" MOSFET y dos resistencias"

Como ya indicaron todbot y cyphunk, el circuito "MOSFET y dos resistencias" descrito en el SparkFun " sensor de interfaz "tutorial hace lo que quieres: El flujo de datos lógicos es simétrico: los datos fluyen en ambas direcciones en las líneas SDA, desde el lado inferior al lado alto y, milisegundos más tarde, desde el lado alto al lado bajo.

La nota "no funcionará en la otra dirección" indica que el circuito es físicamente asimétrico: su dispositivo 5.0 V I²C debe estar conectado al "lado alto", su dispositivo de 3.3 V debe estar conectado al "lado bajo". Debido a que el circuito es físicamente asimétrico, ciertamente no es obvio que sea lógicamente simétrico. (Ese tutorial se enlaza con una nota de aplicación AN97055 que muestra un circuito de "dos MOSFET y dos resistencias" que es físicamente simétrico y, por lo tanto, es lógicamente simétrico).

Las líneas con la etiqueta "TX" en convertidores SparkFun : el cartel original apuntó out - implementa ese circuito bidireccional "MOSFET y dos resistencias". Entonces conecte SDA3 a TX_LV, SDA5 a TX_HV, SCL3 a TX2_LV, y SCL5 a TX2_HV.

Luego los datos fluyen en ambas direcciones: cuando su dispositivo del lado bajo maneja los pines SDA3 y SCL3, se ven los voltajes apropiados en los pines SDA5 y SCL5 del lado alto. Milisegundos después, cuando el dispositivo de lado alto controla las patillas SDA5 y SCL5, se ven los voltajes apropiados en las patillas SDA3 y SCL3.

(De manera inconsistente, las líneas rotuladas "RX" en esa placa convertidora solo transmitirán datos en la dirección de alto voltaje a bajo voltaje).

Optoaislador bidireccional

Ya que está usando I²C, también podría estar interesado en un optoaislante bidireccional para I²C . El circuito de dos optoaisladores es más caro y más lento que el circuito "MOSFET y dos resistencias", pero funciona cuando un lado tiene señales que oscilan entre 0 V y 5.0 V, y el otro lado tiene señales que oscilan entre 500.0 V y 505.0 V.

El circuito de dos optoaisladores también es completamente simétrico físicamente, y por lo tanto lógicamente simétrico, no importa qué lado es el lado alto y cuál lado es el lado bajo.

    
respondido por el davidcary
0

En uno de nuestros tableros usamos un TXS0104E para traducir entre 3.3V y 5V en un bus I2C (bidireccional).

    
respondido por el mjh2007

Lea otras preguntas en las etiquetas