Está en la página 1de 21

El Bus I C

Franco Garca juan


Santana ornelas miguel ngel

Qu es I2C?
I2C es un protocolo de comunicacin serie diseado por Philips en los
80s que se utiliza esencialmente entre dispositivos que pertenecen
al mismo circuito, por ejemplo, sensores con un microcontrolador.

Qu es TWI?
Aunque las patentes de I2C ya han expirado, algunos vendedores
utilizan los nombres TWI y TWSI para referirse a I2C. Es
exactamente lo mismo.

Caractersticas del protocolo:


1. Velocidad standard de 100Kbit/s (100kbits). Se puede cambiar al modo de alta
velocidad (400Kbit/s). O en High-speed, hasta 3,4 Mbits/s
2. Configuracin maestro/esclavo. La direccin del esclavo se configura con
software
3. Solo se necesitan dos lineas:
1.
2.
3.

SDA (Serial Data Line): Linea de datos.


SCL/CLK (Serial Clock Line): Linea de reloj, ser el que marque el tiempo de RW
(Lectura/Escritura)
Nota: Suponemos que todos los dispositivos tienen masa comn, si no fuera as hay que
uncluir una linea de masa.

4. Los comunicacin siempre tiene la estructura siguiente:


1.
2.

Transmisor: Byte de datos (8 Bits)


Receptor: Bit llamado ACK de confirmacin.

Cmo se realizan las conexiones?


SDA y SCL van a su pin correspondiente en cada dispositivo, de
manera que todos quedan en paralelo.
Las lineas SDA y SCL estn independientemente conectadas a dos
resistores Pull-Up que se encargaran de que el valor lgico siempre
sea alto a no ser que un dispositivo lo ponga a valor lgico bajo.

Resistencias Pull-Up

Qu tipo de comunicacin es?


Es una comunicacin de tipo half duplex. Comunicacin
bidireccional por la misma linea pero no simultneamente
bidireccional.

Cual es la estructura de la comunicacin?


La estructura de la comunicacin bsica es la siguiente:

START condition (Master)

7 Bits de direccion de esclavo (Master)

1 Bit de RW, 0 es Leer y 1 Escribir. (Master)

1 Bit de Acknowledge (Slave)

Byte de direccin de memoria (Master)

1 Bit de Acknowledge (Slave)

Byte de datos (Master/Slave (Escritura/Lectura))

1 Bit de Acknowledge (Slave/Master (Escritura/Lectura))

STOP condition (Master)

Esta es la base de la comunicacin pero para leer o escribir, segn el dispositivo con el
que se comunica el Master la comunicacin tendr una estructura especfica.

Las definiciones o trminos utilizados en relacin


con las funciones del bus I2C son las siguientes:
Maestro (Master): Dispositivo que determina la temporizacin y la direccin del trfico de datos en el
bus. Es el nico que aplica los pulsos de reloj en la lnea SCL. Cuando se conectan varios dispositivos
maestros a un mismo bus la configuracin obtenida se denomina "multi-maestro".
Esclavo (Slave): Cualquier dispositivo conectado al bus incapaz de generar pulsos de reloj. Reciben
seales de comando y de reloj proveniente del dispositivo maestro.
Bus Desocupado (Bus Free): Estado en el cual ambas lneas (SDA y SCL) estn inactivas, presentando un
estado lgico alto. Unicamente en este momento es cuando un dispositivo maestro puede comenzar a
hacer uso del bus.
Comienzo (Start): Sucede cuando un dispositivo maestro hace ocupacin del bus, generando esta
condicin. La lnea de datos (SDA) toma un estado bajo mientras que la lnea de reloj (SCL) permanece
alta.

Parada (Stop): Un dispositivo maestro puede generar esta condicin dejando libre el bus. La
lnea de datos toma un estado lgico alto mientras que la de reloj permanece tambin en ese
estado.
Dato Vlido (Valid Data): Sucede cuando un dato presente en la lnea SDA es estable mientras
la lnea SCL est a nivel lgico alto.
Formato de Datos (Data Format): La transmisin de datos a travs de este bus consta de 8 bits
de datos ( 1 byte). A cada byte le sigue un noveno pulso de reloj durante el cual el dispositivo
receptor del byte debe generar un pulso de reconocimiento, conocido como ACK (del ingls
Acknowledge). Esto se logra situando la lnea de datos a un nivel lgico bajo mientras
transcurre el noveno pulso de reloj.

Direccin (Address): Cada dispositivo diseado para funcionar en este bus dispone de su
propia y nica direccin de acceso, que viene pre-establecida por el fabricante. Hay
dispositivos que permiten establecer externamente parte de la direccin de acceso. Esto
permite que una serie del mismo tipo de dispositivos se puedan conectar en un mismo bus
sin problemas de identificacin. La direccin 00 es la denominada "de acceso general",
por la cual responden todos los dispositivos conectados al bus.
Lectura/Escritura (Bit R/W): Cada dispositivo dispone de una direccin de 7 bits. El
octavo bit (el menos significativo LSB) enviado durante la operacin de
direccionamiento corresponde al bit que indica el tipo de operacin a realizar. Si este bit
es alto el dispositivo maestro lee informacin proveniente de un dispositivo esclavo. En
cambio, si este bit fuese bajo el dispositivo maestro escribe informacin en un dispositivo
esclavo.

Transmisin de bits
Los bits de datos van por SDA
Por cada bit de informacin es necesario un pulso de SCL
Los datos slo pueden cambiar cuando SCL est a nivel bajo

Inicio de transmisin
La transmisin la inicia el maestro
Flanco de bajada en SDA con SCL a nivel alto
Cuando nadie accede al bus hay un nivel alto en SCL y SDA

Finalizacin de transmisin
La transmisin la finaliza el maestro
Flanco de subida en SDA con SCL a nivel alto

Maestro enva datos a un esclavo

A -> Acknowledge Ack

Maestro lee datos de un esclavo

N -> Not Acknowledge NAck

Gracias