Iliyoundwa na Philips katika miaka ya 1980, I2C imekuwa mojawapo ya protocols ya kawaida ya mawasiliano katika umeme. I2C inawezesha mawasiliano kati ya vipengele vya umeme au IC kwa IC, ikiwa ni vipengele vilivyo kwenye PCB sawa au kushikamana kupitia cable. Kipengele muhimu cha I2C ni uwezo wa kuwa na idadi kubwa ya vipengele kwenye basi moja ya mawasiliano na waya mbili tu ambayo inafanya I2C kamili kwa ajili ya maombi ambayo inahitaji urahisi na gharama ya chini juu ya kasi.
Maelezo ya Itifaki ya I2C
I2C ni itifaki ya mawasiliano ya siri ambayo inahitaji tu mistari mbili za signal ambazo zimeundwa kwa ajili ya mawasiliano kati ya chips kwenye PCB. I2C ilikuwa awali iliyoundwa kwa ajili ya mawasiliano ya 100kbps lakini njia za maambukizi ya kasi zaidi zimeandaliwa zaidi ya miaka ili kufikia kasi ya hadi 3.4Mbit. Itifaki ya I2C imeanzishwa kama kiwango rasmi, kinachotoa utangamano mzuri miongoni mwa utekelezaji wa I2C na utangamano mzuri wa nyuma.
Ishara za I2C
Itifaki ya I2C inatumia mistari mbili tu ya ishara ya uongozi ili kuwasiliana na vifaa vyote kwenye basi ya I2C. Ishara mbili zilizotumiwa ni:
- Serial Data Line (SDL)
- Serial Data Clock (SDC)
Sababu ambayo I2C inaweza kutumia ishara mbili tu kwa kuwasiliana na idadi ya pembeni ni jinsi mawasiliano katika basi inavyohusika. Kila mawasiliano ya I2C huanza na anwani ya 7-bit (au 10-bit) inayoita anwani ya pembeni mawasiliano yote yana maana ya kupokea mawasiliano. Hii inaruhusu vifaa vingi kwenye basi ya I2C ili kucheza jukumu la kifaa kikuu kama mahitaji ya mfumo inavyotakiwa. Ili kuzuia migongano ya mawasiliano, itifaki ya I2C inajumuisha uwezo wa kugundua na mgongano ambao huruhusu mawasiliano bora kwenye basi.
Faida na mapungufu
Kama itifaki ya mawasiliano, I2C ina faida nyingi ambazo hufanya ni chaguo nzuri kwa programu nyingi za kubuni zilizoingia. I2C huleta faida zifuatazo:
- I2C inahitaji tu mistari mbili za ishara
- Viwango vya maambukizi ya data rahisi
- Kila kifaa kwenye basi kinaweza kushughulikiwa kwa kujitegemea
- Vifaa vina uhusiano rahisi Mwalimu / Mtumwa
- I2C ina uwezo wa kushughulikia mawasiliano mengi ya bwana kwa kutoa ugunduzi wa usuluhishi na mawasiliano ya mgongano
- Mawasiliano ya umbali mrefu kuliko SPI
Kwa faida zote hizi, I2C pia ina mapungufu machache yanayotakiwa kuundwa kote. Vikwazo muhimu zaidi vya I2C ni pamoja na:
- Kwa kuwa tu-bits 7 (au 10-bits) zinapatikana kwa kushughulikia kifaa, vifaa kwenye basi moja vinaweza kushiriki anwani sawa. Vifaa vingine vina uwezo wa kusanidi bits chache cha mwisho cha anwani, lakini hii bado inaweka kikwazo cha vifaa kwenye basi moja.
- Ni kasi tu ya kasi ya mawasiliano inapatikana na vifaa vingi haviunga mkono maambukizi ya juu zaidi. Msaada maalum kwa kila kasi kwenye basi inahitajika ili kuzuia vifaa vya polepole kutoka kwa kuambukizwa kwa sehemu ambazo zitasababisha upepo wa uendeshaji.
- Hali ya pamoja ya basi ya I2C inaweza kusababisha basi nzima kunyongwa wakati kifaa kimoja kwenye basi kinachaacha kufanya kazi. Kupanda baiskeli nguvu kwa basi inaweza kutumika kuanzisha tena basi na kurejesha operesheni sahihi.
- Kwa kuwa vifaa vinaweza kuweka kasi ya mawasiliano, vifaa vya polepole vya uendeshaji vinaweza kuchelewesha uendeshaji wa vifaa vya haraka kasi.
- I2C huchota nguvu zaidi kuliko mabasi mengine ya mawasiliano kwa sababu ya topolojia ya kufuta ya mistari ya mawasiliano.
- Ukomo wa basi ya I2C hupunguza idadi ya vifaa kwenye basi hadi karibu na vifaa kadhaa.
Maombi
Basi ya I2C ni chaguo kubwa kwa maombi ambayo yanahitaji gharama nafuu na utekelezaji rahisi kuliko kasi ya juu. Kwa mfano, kusoma baadhi ya IC za kumbukumbu, kufikia DACs na ADCs, soma za kusoma , kupeleka na kudhibiti vitendo vilivyotumiwa na mtumiaji, soma vifaa vya vifaa, na kuwasiliana na wasimamizi wadogo wengi ni matumizi ya kawaida ya protoksi ya mawasiliano ya I2C.