Você está na página 1de 23

Protocolo I2C

Aluno: Guilherme Guindani

Introduo ao Protocolo
Para explorar todos os benefcios dos sistemas e
dispositivos eletrnicos, os engenheiros e projetistas
visam melhorar a eficincia do hardware e minimizar
a complexidade dos circuitos.
Para facilitar esta rdua tarefa surgiu o protocolo de
comunicao I2C.

Introduo ao Protocolo
O protocolo de comunicao em 2 sinais I2C foi
originalmente desenvolvido pela Philips em meados de
1996. Atualmente este protocolo est amplamente
difundido e interconecta uma ampla gama de
dispositivos eletrnicos. Dentre estes encontramos
vrios dispositivos de controle inteligente, normalmente
microcontroladores e microprocessadores assim como
outros circuitos de uso geral, como drivers LCD, portas
de I/O, memrias RAM e EEPROM ou conversores de
dados.

Introduo ao Protocolo
Muitas vantagens podem ser atribudas ao protocolo I2C.
Destacam-se entre elas:
Organizao funcional em blocos, providenciando um
simples diagrama esquemtico final.
No h necessidade dos projetistas desenvolverem
interfaces. Todos os dispositivos integram as interfaces
"on-chip", o que aumenta a agilidade no
desenvolvimento.
Endereamento e protocolo de transferncia de dados
totalmente definido via software.
Possibilidade de incluso ou excluso de dispositivos no
barramento sem afeta-lo ou outros dispositivos
conectados a este.

Introduo ao Protocolo
Muitas vantagens podem ser atribudas ao protocolo I2C.
Destacam-se entre elas:
Diagnstico de falhas extremamente simples. O mal
funcionamento imediatamente detectado.
Desenvolvimento simplificado do software atravs do
uso de bibliotecas e mdulos de software reutilizveis.
Facilidade no desenvolvimento de placas de circuito
impresso, devido a quantidade de interconexes.

Introduo ao Protocolo
Adicionalmente, utilizando as vantagens da tecnologia CMOS
na fabricao dos dispositivos, temos:

Baixssimo consumo de corrente.


Alta imunidade rudos.
Ampla faixa de tenses p/ alimentao.
Ampla faixa de temperatura p/ operao.

Caractersticas Gerais do Barramento I 2C:


Suporta qualquer tecnologia de produo
(CMOS,NMOS,Bipolar,etc.).
A taxa de transferncia mxima de 100kbit/s no modo
padro (standart), ou 400kbit/s no modo rpido
(fastmode).
Informao de carry entre dispositivos conectados.

Caractersticas Gerais do Barramento I 2C:


Duas vias de comunicao: serial data (SDA) e serial
clock (SCL), ambas bidirecionais, conectadas ao
positivo da fonte de alimentao atravs de um resistor
de pull-up. Enquanto o barramento est livre ambas as
linhas ficam em nvel lgico alto.

Caractersticas Gerais do Barramento I 2C:


Todo dispositivo possui um endereo nico no
barramento, independente de sua natureza.
Qualquer dispositivo conectado pode operar como
transmissor ou receptor. Claro que isso depende da
natureza do dispositivo - um LCD no vai operar como
transmissor, assim como um teclado no operar como
receptor. Independente disto, qualquer dispositivo
endereado chamado de escravo (slave).
O nmero de interfaces conectadas fica dependente da
capacitncia mxima do barramento, que de 400pF.

Definies:
Transimiter (Transmissor): dispositivo que envia dados
atravs do barramento.
Receiver (Receptor): dispositivo que recebe dados
atravs do barramento.
Master: dispositivo que inicia a comunicao, gera o
sinal de clock e encerra a comunicao.
Multi-master: vrios dispositivos podem controlar o
barramento, mesmo sem comprometer a mensagem.
Quando isto ocorre temos vrios dispositivos operando
em modo master.

Definies:
Arbitration (Arbitrariedade) : procedimento p/ o controle
do barramento em modo multi-master. Visa no
corromper a transmisso dos dados e perder a sincrioia
do clock.
Sincronizao: procedimento p/ sincronizar o clock de
um ou mais dispositivos.

Comunicao:
Nveis lgicos:
Como o protocolo de comunicao I2C aceita uma ampla
gama de mtodos de fabricao para os seus
dispositivos (CMOS,NMOS,Bipolar,etc.) os nveis lgicos
alto e baixo no possuem valores pr-estabelecidos,
dependendo diretamente da teno Vcc de alimentao.

Comunicao:
Validao dos dados:
O dado na linha SDA precisa ser estvel durante o
perodo ALTO do clock. A mudana entre os nveis
lgicos alto e baixo s podem ser feitas enquanto a sinal
de clock estiver BAIXO.

Comunicao:
Condies iniciais e Finais:
Durante todo o processo apenas dois sinais so
caracterizados como condies de START e STOP.
A transio do nvel lgico ALTO para o BAIXO na
linha SDA, enquanto a linha SCL est em nvel lgico
ALTO, caracteriza a condio de START.
A transio do nvel lgico BAIXO para o ALTO na
linha SDA, enquanto a linha SCL est em nvel lgico
ALTO, caracteriza a condio de STOP.
Depois que se tem uma condio de START, diz-se
que o barramento est BUSY, e depois de um certo
tempo da condio STOP diz-se que o barramento
est FREE.

Comunicao:
Condies iniciais e Finais:

Condies de START e STOP.

Comunicao:

O dispositivo master ajusta a condio inicial.


O dispositivo master envia 7 bis de endereamento.
O dispositivo master envia o 8o bit, R/W.
O dispositivo slave envia o sinal de ACK (Acknowledge).
O dispositivo master (ou slave) envia pacotes de 8 bits de dados,
sempre seguidos de um sinal ACK enviado pelo dispositivo slave (ou
master) confirmando a recepo.
O dispositivo master encerra a comunicao.

Comunicao:
Endereamento feito pelo MASTER.

Comunicao:

Comunicao:

Comunicao:
Endereamento de 7-bits
O endereamento do protocolo I2C bem simples, dado
pelo primeiro BYTE que sucede a condio de START.
Este enderea o SLAVE que o MASTER vai acessar. A
nica exceo esta regra um endereo conhecido
como: GENERIC CALL. Que faz com que todos os
SLAVES respondam com um ACK.

Comunicao:
(1)Nenhum Dispositivo
Pode responder um START
com um ACK.
(2)O endereo CBUS foi
criado para dar compatibilidade
entre os do CBUS com o I2C.
(3)Endereo reservado para
compatibilidade com diferentes
formatos de barramento.

Consideraes finais:
importante fazer algumas observaes:
O endereamento default feito com 7 bits, mas existe
o modo extendido que possibilita o uso de 10 bits de
endereamento (1024 dispositivos).
A quantidade de pacotes de transmisso controlada
pelo dispositivo master, no possuindo um valor mximo
definido. Este um ponto importante a ser observado,
pois como os dados sao transmitidos serialmente, na
utilizao de memrias, perde-se os limites de
endereamento que existem nos dispositivos paralelos.
A comunicao pode ser suspensa, simplesmente
travando-se o sinal de clock. Isto pode ser til para
efetuar o tratamento de interrupes ou derivados, sem,
no entanto, corromper os dados transmitidos.

Bibliografia:
http://www.eletronica.org/modules.php?n
ame=News&file=article&sid=13
http://www.semiconductors.philips.
com/acrobat/literature/9398/39340011.pdf

Você também pode gostar