Visão geral e benefícios do barramento I2C

Índice:

Visão geral e benefícios do barramento I2C
Visão geral e benefícios do barramento I2C
Anonim

Desenvolvido pela Philips na década de 1980, o I2C (alternativamente escrito I2C) tornou-se um dos protocolos de comunicação serial mais usados na eletrônica. O I2C facilita a comunicação entre componentes eletrônicos ou circuitos integrados, estejam os componentes na mesma placa de circuito impresso ou conectados por um cabo.

Image
Image

O que é o protocolo I2C?

I2C é um protocolo de comunicação serial que requer apenas duas linhas de sinal. Ele foi projetado para comunicação entre chips em uma placa de circuito impresso (PCB). O I2C foi originalmente projetado para comunicação de 100 Kbps. No entanto, modos de transmissão de dados mais rápidos foram desenvolvidos ao longo dos anos para atingir velocidades de até 3.4 Mbit.

A principal característica do I2C é a capacidade de ter muitos componentes em um único barramento de comunicação com apenas dois fios, o que torna o I2C perfeito para aplicações simples. O protocolo I2C foi estabelecido como um padrão oficial, permitindo compatibilidade com versões anteriores entre implementações I2C.

Sinais I2C

O protocolo I2C usa duas linhas de sinal bidirecionais para se comunicar com os dispositivos no barramento de comunicação. Os dois sinais usados são:

  • Linha de dados seriais (SDL)
  • Serial Data Clock (SDC)

A razão pela qual o I2C pode usar apenas dois sinais para se comunicar com vários periféricos está em como a comunicação ao longo do barramento é tratada. Cada comunicação I2C começa com um endereço de 7 bits (ou 10 bits) que chama o endereço do periférico.

Isso permite que vários dispositivos no barramento I2C desempenhem o papel de dispositivo primário conforme as necessidades do sistema ditam. Para evitar colisões de comunicação, o protocolo I2C inclui recursos de arbitragem e detecção de colisão, que permitem uma comunicação suave ao longo do barramento.

Benefícios do I2C

Como protocolo de comunicação, o I2C tem as seguintes vantagens:

  • Taxas de transmissão de dados flexíveis.
  • Comunicação à distância mais longa que SPI.
  • Cada dispositivo no barramento é endereçável independentemente.
  • Os dispositivos têm uma relação simples de primário/secundário.
  • Requer apenas duas linhas de sinal.
  • É capaz de lidar com várias comunicações primárias, fornecendo arbitragem e detecção de colisão de comunicação.

Limitações de I2C

Com todas essas vantagens, o I2C também tem algumas limitações que podem precisar ser projetadas. As limitações I2C mais importantes incluem:

  • Como apenas 7 bits (ou 10 bits) estão disponíveis para endereçamento de dispositivos, dispositivos no mesmo barramento podem compartilhar o mesmo endereço. Alguns dispositivos podem configurar os últimos bits do endereço, mas isso impõe uma limitação de dispositivos no mesmo barramento.
  • Apenas algumas velocidades de comunicação limitadas estão disponíveis e muitos dispositivos não suportam a transmissão em velocidades mais altas. O suporte parcial para cada velocidade no barramento é necessário para evitar que dispositivos mais lentos capturem transmissões parciais que podem resultar em falhas operacionais.
  • A natureza compartilhada do barramento I2C pode resultar na interrupção de todo o barramento quando um único dispositivo no barramento para de operar. Alternar a alimentação do barramento pode restaurar a operação adequada.
  • Como os dispositivos definem sua própria velocidade de comunicação, dispositivos operacionais mais lentos podem atrasar a operação de dispositivos mais rápidos.
  • I2C consome mais energia do que outros barramentos de comunicação serial devido à topologia de drenagem aberta das linhas de comunicação.
  • As limitações do barramento I2C normalmente limitam o número de dispositivos em um barramento para cerca de uma dúzia.

Aplicativos I2C

I2C é uma ótima opção para aplicações que requerem baixo custo e implementação simples ao invés de alta velocidade. Por exemplo, os usos comuns do protocolo de comunicação I2C incluem:

  • Leitura de certos ICs de memória.
  • Acessando DACs e ADCs.
  • Transmitindo e controlando ações direcionadas ao usuário.
  • Leitura de sensores de hardware.
  • Comunicação com vários microcontroladores.

Recomendado: