Skip to content. Skip to navigation

Eletronica.org

Sections
Personal tools
You are here: Home Artigos Eletrônica Digital e Sistemas Embarcados Protocolo de Comunicação I2C

Document Actions

Protocolo de Comunicação I2C

by Suporte Eletronica .org last modified 05/05/2008 01:00

Para explorar todos os benefícios dos sistemas e dispositivos eletrônicos, os engenheiros e projetistas visam melhorar a eficiência do hardware e minimizar a complexidade dos circuitos.

1. Introdução

Para explorar todos os benefícios dos sistemas e dispositivos eletrônicos, os engenheiros e projetistas visam melhorar a eficiência do hardware e minimizar a complexidade dos circuitos.

Para facilitar esta árdua tarefa surgiu o protocolo de comunicação I2C.

O protocolo de comunicação 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 eletrônicos. Dentre estes encontramos vários dispositivos de controle inteligente, normalmente microcontroladores e microprocessadores assim como outros circuitos de uso geral, como drivers LCD, portas de I/O, memórias RAM e EEPROM ou conversores de dados.

Muitas vantagens podem ser atribuídas ao protocolo I2C. Destacam-se entre elas:

- Organização funcional em blocos, providenciando um simples diagrama esquemático final.
- Não há necessidade dos projetistas desenvolverem interfaces. Todos os dispositivos integram as interfaces "on-chip", o que aumenta a agilidade no desenvolvimento.
- Endereçamento e protocolo de transferência de dados totalmente definido via software.
- Possibilidade de inclusão ou exclusão de dispositivos no barramente sem afeta-lo ou outros dispositivos conectados a este.
- Diagnóstico de falhas extremamente simples. O mal funcionamento é imediatamente detectado.
- Desenvolvimento simplificado do software através do uso de bibliotecas e módulos de software reutilizáveis.
- Facilidade no desenvolvimento de placas de circuito impresso, devido a quantidade de interconexões.

Adicionalmente, utilizando as vantagens da tecnologia CMOS na fabricação dos dispositivos, temos:
- Baixíssimo consumo de corrente.
- Alta imunidade à ruidos.
- Ampla faixa de tensões p/ alimentação.
- Ampla faixa de temperatura p/ operação.


2. Características Gerais do Barramento I2C:

- Suporta qualquer tecnologia de produção.
- Duas vias de comunicação: serial data (SDA) e serial clock (SCL), ambas bidirecionais, conectadas ao positivo da fonte de alimentação através de um resistor de pull-up. Enquanto o barramento está livre ambas as linhas ficam em nível lógico alto.
- A taxa de transferência máxima é de 100kbit/s no modo padrão (standart), ou 400kbit/s no modo rápido (fastmode).
- Informação de carry entre dispositivos conectados.
- Todo dispositivo possui um endereço único no barramento, independente de sua natureza.
- Qualquer dispositivo conectado pode operar com transmissor ou receptor. Claro que isso depende da natureza do dispositivo - um LCD não vai operar como transmissor, assim como um teclado não operará como receptor. Independente disto, qualquer dispositivo endereçado é chamado de escravo (slave).
- O número de interfaces conectadas fica dependente da capacitância máxima do barramento, que é de 400pF.


3. Definições:


- Transimiter (Transmissor): dispositivo que envia dados através do barramento.
- Receive (Receptor): dispositivo que recebe dados através do barramento.
- Master: dispositivo que inicia a comunicação, gera o sinal de clock e encerra a comunicação.
- Multi-master: vários dispositivos podem controlar o barramento, mesmo sem comprometer a mensagem. Quando isto ocorre temos vários dispositivos operando em modo maste
- Arbitrarion (Arbitrariedade) : procedimento p/ o controle do barramento em modo multi-master. Visa não corromper a transmissão dos dados e perder a sincrioia do clock.
- Sincronização: procedimento p/ sincronizar o clock de um ou mais dispositivos.


4. Comunicação:

4.1 Níveis lógicos
Como o protocolo de comunicação i2c aceita uma ampla gama de métodos de fabricação para os seus dispositivos (CMOS,NMOS,Bipolar,etc.) os níveis lógicos alto e baixo não possuem valores pré-estabelecidos, dependendo diretamente da tenção Vcc de alimentação.

4.2 Validação dos dados
O dado na linha SDA precisa ser estável durante o período ALTO do clock. A mudança entre os níveis lógicos alto e baixo só podem ser feitas enquanto a sinal de clock estiver BAIXO.

4.3 Condições Iniciais e Finais
Durante todo o processo apenas dois sinais são caracterizados como condições de START e STOP.

4.4 O procedimento de comunicação do protocolo I2C é extremamente simples. Basicamente temos 6 itens para análise:
- 1. O dispositivo master ajusta a condição inicial.
- 2. O dispositivo master envia 7 bis de endereçamento.
- 3. O dispositivo master envia o 8o bit, RW/
- 4. O dispositivo slave envia o sinal de ACK (Acknowledge)
- 5. 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 recepção.
- 6. O dispositivo master encerra a comunicação.

Sinais de de dados e clock em um exemplo de comunicação prática:



É importante fazer algumas observações:
1. O endereçamento default é feito com 7 bits, mas existe o modo extendido que possibilita o uso de 10 bits de endereçamento (1024 dispositivos).
2. A quantidade de pacotes de transmissão é controlada pelo dispositivo master, não possuindo um valor máximo definido. Este é um ponto importante a ser observado, pois como os dados sao transmitidos serialmente, na utilização de memórias, perde-se os limites de endereçamento que existem nos dispositivos paralelos.
3. A comunicação pode ser suspensa, simplesmente travando-se o sinal de clock. Isto pode ser útil para efetuar o tratamento de interrupções ou derivados, sem, no entanto, corromper os dados transmitidos.


5. Conclusão
Este pequeno artigo visou fazer um apanhado geral sobre o protocolo de comunicação I2C, tentando demonstrar de modo rápido e didático como funciona este método de transeferência de dados. Documentos com características técnicas mais apuradas podem ser encontrados no site da Philips Instruments ( www.philips.com ).
Aos que já conhecem e utilizaram o protocolo, já estão por dentro das
facilidades. Para os que nunca utilizaram, não deixem de experimentar. Vocês se surpreenderão com as facilidades e agilidades proporcionadas.


Sugestões ou correções no texto acima, contacte-nos através do nosso e-mail .

Roberto Paulo Dias A. Filho
roberto@eletronica.org




Acesso rápido: Lista Completa de Projetos | Diretório de Artigos | Apostilas & E-Books | Política de Privacidade

Publicidade

 
Assine o informativo Eletronica.org Grupos de Usuários O'Reilly

Log in


Forgot your password?
New user?
Recent Changes
All recent changes…
Conheça Também
Sites em Português
  - Neoradix
  - DQSoft
  - Gabiarra
  - SafiraTec
  - Feira de Ciências
  - RoboFEI
  - Transistor548
  - Rogercom.com
  - Pise na Grama
  - Electronics.com.br
  - Tecnocientista.info

Listas em Português
  - PicListBrasil
  - SisEembarcados

Sites em Inglês
  - Embedded.com
  - Hack a Day
  - Electr. Design
  - Arch Embedded!



[O que é isso?]
 

Powered by Plone CMS, the Open Source Content Management System

This site conforms to the following standards: