Skip to main content

Co je protokol I2C?

Protocol Radio #326 by Nicky Romero (#PRR326) (Smět 2025)

Protocol Radio #326 by Nicky Romero (#PRR326) (Smět 2025)
Anonim

Vyvinutý společností Philips v 80. letech, se I2C stal jedním z nejběžnějších sériových komunikačních protokolů v elektronice. I2C umožňuje komunikaci mezi elektronickými součástmi nebo IC na IC, zda jsou komponenty na stejném PCB nebo připojeny kabelem. Klíčovým prvkem I2C je schopnost mít na jedné komunikační sběrnici obrovský počet komponentů s pouze dvěma vodiči, což činí I2C ideální pro aplikace, které vyžadují jednoduchost a nízké náklady na rychlost.

Protokol I2C

I2C je sériový komunikační protokol, který vyžaduje pouze dvě signální linky. Byl navržen pro komunikaci mezi čipy na PCB. I2C byla původně navržena pro komunikaci 100kb / s, avšak v průběhu let se vyvíjely rychlejší režimy přenosu dat, které dosáhly rychlosti až 3,4Mbit. Protokol I2C byl vytvořen jako oficiální standard, který zajišťuje dobrou kompatibilitu mezi implementacemi I2C a dobrou zpětnou kompatibilitou.

Signály I2C

Protokol I2C používá pouze dvě obousměrné signální linky pro komunikaci se všemi zařízeními na sběrnici I2C. Použité dva signály jsou:

  • Sériový datový řádek (SDL)
  • Sériové datové hodiny (SDC)

Důvodem, proč může I2C používat pouze dva signály pro komunikaci s řadou periferních zařízení, je způsob, jakým se s komunikací po sběrnici manipuluje. Každá komunikace I2C začíná se 7bitovou (nebo 10bitovou) adresou, která volá adresu periferního zařízení, zbytek komunikace je určen k přijímání komunikace. To umožňuje více zařízení na sběrnici I2C, aby hrály roli hlavního zařízení podle potřeb diktátu systému. Aby se zabránilo kolizím komunikace, protokol I2C obsahuje možnosti rozhodování a detekce kolize, které umožňují hladkou komunikaci po sběrnici.

Výhody a omezení

Jako komunikační protokol má I2C spoustu výhod, které jsou dobrou volbou pro mnoho embedded design aplikací. I2C přináší následující výhody:

  • I2C vyžaduje pouze dvě signální linky
  • Flexibilní rychlosti přenosu dat
  • Každé zařízení na sběrnici je nezávisle adresovatelné
  • Zařízení mají jednoduchý vztah Master / Slave
  • I2C je schopen pracovat s více komunikačními základnami tím, že poskytuje rozhodování a detekci kolizí komunikace
  • Komunikace s delší vzdáleností než SPI

Se všemi těmito výhodami má I2C také několik omezení, které mohou být potřeba navrhnout. Mezi nejdůležitější omezení I2C patří:

  • Vzhledem k tomu, že pro adresování zařízení je k dispozici pouze 7 bitů (nebo 10 bitů), zařízení ve stejné sběrnici mohou sdílet stejnou adresu. Některá zařízení jsou schopna konfigurovat posledních pár bitů adresy, ale stále to omezuje zařízení na stejné sběrnici.
  • Je k dispozici jen několik omezených komunikačních rychlostí a mnoho zařízení nepodporuje přenos vyšší rychlostí. Částečná podpora pro každou rychlost na sběrnici je nutná, aby se zabránilo pomalejším zařízením zachytit částečné přenosy, které povedou k provozním závadám.
  • Sdílená povaha sběrnic I2C může mít za následek, že celá sběrnice visí, když jedno zařízení na autobusu přestane fungovat. Cyklování napájení na sběrnici může být použito k restartování sběrnice a obnovení správné činnosti.
  • Vzhledem k tomu, že zařízení mohou nastavit komunikační rychlost, pomalejší provozní zařízení mohou zpozdit provoz zařízení s vyšší rychlostí.
  • I2C čerpá více energie než jiné sériové komunikační sběrnice kvůli topologii otevřeného odtoku komunikačních linek.
  • Omezení sběrnice I2C typicky omezuje počet zařízení na sběrnici na přibližně tucet zařízení.

Aplikace

I2C sběrnice je skvělá volba pro aplikace, které vyžadují nízké náklady a jednoduchou implementaci spíše než vysokou rychlostí. Například čtení některých paměťových integrovaných obvodů, přístup k DAC a ADC, čtení čidel, přenos a řízení uživatelsky řízených akcí, čtení hardwarových senzorů a komunikace s více mikrokontroléry jsou běžným používáním komunikačního protokolu I2C.