Սերիական ծայրամասային ինտերֆեյս (SPI) օգտագործվում է կարճ հեռավորության վրա հաղորդակցության համար, հատկապես ներկառուցված համակարգերում: Ավելի տարածված սերիական կապի արձանագրությունը I2C-ն է, որը հեշտացնում է հաղորդակցությունը էլեկտրոնային բաղադրիչների միջև, անկախ նրանից՝ բաղադրիչները գտնվում են նույն PCB-ի վրա, թե միացված են մալուխի հետ:
Ընտրությունը I2C-ի և SPI-ի՝ երկու հիմնական սերիական կապի արձանագրությունների միջև, պահանջում է լավ հասկանալ I2C-ի, SPI-ի և հավելվածի առավելություններն ու սահմանափակումները: Հաղորդակցման յուրաքանչյուր արձանագրություն ունի հստակ առավելություններ, որոնք հակված են տարբերվել ձեր դիմումի վրա:
- Ավելի լավ է բարձր արագությամբ և ցածր էներգիայի ծրագրերի համար:
- Պաշտոնական ստանդարտ չէ, ընդհանուր առմամբ պակաս համատեղելի:
- Ավելի լավ է մի քանի ծայրամասային սարքերի հետ հաղորդակցվելու և սարքի հիմնական դերը փոխելու համար:
- Ստանդարտացումը ապահովում է ավելի լավ համատեղելիություն:
SPI-ն ավելի լավ է բարձր արագությամբ և ցածր էներգիայի ծրագրերի համար: I2C-ն ավելի հարմար է մեծ թվով ծայրամասային սարքերի հետ հաղորդակցվելու համար: Ե՛վ SPI, և՛ I2C-ն ամուր, կայուն հաղորդակցման արձանագրություններ են ներկառուցված հավելվածների համար, որոնք լավ են համապատասխանում ներկառուցված աշխարհին:
SPI-ի առավելություններն ու թերությունները
- Աջակցում է ավելի բարձր արագությամբ լրիվ դուպլեքս հաղորդակցությանը:
- Շատ ցածր էներգիա։
- Կարճ փոխանցման հեռավորություններ, չեն կարող հաղորդակցվել բաղադրիչների միջև առանձին PCB-ների վրա:
- Մի քանի տարբերակներ և հարմարեցումներ կարող են ստեղծել համատեղելիության խնդիրներ:
- Պահանջում է լրացուցիչ ազդանշանային գծեր՝ նույն ավտոբուսում մի քանի սարքեր կառավարելու համար:
- Չի ստուգում, որ տվյալները ճիշտ են ստացվել:
- Ավելի ենթակա է աղմուկի:
Serial to Peripheral Interface-ը շատ ցածր էներգիայի չորս լարերի սերիական կապի միջերես է: Այն նախագծված է այնպես, որ IC կարգավորիչները և ծայրամասային սարքերը կարողանան հաղորդակցվել միմյանց հետ: SPI ավտոբուսը լրիվ դուպլեքս ավտոբուս է, որը թույլ է տալիս հաղորդակցությանը հոսել դեպի առաջնային սարք և հետ միաժամանակ մինչև 10 Մբիթ/վրկ արագությամբ:SPI-ի բարձր արագությամբ աշխատանքը, ընդհանուր առմամբ, սահմանափակում է այն օգտագործել առանձին PCB-ների բաղադրիչների միջև հաղորդակցվելու համար, քանի որ ավելի մեծ հեռավորության վրա հաղորդակցությունը ավելացնում է ազդանշանային գծերի թողունակությունը: PCB-ի հզորությունը կարող է նաև սահմանափակել SPI կապի գծերի երկարությունը:
Չնայած SPI-ն հաստատված արձանագրություն է, այն պաշտոնական ստանդարտ չէ: SPI-ն առաջարկում է մի քանի տարբերակներ և հարմարեցումներ, որոնք հանգեցնում են համատեղելիության խնդիրների: SPI-ի ներդրումը միշտ պետք է ստուգվի առաջնային կարգավորիչների և երկրորդական ծայրամասային սարքերի միջև՝ համոզվելու համար, որ համակցությունը չի ունենա հաղորդակցման անսպասելի խնդիրներ, որոնք կազդեն արտադրանքի զարգացման վրա:
I2C-ի առավելություններն ու թերությունները
- Աջակցում է մի քանի սարքերի նույն ավտոբուսում առանց լրացուցիչ ընտրված ազդանշանային գծերի՝ ներհաղորդակցման սարքի հասցեավորման միջոցով:
- Պաշտոնական ստանդարտը ապահովում է համատեղելիություն I2C-ի ներդրման և հետընթաց համատեղելիության միջև:
- Համոզվում է, որ ուղարկված տվյալները ստացվում են երկրորդական սարքի կողմից:
- Կարող է փոխանցել PCB-ից, բայց փոխանցման ցածր արագությամբ:
- Իրագործումը ավելի էժան է, քան SPI կապի արձանագրությունը:
- Անվազ ենթակա է աղմուկի, քան SPI:
- Տվյալների փոխանցում ավելի մեծ հեռավորությունների վրա:
- Դանդաղ փոխանցման արագություն և տվյալների արագություն:
- Կարող է արգելափակվել մեկ սարքի միջոցով, որը չի կարողանում ազատել կապի ավտոբուսը:
- Ավելի շատ էներգիա է վերցնում, քան SPI:
I2C-ը պաշտոնական ստանդարտ սերիական կապի արձանագրություն է, որը պահանջում է միայն երկու ազդանշանային գիծ, որոնք նախատեսված են PCB-ի վրա չիպերի միջև հաղորդակցվելու համար:I2C-ն ի սկզբանե նախատեսված էր 100 կբիթ/վրկ հաղորդակցության համար: Այնուամենայնիվ, տարիների ընթացքում մշակվել են տվյալների փոխանցման ավելի արագ ռեժիմներ՝ հասնելու մինչև 3,4 Մբիթ/վ արագության: I2C արձանագրությունը հաստատվել է որպես պաշտոնական ստանդարտ՝ ապահովելով լավ համատեղելիություն I2C-ի ներդրման միջև և լավ հետամնաց համատեղելիություն:
Ի լրումն վերը նշված առավելությունների և թերությունների ցանկին, I2C-ին անհրաժեշտ է ընդամենը երկու լար: SPI-ն պահանջում է երեք կամ չորս: Ավելին, SPI-ն աջակցում է միայն մեկ հիմնական սարք ավտոբուսում, մինչդեռ I2C-ն աջակցում է մի քանի հիմնական սարքերի:
Ընտրելով I2C-ի և SPI-ի միջև
Ընդհանուր առմամբ, SPI-ն ավելի լավ է բարձր արագությամբ և ցածր էներգիայի ծրագրերի համար, մինչդեռ I2C-ն ավելի հարմար է մեծ թվով ծայրամասային սարքերի հետ հաղորդակցվելու համար, ինչպես նաև այն իրավիճակներում, որոնք ներառում են սարքի առաջնային դերի դինամիկ փոփոխություն I2C-ի ծայրամասային սարքերի միջև: ավտոբուս.