1980-yillarda Flibs tomonidan ishlab chiqilgan I2C elektronikaning eng keng tarqalgan seriya aloqa protokollaridan biriga aylandi. I2C elektron komponentlar yoki IC dan IC ga komponentlar bir xil PCB yoki kabel orqali ulanganligini ta'minlaydi. I2C ning asosiy xususiyati - ikki telli yagona aloqa avtobusida juda ko'p qismlarga ega bo'lish qobiliyatidir, bu I2Cni tezkorlik va past tezlikni talab qiladigan ilovalar uchun mukammal qiladi.
I2C protokoliga umumiy nuqtai
I2C faqat chiplar o'rtasidagi tenglik bilan bog'lanish uchun mo'ljallangan ikkita signal chizig'ini talab qiluvchi ketma-ket aloqa protokoli. I2C dastlab 100 kbit / s gacha aloqa uchun mo'ljallangan, ammo tezkor ma'lumot uzatish rejimi yillar mobaynida 3.4 Mbitgacha tezlikka erishish uchun ishlab chiqilgan. I2C protokoli rasmiy standart sifatida ishlab chiqilgan bo'lib, I2C ilovalari orasida yaxshi muvofiqligi va yaxshi qaytarib muvofiqligi bilan ta'minlaydi.
I2C signallari
I2C protokoli I2C avtobusidagi barcha qurilmalar bilan bog'lanish uchun faqat ikkita ikki tomonlama signal chizig'idan foydalanadi. Amaldagi ikkita signal:
- Serial Data Line (SDL)
- Serial Data Clock (SDC)
I2C ning bir nechta atrof-muhit birliklari bilan muloqot qilish uchun faqat ikkita signal ishlatishi sababi, avtobus bo'ylab muloqotning qanday amalga oshirilishidir. Har bir I2C aloqasi, 7-bit (yoki 10-bit) manzil bilan boshlanadi, u atrof-muhit manzilini chaqiradi, qolgan qism esa aloqani olish uchun mo'ljallangan. Bu I2C avtoulovidagi bir nechta qurilmani asosiy qurilmaning rolini tizimning ehtiyojlari deb o'ynashga imkon beradi. Aloqa bilan to'qnashuvlarning oldini olish uchun I2C protokoli avtobus bo'ylab uzluksiz muloqot qilish imkonini beradigan arbitraj va to'qnashuvni aniqlash qobiliyatlarini o'z ichiga oladi.
Afzalliklar va cheklovlar
Aloqa protokoli sifatida I2C ko'p afzalliklarga ega bo'lib, ko'pgina ko'milgan dizayn ilovalari uchun yaxshi tanlovdir. I2C quyidagi afzalliklarga ega:
- I2C faqat ikkita signal liniyasini talab qiladi
- Moslashuvchan ma'lumotlarni uzatish tezligi
- Avtobusdagi har bir qurilma mustaqil ravishda yo'naltiriladi
- Asboblar oddiy Master / Slave munosabatlariga ega
- I2C hakamlik va aloqa bilan to'qnashuvni aniqlash orqali bir nechta magistral aloqalarni boshqarishga qodir
- SPIga qaraganda uzoqroq masofaviy aloqa
Ushbu afzalliklarning barchasi bilan I2C shuningdek, atrof-muhitga yaratilishi kerak bo'lgan ba'zi cheklovlarga ham ega. Eng muhim I2C cheklovlari quyidagilardan iborat:
- Qurilma manzillari uchun faqat 7 bitli (yoki 10 bit) mavjud bo'lganligi sababli bir xil avtobusdagi qurilmalar bir xil manzilni almashishlari mumkin. Ba'zi qurilmalar manzilning so'nggi bitlarini konfiguratsiyalashga qodir, ammo bu ayni avtobusda qurilmalarning cheklanishiga olib keladi.
- Faqat bir nechta cheklangan aloqa tezligi mavjud va ko'plab qurilmalar uzatishning yuqori tezliklarini qo'llab-quvvatlamaydi. Avtobusdagi har bir tezlikni qisman qo'llab-quvvatlash, asta-sekin qurilmalarning qisman o'tkazuvchanliklarini oldini olish uchun kerak.
- I2C avtobusining birgalikdagi tabiati avtobusdagi bitta qurilma ishlamay qolganda barcha avtobusga osib qo'yilgan bo'lishi mumkin. Avtobusga kuch ato etish avtobusni qayta boshlash va to'g'ri ishlashni tiklash uchun ishlatilishi mumkin.
- Qurilmalar aloqa tezligini o'rnatishi mumkinligi sababli, sekin ishlaydigan qurilmalar tezroq tezlikni o'lchash asboblarini ishlashini kechiktirishi mumkin.
- I2C aloqa liniyalarining ochiq drenajli topologiyasi tufayli boshqa ketma-ket aloqa tarmoqlariga qaraganda ko'proq kuch sarflaydi.
- I2C avtobusidagi cheklovlar, odatda, avtobusdagi qurilmalarning sonini o'nlab qurilmaga cheklaydi.
Ilovalar
I2C avtoulovi yuqori tezlikka emas, balki arzon narxlardagi va oddiy dasturni talab qiladigan ilovalar uchun ajoyib imkoniyatdir. Masalan, ma'lum xotira raqamlarini o'qish, DAC va ADC-larga kirish, sensorlarni o'qish , foydalanuvchi yo'naltirilgan xatti-harakatlarni uzatish va boshqarish, apparat sezgichlarini o'qish va bir nechta mikrokontrolder bilan aloqa o'rnatish I2C aloqa protokolining keng tarqalgan qo'llanilishi hisoblanadi.