Pregled I2C

Razvil Philips v osemdesetih, je I2C postal eden najpogostejših serijskih komunikacijskih protokolov v elektroniki. I2C omogoča komunikacijo med elektronskimi komponentami ali IC v IC, ali so komponente na istem PCB ali so priključene prek kabla. Ključna značilnost I2C je zmožnost, da ima na enem komunikacijskem vodilu veliko komponent z samo dvema žicama, kar naredi I2C kot nalašč za aplikacije, ki zahtevajo enostavnost in nizke stroške nad hitrostjo.

Pregled protokola I2C

I2C je serijski komunikacijski protokol, ki zahteva samo dve signalni liniji, ki je bila zasnovana za komunikacijo med čipi na PCB. I2C je bil prvotno zasnovan za komunikacijo s 100kbps, vendar so bili v preteklih letih razviti hitrejši načini prenosa podatkov, da bi dosegli hitrost do 3,4Mbit. Protokol I2C je bil ustanovljen kot uradni standard, ki zagotavlja dobro združljivost med I2C implementacijami in dobro nazaj združljivost.

Signali I2C

Protokol I2C uporablja samo dve dvosmerni signalni liniji za komuniciranje z vsemi napravami na I2C vodilu. Uporabljeni sta naslednji signali:

Razlog, da lahko I2C uporablja samo dva signala za komunikacijo s številnimi zunanjimi napravami, je v tem, kako se obravnava komunikacija vzdolž vodila. Vsaka komunikacija I2C se začne s 7-bitnim (ali 10-bitnim) naslovom, ki pokriva naslov obrobne strani, preostanek sporočila pa naj bi prejeli sporočilo. To omogoča več napravam na I2C vodilu, da igrajo vlogo glavne naprave, saj to narekujejo potrebe sistema. Za preprečevanje komunikacijskih trkov, protokol I2C vključuje zmožnosti odkrivanja arbitraže in trčenja, ki omogočajo gladko komunikacijo vzdolž vodila.

Prednosti in omejitve

Kot komunikacijski protokol ima I2C veliko prednosti, ki omogočajo, da je dobra izbira za mnoge vgrajene aplikacije. I2C prinaša naslednje prednosti:

Z vsemi temi prednosti ima I2C tudi nekaj omejitev, ki jih je morda treba oblikovati okrog. Najpomembnejše omejitve I2C so:

Aplikacije

Bus I2C je odlična možnost za aplikacije, ki zahtevajo poceni in enostavno izvajanje, ne pa visoke hitrosti. Na primer, branje določenih IC pomnilnika, dostop do DAC-jev in ADC-jev, bralni senzorji , oddajanje in krmiljenje usmerjenih dejanj uporabnikov, branje senzorjev strojne opreme in komuniciranje z več mikrokontrolerji so običajne uporabe komunikacijskega protokola I2C.