I2C Bus'a Genel Bakış ve Faydaları
1980'lerde Philips tarafından geliştirilen I2C (alternatif olarak I2C), elektronikte en yaygın kullanılan seri iletişim protokollerinden biri haline geldi. I2C, elektronik bileşenler veya entegre arasındaki iletişimi kolaylaştırır devreler, bileşenlerin aynı olup olmadığı PCB veya bir kablo ile bağlı.
I2C Protokolü Nedir?
I2C, yalnızca iki sinyal hattı gerektiren bir seri iletişim protokolüdür. Baskılı devre kartı (PCB) üzerindeki çipler arasında iletişim için tasarlanmıştır. I2C başlangıçta 100 için tasarlandı Kb/sn iletişim. Ancak, yıllar içinde 3.4 Mbit'e varan hızlara ulaşmak için daha hızlı veri iletim modları geliştirilmiştir.
I2C'nin temel özelliği, tek bir bileşen üzerinde birçok bileşene sahip olma yeteneğidir. iletişim veriyolu I2C'yi basit uygulamalar için mükemmel yapan sadece iki kablo ile. I2C protokolü, I2C uygulamaları arasında geriye dönük uyumluluk sağlayan resmi bir standart olarak oluşturulmuştur.
I2C Sinyalleri
I2C protokolü, iletişim veriyolundaki cihazlarla iletişim kurmak için iki çift yönlü sinyal hattı kullanır. Kullanılan iki sinyal şunlardır:
- Seri Veri Hattı (SDL)
- Seri Veri Saati (SDC)
I2C'nin birkaç çevre birimi ile iletişim kurmak için yalnızca iki sinyal kullanabilmesinin nedeni, veri yolu boyunca iletişimin nasıl ele alındığıdır. Her I2C iletişimi 7- ile başlar.biraz (veya 10-bit) çevre biriminin adresini çağıran adres.
Bu, I2C veri yolundaki birden fazla cihazın, sistemin gereksinimlerinin gerektirdiği şekilde birincil cihazın rolünü oynamasına izin verir. İletişim çarpışmalarını önlemek için, I2C protokolü, veri yolu boyunca sorunsuz iletişime izin veren tahkim ve çarpışma algılama yetenekleri içerir.
I2C'nin Faydaları
Bir iletişim protokolü olarak I2C aşağıdaki avantajlara sahiptir:
- Esnek veri aktarım hızları.
- göre daha uzun mesafeli iletişim SPI.
- Bus üzerindeki her cihaz bağımsız olarak adreslenebilir.
- Cihazların basit bir birincil/ikincil ilişkisi vardır.
- Sadece iki sinyal hattı gerektirir.
- Tahkim ve iletişim çakışması algılaması sağlayarak birden çok birincil iletişimi işleme yeteneğine sahiptir.
I2C'nin Sınırlamaları
Tüm bu avantajlarla birlikte, I2C'nin etrafında tasarlanması gerekebilecek birkaç sınırlaması da vardır. En önemli I2C sınırlamaları şunları içerir:
- Cihaz adreslemesi için yalnızca 7 bit (veya 10 bit) mevcut olduğundan, aynı veri yolundaki cihazlar aynı adresi paylaşabilir. Bazı cihazlar adresin son birkaç bitini yapılandırabilir, ancak bu aynı veri yolundaki cihazlar için bir sınırlama getirir.
- Yalnızca birkaç sınırlı iletişim hızı mevcuttur ve birçok cihaz daha yüksek hızlarda iletimi desteklemez. Daha yavaş cihazların operasyonel aksaklıklara neden olabilecek kısmi aktarımları yakalamasını önlemek için veri yolu üzerindeki her hız için kısmi destek gerekir.
- I2C veri yolunun paylaşılan yapısı, veri yolundaki tek bir cihaz çalışmayı durdurduğunda tüm veri yolunun askıda kalmasına neden olabilir. Veri yoluna giden gücün döngüye alınması, düzgün çalışmayı geri yükleyebilir.
- Cihazlar kendi iletişim hızlarını ayarladığından, daha yavaş çalışan cihazlar, daha hızlı cihazların çalışmasını geciktirebilir.
- I2C, iletişim hatlarının açık drenaj topolojisi nedeniyle diğer seri iletişim veri yollarından daha fazla güç çeker.
- I2C veri yolunun sınırlamaları, tipik olarak bir veri yolundaki cihaz sayısını yaklaşık bir düzine ile sınırlar.
I2C Uygulamaları
I2C, yüksek hızdan ziyade düşük maliyetli ve basit uygulama gerektiren uygulamalar için harika bir seçenektir. Örneğin, I2C iletişim protokolünün yaygın kullanımları şunları içerir:
- Belirli bellek IC'lerini okuma.
- DAC'lere ve ADC'lere erişme.
- Kullanıcı tarafından yönlendirilen eylemleri iletmek ve kontrol etmek.
- Donanım sensörlerini okuma.
- Çoklu mikro denetleyici ile iletişim.