Wedi'i ddatblygu gan Philips yn y 1980au, mae I2C wedi dod yn un o'r protocolau cyfathrebu cyffredin mwyaf cyffredin mewn electroneg. Mae I2C yn galluogi cyfathrebu rhwng cydrannau electronig neu IC i IC, p'un ai yw'r cydrannau ar yr un PCB neu sy'n gysylltiedig â chebl. Nodwedd allweddol I2C yw'r gallu i gael nifer helaeth o gydrannau ar fws cyfathrebu unigol gyda dim ond dwy wifren sy'n gwneud I2C yn berffaith ar gyfer ceisiadau sy'n galw symlrwydd a chost isel dros gyflymder.
Trosolwg o'r Protocol I2C
Mae I2C yn brotocol cyfathrebu cyfresol sydd ond yn gofyn am ddwy linell signal a gynlluniwyd ar gyfer cyfathrebu rhwng sglodion ar PCB. Dyluniwyd I2C yn wreiddiol ar gyfer cyfathrebu 100kbps ond datblygwyd dulliau trosglwyddo data cyflymach dros y blynyddoedd i gyrraedd cyflymder o hyd at 3.4Mbit. Mae'r protocol I2C wedi'i sefydlu fel safon swyddogol, sy'n darparu ar gyfer cydnawsedd da ymhlith gweithrediadau I2C a chydweddoldeb da yn ôl.
Signalau I2C
Mae'r Protocol I2C yn defnyddio dau linell signal dwy-gyfeiriadol yn unig i gyfathrebu â'r holl ddyfeisiau ar y bws I2C. Y ddau arwydd a ddefnyddir yw:
- Llinell Data Gyfresol (SDL)
- Cloc Data Cyfresol (SDC)
Y rheswm y gall I2C ddefnyddio dim ond dau arwydd i gyfathrebu â nifer o perifferolion yw sut y mae cyfathrebu ar hyd y bws yn cael ei drin. Mae pob cyfathrebu I2C yn dechrau gyda chyfeiriad 7-bit (neu 10-bit) sy'n galw am gyfeiriad yr ymylol i weddill y cyfathrebu i dderbyn y cyfathrebu. Mae hyn yn caniatáu dyfeisiau lluosog ar fws I2C i chwarae rôl y meistr ddyfais wrth i anghenion y system bennu. Er mwyn atal gwrthdrawiadau cyfathrebu, mae'r protocol I2C yn cynnwys gallu cyflafareddu a chanfod datrys gwrthdrawiadau sy'n caniatáu cyfathrebu llyfn ar hyd y bws.
Manteision a chyfyngiadau
Fel protocol cyfathrebu, mae gan I2C lawer o fanteision sy'n gwneud yn ddewis da ar gyfer llawer o geisiadau dylunio mewnol. Mae I2C yn dod â'r manteision canlynol:
- Dim ond dwy linell signal sy'n ofynnol ar I2C
- Cyfraddau trosglwyddo data hyblyg
- Mae pob cyfeiriad ar y bws yn annerch yn annibynnol
- Mae gan ddyfeisiau berthynas Meistr / Gaethweision syml
- Mae I2C yn gallu trin sawl cyfathrebu meistr trwy ddarparu canfod gwrthdrawiad cyflafareddu a chyfathrebu
- Cyfathrebu pellter hirach na SPI
Gyda'r holl fanteision hyn, mae gan I2C ychydig o gyfyngiadau y gallai fod angen eu dylunio o gwmpas. Mae'r cyfyngiadau I2C pwysicaf yn cynnwys:
- Gan mai dim ond 7-bit (neu 10-bit) sydd ar gael ar gyfer mynd i'r afael â dyfais, gall dyfeisiau ar yr un bws rannu'r un cyfeiriad. Mae rhai dyfeisiau'n gallu ffurfweddu ychydig ddarnau'r cyfeiriad, ond mae hyn yn dal i osod cyfyngiad ar ddyfeisiau ar yr un bws.
- Dim ond ychydig o gyflymder cyfathrebu sydd ar gael ac nid yw llawer o ddyfeisiadau yn cefnogi'r cyflymder uwch o drosglwyddo. Mae angen cefnogaeth ranbarthol ar gyfer pob cyflymder ar y bws i atal dyfeisiau arafach rhag dal trosglwyddiadau rhannol a fydd yn arwain at glitches gweithredol.
- Gall natur a rennir bws I2C arwain at y bws cyfan sy'n crogi pan fydd un ddyfais ar y bws yn aros yn gweithredu. Gellir defnyddio beicio'r pŵer i'r bws i ailgychwyn y bws ac adfer gweithrediad priodol.
- Gan y gall dyfeisiau osod cyflymder cyfathrebu, gall dyfeisiau gweithredol arafach oedi gweithrediad dyfeisiau cyflymach cyflymach.
- Mae I2C yn tynnu mwy o bŵer na chwmnïau cyfathrebu cyfresol eraill oherwydd topoleg draen agored y llinellau cyfathrebu.
- Mae cyfyngiadau bws I2C fel arfer yn cyfyngu ar nifer y dyfeisiau ar fys i oddeutu dwsin o ddyfeisiau.
Ceisiadau
Mae'r bws I2C yn opsiwn gwych ar gyfer ceisiadau sydd angen gweithredu cost isel a syml yn hytrach na chyflymder uchel. Er enghraifft, mae darllen rhai cofiannau IC, gan ddefnyddio DACs ac ADCs, darllen synwyryddion , trosglwyddo a rheoli gweithredoedd a gyfeirir gan ddefnyddwyr, darllen synwyryddion caledwedd, a chyfathrebu â microcontrolwyr lluosog yn ddefnydd cyffredin o'r protocol cyfathrebu I2C.