====== [Bus I2C] Terminología ====== * **Bus I2C** * Inter Integrated Circuit. * Protocolo de comunicaciones desarrollado por Philips. Orientado a las aplicaciones de 8-bit controladas por un microprocesador con los siguientes criterios: * Sistema con al menos 1 μcontrolador y ''n'' sistemas periféricos (memorias, displays...). * Costo mínimo de conexión entre los varios dispositivos dentro del sistema. * No se requiere una alta tasa de transferencia de datos. * Soporta cualquier tipo de componente (NMOS, CMOS, bipolar, etc.) y **consta de dos hilos físicos** que transportan la información entre los diversos dispositivos conectados al bus: * Uno de **datos**: ''SDA''. * Uno de **reloj**: ''SCL''. * **SDA: Señal de datos** * Serial Data. * Linea **bidireccional**, conectada a una fuente de tensión positiva vía suministro común o resistencias de carga. * **SCL: Señal de reloj** * Serial Clock. * Linea **bidireccional**, conectada a una fuente de tensión positiva vía suministro común o resistencias de carga. * El reloj lo controla el Master, que genera su propia señal de reloj cuando envía datos al bus. * Sólo puede ser alterado cuando la línea de reloj sufre una caída por un dispositivo esclavo o por el dominio del control del Bus por el arbitraje de otro microcontrolador. * **Dispositivo** * Cualquier circuito que posea conexión para el bus I2C: microcontrolador, memoria, teclado, display, PC... * Está identificado por una única **dirección de 7 bits**. * Puede operar como transmisor y/o emisor de datos, dependiendo de su función. Así, un display puede ser solo un receptor de datos mientras que una memoria recibe y transmite datos. * **Emisor** * Dispositivo que envía datos por el bus. * **Receptor** * Dispositivo que recibe los datos. * **Master: Maestro** * Dispositivo que dentro del bus inicia una transferencia, genera las señales del reloj y termina un envío de datos. * **Slave: Esclavo** * Dispositivo direccionado por un master. * **Multi-Master** * Característica esencial del bus I2C: Conectados al bus podemos tener más de un dispositivo capaz de comportarse como master. * Es necesario un arbitraje pues en una comunicación por el bus sólo se permite un master. * **Arbitraje** * Procedimiento que asegura que si dos o mas master simultáneamente deciden controlar el Bus solo uno es permitido a controlarlo y el mensaje saliente no es deteriorado. * Si dos o mas master intentan poner información en el bus es la señal del reloj si esta a ''1'' o a ''0'' lo que determina los derechos de arbitraje. * **Sincronización** * Procedimiento para sincronizar las señales del reloj de dos o mas dispositivos.