1980-ci illərdə Philips tərəfindən hazırlanan I2C, elektronikada ən çox yayılmış serial rabitə protokollarından birinə çevrildi. I2C elektron komponentlər və ya IC ilə IC arasında komponentlərin eyni PCB-də olub-olmaması və ya bir kabel vasitəsilə əlaqələndirilməsinə imkan verir. I2C-nin əsas xüsusiyyətlərindən biri, yalnız iki telli bir rabitə avtobusu üzərindəki çox sayda komponentə malik olmaq imkanıdır. Bu, I2C-nin sürətlə sadəliyi və aşağı qiyməti tələb edən tətbiqlər üçün mükəmməl hala gətirir.
I2C protokoluna baxış
I2C yalnız PCB üzərində fiş arasında əlaqə qurmaq üçün nəzərdə tutulmuş iki siqnal xətti tələb edən serial kommunikasiya protokolu. I2C başlanğıcda 100kbps ünsiyyət üçün nəzərdə tutulmuşdur, lakin daha sürətli məlumat ötürülməsi rejimi il ərzində 3.4 Mbit-ə qədər sürət əldə etmək üçün hazırlanmışdır. I2C protokolu rəsmi standart olaraq yaradılmışdır ki, bu da I2C tətbiqləri arasında yaxşı uyğunluq və yaxşı geri uyğunluq təmin edir.
I2C İşarələri
I2C Protokolu I2C avtobusunun bütün qurğuları ilə ünsiyyət qurmaq üçün yalnız ikitərəfli iki siqnal xəttini istifadə edir. Istifadə olunan iki siqnal aşağıdakılardır:
- Serial Data Line (SDL)
- Serial Data Clock (SDC)
I2C'nin bir sıra ətraf mühitlə əlaqə qurmaq üçün yalnız iki siqnal istifadə edə bilməsi səbəbi, avtobus boyunca ünsiyyətin necə işləndiyini göstərir. Hər I2C ünsiyyəti ünsiyyətin geri qalan hissəsini ünsiyyət almaq üçün nəzərdə tutulan 7-bit (və ya 10 bit) ünvanından başlayır. Bu, I2C avtobusu üzərində bir çox qurğuya sistemin ehtiyacları olaraq master cihazın rolu oynamasına imkan verir. Rabitə toqquşmalarının qarşısını almaq üçün, I2C protokolu avtobus boyunca düzgün ünsiyyətə imkan verən arbitraj və toqquşma aşkarlama qabiliyyətlərini ehtiva edir.
Üstünlüklər və məhdudiyyətlər
Bir rabitə protokolu olaraq, I2C bir çox üstünlük yaratmışdır ki, bu da çoxsaylı dizayn proqramları üçün yaxşı seçimdir. I2C aşağıdakı üstünlükləri gətirir:
- I2C yalnız iki siqnal xətti tələb edir
- Esnek məlumat ötürülməsi dərəcələri
- Avtobusdakı hər bir cihaz müstəqil olaraq əlaqələndirilə bilər
- Cihazların sadə bir Master / Slave əlaqəsi var
- I2C, arbitraj və kommunikasiya çarxlarının aşkarlanmasını təmin etməklə birdən çox master kommunikasiyasını idarə edə bilir
- SPI-dən daha uzun məsafəli ünsiyyət
Bütün bu üstünlükləri ilə, I2C də ətrafında dizayn edilməsi lazım ola biləcək bir neçə məhdudiyyət var. Ən mühüm I2C məhdudiyyətləri bunlardır:
- Cihaz ünvanı üçün yalnız 7 bit (və ya 10 bit) mövcud olduğundan, eyni avtobusdakı cihazlar eyni ünvanı paylaşa bilərlər. Bəzi qurğular ünvanın son bir neçə bitini konfiqurasiya edə bilir, lakin bu da eyni avtobusda cihazların məhdudlaşdırılmasına səbəb olur.
- Yalnız bir neçə məhdud ünsiyyət sürəti mövcuddur və bir çox qurğu ötürülmənin daha yüksək sürətini dəstəkləmir. Avtobusdakı hər bir sürətə qismən dəstək yavaş cihazların partial ötürülmələrə yol verməməsinin qarşısını almaq üçün tələb olunur.
- I2C avtobusunun paylaşılan təbiəti bütün avtobusda avtobusda işləyən bir cihazın dayandığı zaman asılıdır. Avtobusa gedən gücün avtobusa yenidən başlanması və düzgün işə salınması üçün istifadə edilə bilər.
- Qurğuların rabitə sürətini təyin edə biləcəyi üçün daha yavaş əməliyyat cihazları daha sürətli sürət cihazlarının işini gecikdirə bilər.
- I2C, kommunikasiya xətlərinin açıq drenaj topologiyası səbəbindən digər serial rabitə avtobuslarından daha çox güc çəkir.
- I2C avtobusunun məhdudiyyətləri adətən avtobusdakı bir ədəd cihazın sayını bir çox düzəldən cihazlarla məhdudlaşdırır.
Proqramlar
I2C avtobus yüksək sürətdən daha ucuz və sadə bir tətbiq tələb edən tətbiqlər üçün böyük bir seçimdir. Məsələn, müəyyən yaddaş ICs oxumaq, DACs və ADCs daxil olmaq, sensorlar oxumaq , istifadəçi yönəlmiş tədbirlər ötürmək və nəzarət, hardware sensorlar oxumaq və bir çox mikroçilk ilə ünsiyyət I2C kommunikasiya protokolunun ümumi istifadə edir.