i2c over gpio - level shifter

5

Soy bastante nuevo en esto. Acabo de tener conocimientos básicos en electrónica. Así que agradecería un consejo de alguien más experimentado.

Me gustaría conectar una pantalla i2c a mi gpios enrutador tp-link wr703n (ar9331). El enrutador está ejecutando Linux y usa el módulo del kernel para simular la interfaz i2c usando gpios. La pantalla es hd44780 conectada al expansor i2c pcf8574.

La pantalla funciona a 5 V, mientras que los gpios tienen una tolerancia de 2.5 V + -10%. Revisé la hoja de datos de ar9331 pero no estoy seguro de cuál es el voltaje máximo para un nivel alto. Hay algunos informes de personas que tienen gpio pin subido a 3.3 V y ejecutándolo bien. Así que no estoy seguro de la tensión de arranque en el gpio.

Pero de todos modos probablemente necesito un cambio de nivel. Pensé que podría hacer algo como esto.

Vc1 2.5V? ---------------       ------------ Vc2 5V
                 |      |       |   
                 X      |       X   
            4k7R X      |  4k7R X      
                 X      |       X   
                 |      |       |   
 gpio-7 --------------[FET]------------------ pcf8574

same for gpio-29

No estoy seguro de qué N-FET usar para esto. Por lo general, las personas usan 2n7000, que tiene un umbral de Vgs típico de 2.1V, pero el máximo es de 3V. Así que supongo que este no podría funcionar correctamente si el umbral de FET usado fuera 2.5V o más.

¿Y es bueno hacer esto de todos modos?

EDIT2: he añadido una mejor imagen del circuito.

simular este circuito : esquema creado usando CircuitLab

    
pregunta loblik

1 respuesta

3

Hay IC especializados para la traducción de nivel I 2 . PCA9306 (hasta 1.8V), TCA9517 (hasta 0.9V), FXMA2102 (hasta 1.65V). El cambio de nivel de IC sería mi elección.

@Laszlo había mencionado AN97055 de Philips (ahora NXP).
Extracto de esa nota de aplicación (p.13).

  

3. CARACTERÍSTICAS DE LOS MOS-FET.

     

Los requisitos para las características más importantes de la   MOS-FET, utilizado como cambio de nivel bidireccional en un   I 2 sistema de bus C con máx. 6V y min. Los niveles de 2.7V, son   enumerados a continuación. Los valores están pensados como una indicación y pueden ser   adaptados para otros voltajes de alimentación, otros niveles lógicos y / u otros   aplicaciones

     

Tipo: modo de mejora de canal N MOS-FET.
  Voltaje de umbral de puerta: V GS (th) min. 0.1V máx. 2V
  En resistencia: R DS (on) max. 100 Ohm @ I D = 3mA, V GS = 2.5V
  Capacitancia de entrada: C iss max. 100 pF @ V DS = 1V, V GS = 0V
  Tiempos de conmutación: t on t off max. 50 ns.
  Corriente de drenaje permitida: I D 10 mA o superior.

    
respondido por el Nick Alexeev

Lea otras preguntas en las etiquetas