Cambio de nivel y protección I2C

0

Estoy conectando una MCU ( CC1110 ) con Vdd de 3.3 V a un indicador de batería IC ( BQ27510-G2 ) con un Vdd de 2,5 V. Actualmente, estoy tirando del autobús hasta 3.3 V con un circuito que copié ciegamente de una hoja de datos:

Soy una CompE centrada en software, que lucha por recordar mis cursos de EE, así que tengo algunas preguntas tontas sobre este circuito:

  1. Según tengo entendido, los diodos Zener están diseñados para sujetar las líneas a un voltaje máximo (5,6 V en este caso) para proteger los dispositivos en el bus, y es especialmente útil para líneas de transmisión I2C largas. ¿Mi entendimiento es correcto?
  2. Mi MCU tiene un voltaje de pin de E / S máximo absoluto de 3,9 V, por lo que me gustaría un Zener clasificado en algún lugar por debajo de eso, ¿verdad?
  3. ¿Necesito diodos de sujeción si todos mis dispositivos esclavos I2C están en la misma placa, relativamente cerca?
  4. ¿Qué hacen los resistores de la serie y los necesito?
  5. El IC del indicador de batería permite hasta 6 V en sus pines SDA / SCL, ¿está bien que el bus llegue a 3.3 V, incluso si el indicador está funcionando a 2.5 V?
  6. ¿Sería mejor nivelarlos a 2.5 V?

Si es posible, me gustaría simplificar este circuito solo a los dos pull-ups, pero solo quiero asegurarme de que no habrá ningún efecto negativo debido a los diferentes niveles de voltaje.

    
pregunta Nick Hebner

1 respuesta

2
  

Según tengo entendido, los diodos zener están diseñados para sujetar las líneas a un voltaje máximo (5,6 V en este caso) para proteger los dispositivos en el bus, y es especialmente útil para líneas de transmisión i2c largas. ¿Mi entendimiento es correcto?

Probablemente sea correcto, pero sin saber de dónde sacó el circuito, es difícil saber exactamente lo que tenían en mente. Como la tensión del zener es de 5,6 V y la tensión de I2C es de 3,3 V, las zeners no tendrán ningún efecto en el circuito en funcionamiento normal.

Incluso en un bus I2C de 5 V, los dispositivos zen no tendrían ningún efecto en el funcionamiento normal.

  

¿Necesito diodos de sujeción si todos mis dispositivos esclavos i2c están en la misma placa, relativamente cerca?

Muy probablemente, si todo está en el mismo tablero, simplemente puede omitir los zeners.

  

¿Qué hacen las resistencias de la serie y las necesito?

En el circuito original, las resistencias en serie probablemente se usaron para limitar el flujo de corriente a través de los dispositivos zen en una condición de sobretensión.

Si decides que no necesitas los zeners, probablemente tampoco necesites estos resistores.

  

El IC del indicador de batería permite hasta 6V en sus pines SDA / SCL, ¿está bien que el bus llegue hasta 3.3V, aunque el indicador esté funcionando a 2.5V?

     

¿Sería mejor nivelarlos a 2.5V?

Estoy de acuerdo con su lectura de la hoja de datos sobre esto. Se permiten niveles de alto voltaje de entrada de 1.2 a 6 V para estas señales en este chip. Por lo tanto, no hay necesidad de hacer ningún cambio de nivel, simplemente use la recuperación de 3.3 V para su bus I2C.

    
respondido por el The Photon

Lea otras preguntas en las etiquetas