Download as doc or pdf
Download as doc or pdf
You are on page 1of 76
CAPITULO 21 BUS I2C Actualmente hay en el mercado multitud de dispositives que son gobemades por un bus serie desarrollado por la empresa Philips que es conocido como bus I2C. Entre estos dispositivos podemos encontrar desde un simple circuito integrado hasta sistemas completos, como puede set un sintonizador. En este capitulos y posteriores se describe el bus 12C, asi come algunos de los dispositivos que se pueden utilizar. 21.1 EL BUS I2C Numerosos proyectos que utilizan microcontroladores de 8 bits suelen regirse por ctiterios de disefios muy reiterados: © Bl] sistema consta de, al menos, un microcontroladar y varios dispositives periféricos como memorias, LCD, convertidores ADC, ete. ¢ La conexidn entre los distintos dispositivos que componen cl sistema debe ser fitcil de realizar y su coste minimo. «Estos sistemas suclen realizar funciones que no requieren una alta tasa de transferencia de datos, generalmente no superior a 100 kbits por segundo. * Elsistema no debe depender de los dispositivos conectados a é1. De otro modo uo seria posible realizar modificaciones 0 mejoras. Para implementar un sistema que satisfaga estos criterios se necesita una estructura de bus serie, ya que aunque no ticnen ni la capacidad ni la velocidad de los buses paralelos, requieren poco hardware y un minimo de cableada, Este bus serie no debe ser simplemente un hilo de conexién, debe incorporar una serie de procedimicntos o protocolos para la correcta comunicacién entre los componentes del sistema. 332_ MICROCONTROLADOR PICIGF84, DESARROLLO DE PROYECTOS oman Todos estos criterios son la base sobre la que se fundamentan las especificaciones del bus serie 12C para la interconexién de circuitos integrados 0 bus °C (JIC, Inter Integrated — Circuit Bus) —desarvollado = por_— Philips, Semiconductors sww.semiconductors philips.com) y que es ampliamente utilizado en la industria electronica. El 12C es un bus sezie, formado por dos hilos, que puede conectar varies dispositives mediante un hardware muy simple, tal como ilustra ta figura 21-1, Por esos dos hilos se produce una comunicacién serie, bit a bit, Se transmiten dos sefiales, una por cada tinea: * SCL, (Serial Clock). Es 1a seital de reloj que se utiliza para la sincronizacion de los datos. © SDA, (Serial Data). Es la linea para la transferencia serie de los datos. MAESTRO. Figura 2/-1 Estructura de un bus 120 Los dispositives conectados al bus I2C mantienen un protocolo de comunicaciones del lipo maestro/esclavo (0 masiersiave). Las funciones del maestro y del esclavo se diferencian en: El circuito maestro inicia y termina la transferencia de informacién, ademas de controlar la sefial de reloj. Normalmente es un microcontrolador. © Elesclavo es el circuito direecionado por el maestro. La linea SDA es biditeccional, es decir, tanto el maestro como los esclavos pueden war como ttansmisores 0 receplores de datos, dependiendo de la funcién det dispositive. Asi por ejemplo, un display es s6lo un receptor de datos mientras que una memoria recibe y transmite datos. La generacién de sefiales de reloj (SCL) es siempre responsabilidad del maestro. Cada dispositivo conectado al bus I2C es reconocido por una tinica direccién que lo diferencia del resto de los cireuitos conectados. Los dispositivos compatibles con bus ora CAPITULO 71: BUS PC_333 RC auelen Hevar 2 6 3 pines para poder modificar esta direccién de modo que el disetador pueda evitar que en un mismo discfio haya 2 0 més esclavos con la misma direccién. FI bus 12C puede ser multimaster, esto significa que puede soportar mits de un dispositivo capaz. de controlar ¢l bus. Los sistemas mas comunes estiin constituides por un solo microcontrolador macstro, 21.2 HARDWARE DEL BUS i2C E] hardware del bus 12C se basa en Ia And cableada (figura 21-2). Las etapas de salida de los dispositivos conectados al bus deben ser drenador abicrto, o colector abierto, para poder realizar la funcién And cableada. veo vee Resistencias de Pulp | |RP {] Rp t SDA (Seria! Data Lino) bara E Figura 21-2 Etapa de salida de los dispositivos 12C Las lineas SDA y SCL. estén conectadas a tonsién positiva de alimentacién a través de unas resistencias de Pull-Up, Rp. Dependiendo del estado del transistor de salida de cada dispositivo puede ocurrir alguno de estos dos casos * Que el transistor esté saturado, con lo cual lleva a nivel bajo o “O", a la linea correspondiente, independientemente del estado de los otros transistores. Es decir, cl bus esté ocupado a nivel bajo. © Que el transistor esté en corte (estado de alta impedancia) con lo cual el estado de la linen depende de los otros transistores. Es decir, el bus esta libre y, si no hay ningun otro transistor saturado, la linea se encuentran en estado alto a través de la resistencia de Pull-Up conectada a ta alimentacion, EI caleulo de fas resistencias de Pull-Up depende de Ja tension de alimentacién, de hh capacidad del bus y del ntimero de dispositives conectados. Esto se tabula en unas

You might also like