¿Cómo conecto dispositivos que no sean I2C a un bus I2C?

1

Soy bastante nuevo en electrónica y solo trato de hacer mi primer sistema basado en Raspberry Pi: un diodo, un sensor de presión y un LCD 1602 con protector de teclado (el de una placa Arduino). La forma en que me gustaría conectar todos los dispositivos es mediante el uso de I2C (la Raspberry Pi no tiene mucho GPIO).

Y aquí viene la pregunta: ¿Cómo puedo conectar dispositivos que no sean I2C al bus I2C? Escuché sobre diferentes expansores, como el MCP23017, ¿eso resolverá el problema?

    
pregunta user1415536

1 respuesta

5

Es posible que la pregunta represente un malentendido o una mala comunicación del tipo de conexión deseada: no es algo que deba conectarse al bus I2C en sí, sino que debe controlarse mediante algún intermediario I2C a GPIO device , que además está conectado en el bus I2C.

La idea de que dispositivos no I2C estén conectados a un bus I2C no tiene sentido. El protocolo I2C tiene requisitos específicos, para que el maestro I2C se dirija al dispositivo esclavo y para comunicar datos en cualquier dirección.

La pantalla LCD mencionada en la pregunta, por ejemplo, funciona en un conjunto diferente de protocolos de comunicación, utilizando múltiples pines GPIO, y (de la descripción) muy probablemente no reconoce I2C. Sin embargo, hay módulos LCD I2C disponibles, que incorporan la funcionalidad esclavo I2C a bordo, ya sea a través de un controlador LCD o un microcontrolador dedicado con código de comunicación esclavo I2C. En lugar del módulo LCD básico mencionado, tal módulo de pantalla I2C sería necesario para su uso en un bus I2C.

Los expansores de bus I2C no pueden crear mágicamente la funcionalidad I2C en un dispositivo conectado. Sin embargo, lo que pueden hacer los expansores de bus I2C es proporcionar pines GPIO adicionales , que luego son controlados por código desde la Raspberry Pi o el microcontrolador a través del expansor, que a su vez responde a los comandos I2C.

Quizás eso es lo que se desea, en cuyo caso, seguro, funcionará pero no como se describe: un dispositivo controlado por GPIO, como el módulo LCD o un LED, se puede conectar a los pines GPIO del expansor y al expansor Es el dispositivo que está conectado al bus I2C.

    
respondido por el Anindo Ghosh

Lea otras preguntas en las etiquetas