¿Por qué la hoja de datos TCA8418E solicita conectar todos los pines a Vcc usando una resistencia pullup?

Estoy tratando de usar el TCA8418E I2C IC de escaneo de teclado controlado con protección ESD integrada .

En la página 3, en la tabla de funciones de pines, dice conectar SDA y SCL a Vcc usando una resistencia pull-up. ¿Necesito hacer esto si planeo conectar los pines SDA y SCL a un microcontrolador? Si es así, ¿por qué y qué valor?

También una pregunta rápida sobre el pin de reinicio (activo bajo): ¿puedo conectarlo directamente a Vcc? Si no, ¿cómo sé el valor de la resistencia que debo usar?

Respuestas (2)

I2C necesita pull-ups porque es un bus bidireccional de drenaje abierto.

La hoja de datos contiene un enlace a la nota de aplicación de TI SLVA689 sobre cómo calcular el valor de resistencia pull-up, si su sistema aún no tiene pull-ups en el bus I2C. La misma información también se encuentra en la especificación I2C. No obstante, es una buena idea verificar dos veces que los valores de la resistencia pull-up sean adecuados para la velocidad y la capacitancia del bus deseadas, y a qué voltaje están conectadas las resistencias pull-up.

Con respecto al pin de reinicio, la hoja de datos también dice que si no se usa, conecte una resistencia pull-up. No menciona nada más, por lo que sería seguro asumir que no se recomienda la conexión directa al voltaje de suministro. Sin embargo, debe considerar cuidadosamente si realmente desea dejarlo sin usar para empezar, especialmente si no está seguro de si su sistema puede proporcionar los tiempos de subida y bajada de la fuente de alimentación necesarios para que funcione el reinicio de encendido.

Además, si su MCU se restablece, hay una falla durante una comunicación I2C en curso y el chip del escáner del teclado mantiene bajo el pin de datos del bus mientras envía datos, por lo general, la MCU no puede continuar la comunicación a menos que el bus se active manualmente. al estado inactivo de nuevo. Entonces, por lo general, desea usar el pin de reinicio.

El bus I2C necesita un pull-up en algún lugar de SCL y SDA, y solo debe tener un conjunto de pull-ups. Si ya se proporcionan en el microcontrolador, no debe agregar más en el controlador de teclado.

Gracias ! ¿Crees que el pin de reinicio también necesita un pullup?