Вы находитесь на странице: 1из 16

11/08/2011

I2C Inter-Integrated Circuits


Introduccin Caractersticas Generales Especificacin del I2C Bus Extensiones de la especificacin EEPROM I2C 24LC64

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

I2C Introduccin
En los 80s Phillips desarroll una comunicacin entre los integrados que se encontraban sobre una misma placa y que se utilizaban para sintonizar circuitos de radio y TV. Surge de all su nombre de Inter-Integrated Circuits o I2C Hoy en da se pueden encontrar sistemas que integran: Microcontrolador como unidad de control inteligente. Circuitos de uso general como LCD Drivers, memorias RAM, EEPROM o conversores de datos. Circuitos de aplicaciones especficas para audio o video.
Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

11/08/2011

I2C Caractersticas Generales


Comunicacin sincrnica que requiere slo dos seales
SDA, Lnea de Datos Serie SCL, Lnea de Clock Serie

Relacin Master/Slave. Los IC se identifican con direcciones cuando se desea establecer una comunicacin. Un Master puede actuar como Master-Transmisor o como Master-Receptor. Es un Bus Multi-Master. Comunicacin Serie Bi-direccional orientada a 8bits. Velocidades de transferencia segn el modo:
100kbit/s en Standard Mode 400kbit/s en Fast Mode 3.4Mbit/s en High-speed mode
Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

I2C Caractersticas Generales


Todos los dispositivos se conectan directamente sobre un mismo bus.

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

11/08/2011

I2C Caractersticas Generales


Se considera Master al IC que inicia la transferencia de datos y genera la seal de clock (SCL) para llevar a cabo la transferencia. El dispositivo que fue direccionado por el Master es considerado el Esclavo. Si dos Masters intentan iniciar una comunicacin, uno de ellos gana el Bus y el mensaje no se corrompe.
Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

I2C Caractersticas Generales

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

11/08/2011

I2C Caractersticas Generales


Ventajas en el diseo:
Pasaje del diagrama en bloques al esquemtico en forma directa. Se pueden agregar o retirar IC sin alterar el resto del Bus. Minimiza la cantidad de pistas a la hora de hacer el PCB. Disminuye el costo de fabricacin. No hace falta poner decodificadores o lgica adicional para realizar el direccionamiento. Esta orientado a que ante un cambio, todo pueda definirse va software.
Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

I2C Especificacin del Bus


Capa fsica
Esta basado en una conexin tipo Wired-And con el uso de I/O tipo Open-Drain. Las resistencias de pull-up deben agregarse en el diseo. Cuando el Bus est libre las resistencias de pull-up lo llevan al estado ALTO.

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

11/08/2011

I2C Especificacin del Bus


Capa fisica
Los bits transferidos son ledos durante el estado ALTO de la lnea de clock. Es fundamental que sean estables durante este tiempo. Los bits de datos cambian durante el estado lgico BAJO de la lnea de clock.

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

I2C Especificacin del Bus


Capa fisica
Un esclavo puede demorar al master si fuerza la seal SCL a nivel BAJO (posibilidad de la conexin Wired-And). Tpicamente sucede cuando el esclavo no termin de procesar la informacin y no esta listo para continuar con un nuevo dato.

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

11/08/2011

I2C Especificacin del Bus


START & STOP de la comunicacin
La comunicacin en el Bus debe iniciarla y finalizarla el master. Realizando transiciones especficas de las lneas SDA y SCL, el master genera la secuencia de START o STOP de la comunicacin. El Bus se considera ocupado luego de que se haya producido la secuencia de START. El bus se considera libre un cierto tiempo despus que se haya producido la secuencia de STOP. Existe una situacin ms donde el master genera una secuencia de REPEATED START en vez de STOP y se utiliza para iniciar una segunda comunicacin sin liberar el Bus.

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

I2C Especificacin del Bus


Transferencia de los datos:
Los datos se envan de a 8bits. El MSB primero. No hay restricciones de los bytes que pueden enviarse en una transferencia. Cada byte debe ser validado con un ACKNOLEDGE. Esto consiste en poner en estado bajo la lnea SDA en el ciclo de reloj siguiente al 8 bit del dato.

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

11/08/2011

I2C Especificacin del Bus


Direccionamiento de 7bits:
Cuando el master decide iniciar una comunicacin debe especificar con quien quiere hablar El primer byte luego de la condicin de START debe definir la direccin del esclavo y qu tipo de comunicacin establecer (lectura o escritura). Ese byte se descompone en 7 bits para la direccin (ADDRESS) y 1 bit para definir la operacin (R/W).
Si R/W = 0, el master esta iniciando la comunicacin para enviarle datos al esclavo. Situacin que identifica al master como master-transmitter. Si R/W = 1, el master esta iniciando una comunicacin para leer informacin del esclavo. Situacin que identifica al master como master-receiver.
Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

I2C Especificacin del Bus


Transferencia completa con direccionamiento de 7bits:

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

11/08/2011

I2C Especificacin del Bus


Trasferencias de datos:
Pueden darse transferencia: las siguientes formas de

Master-Transmitter. Master-Receiver.
Combinado.

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

I2C Especificacin del Bus


Trasferencias de datos Master-Transmitter

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

11/08/2011

I2C Especificacin del Bus


Trasferencias de datos Master-Receiver

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

I2C Especificacin del Bus


Trasferencias de datos combinada

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

11/08/2011

I2C Especificacin del Bus


Bus Arbitration
Como es multi-master, puede pasar que dos masters intenten iniciar una comunicacin al mismo tiempo.
No existe el realmente la idea de mismo tiempo, pero s un intervalo de tiempo desde que el primer master efecta el START. Pasado ese intervalo, el bus se considera ocupado y no existe arbitracin, el segundo master debe esperar.

El proceso de arbitracin es la forma en la cual se determina qu maestro gana el Bus. Cada maestro esta sensando el nivel de la seal SDA y cuando no coincide con el dato que esta poniendo, pierde la batalla y se pone en modo esclavo. Los bits enviados hasta ese punto no se pierden y el master ganador contina como nico master.
Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

I2C Especificacin del Bus


Bus Arbitration

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

10

11/08/2011

I2C Especificacin del Bus


Bus Arbitration Sincronizacin
Cuando dos masters quieran tomar el bus, cada uno genera su seal de SCL. Gracias a la conexin Wired-And no hay conflictos y resulta una seal SCL determinada por:
El nivel BAJO por el dispositivo que ms tiempo tenga la seal SCL en nivel BAJO. El nivel ALTO por el dispositivo que menos tiempo tenga la seal SCL en nivel ALTO.

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

I2C Especificacin del Bus


Direcciones Addresses:
A la hora de trabajar como esclavo, un dispositivo tiene una direccin asociada. En los microcontroladores tpicamente las direcciones se pueden definir configurando un el valor en un registro. Las direcciones de los dispositivos tienen algunos valores reservados por el comit del Bus I2C.

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

11

11/08/2011

I2C Extensiones a la especifiacin


La versin Standard desarrollada en los 80 slo llegaba a 100kbit/s. Las versiones siguientes agregaron dos modo de operacin compatibles:
Fast-Mode para transmitir como mximo a 400kbit/s. Versin 1.0 (1992). High-Speed Mode para transmitir como mximo a 3.4Mbit/s. Versin 2.0 (1998).

Los tres modos pueden convivir simultneamente formando un nico Bus. Para direccionar ms dispositivos se agreg el direccionamiento en 10bits.
El direccionamiento a 7 o 10 bits pueden convivir simultneamente en cualquiera de los modos.

Estas modificaciones estn acompaadas por nuevas disposiciones en la capa fsica.


Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

I2C Extensiones a la especificacin


High-Speed Mode Transferencia de datos:
Para compatibilizar con los modos antiguos, toda comuniacin debe inciarse con la siguiente secuencia:
START 1 byte de Master Code 1 bit de Not-Ack.

Con esta secuencia puede competir para la arbitracin y sincronizacin. Debe hacerse a una velocidad compatible con Fast o Standard Mode. Cuando gana el bus seguir transmitiendo en High-Speed hasta el prximo STOP.

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

12

11/08/2011

I2C Extensiones a la especificacin


10bit Addressing:
Para direccionar con 10bits, se utiliza el byte reservado 111110XX como primer byte luego del START.
Los dos bits XX representan los MSB del addess. El segundo byte enviado debe contener los 8 bits faltantes de la direccin

El primer byte luego del START sigue determinando la direccin de transferencia. El en caso de que se haga una lectura del esclavo debe utilizarse una secuencia de REPETEAD START. El direccionamiento de 10bits adems permite realizar distintos tipos de transferencias combinadas
Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

I2C Extensiones a la especificacin


10bit Addressing:
Datagrama de Master Transmitter. Datagrama de Master Recieiver.

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

13

11/08/2011

Implementacin EEPROM I2C 24LC64


Memoria EEPROM presente en el stick LPCXpresso 1769

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

Implementacin EEPROM I2C 24LC64


Memoria EEPROM presente en el stick LPCXpresso 1769
Velocidad mxima de 400kHz para VDD < 2,5V Direccin en el Bus I2c: b1010XXX
XXX queda definido por hard en el estado lgico de los pines A0, A1, A2 En el Stick LPCXpresso1769: b1010000

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

14

11/08/2011

Operaciones de escritura:

Implementacin EEPROM I2C 24LC64


Operacin de escritura de 1 Byte:

Operacin de escritura de una pgina de 64 bytes. Incremento automtico de la direccin de escritura:

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

Implementacin EEPROM I2C 24LC64


Operaciones de lectura:
Operacin de lectura aleatoria de 1 Byte:

Operacin de lectura secuencial. Se inicia como una lectura aleatoria y luego se autoincremente la direccin de lectura:

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

15

11/08/2011

I2C Referencias
Bibliografa:
The I2C Bus Specification, Version 2.1, 2000. Phillips Semiconductors.

Presentacin para la ctedra de Tcnicas Digitales II, UTN-FRBA, 2011. Autor:


Pablo Montalti, p_montalti@yahoo.com.ar

Tcnicas Digitales II UTN-FRBA 2011 p_montalti@yahoo.com.ar

16

Вам также может понравиться