Philips Semiconductors (ahora NXP) inventó I2C en 1982 como un bus interno sencillo para conectar periféricos de baja velocidad a un chip principal sin dedicar un pin y un cable a cada uno.
El protocolo solo necesita una línea de datos SDA y una línea de reloj SCL entre dispositivos. Tras un byte de dirección que selecciona un dispositivo, los datos se introducen o se extraen por reloj; el 8.º bit del byte de dirección indica lectura o escritura, y 7 bits permiten hasta 128 direcciones.
Como usaba tan pocos cables y ninguna pieza costosa, I2C siguió en uso continuo, y desde el 6 de octubre de 2006 se puede implementar sin licencia. Subconjuntos como TWI y SMBus, y variantes de hasta direccionamiento de 10 bits y relojes más rápidos, lo mantuvieron como la interconexión de baja velocidad por defecto.
Dos cables más una dirección de dispositivo llegan muy lejos
Dos cables conectan una docena de chips, ahorrando pines en una placa con limitaciones
El direccionamiento está en el protocolo, así que los dispositivos no necesitan líneas de selección separadas
Es lento pero se libra del coste de cuatro cables de SPI y del límite uno a uno de RS-232
Philips lo publicó y después eliminó la tasa de licencia
Cuando no puedes añadir pines ni cables, diseña el protocolo para que lleve el direccionamiento en sí mismo; un bus diminuto y barato puede durar más que rivales más rápidos que cuestan más de cablear.
I2C se convirtió en la forma estándar de conectar sensores, pantallas, EEPROM y chips de gestión a microcontroladores, y más de 40 años de estandarización hicieron que los dispositivos fueran en gran medida interoperables. Es omnipresente en sistemas embebidos, teléfonos y electrónica automotriz.
CONSULTA LAS PRUEBAS
Las fuentes
- Intro to I2C: Multi-Device Communication with Minimal Pins Embedded Computing Design · embeddedcomputing.com ·
- I2C Wikipedia · en.wikipedia.org