i2c ne demek?
I2C (Inter-Integrated Circuit) Hakkında
I2C (Inter-Integrated Circuit), Philips tarafından geliştirilmiş, düşük hızlı, kısa mesafeli bir seri iletişim protokolüdür. Esas olarak, bir mikrodenetleyici ile çevresel aygıtlar (örneğin, sensörler, EEPROM'lar, saatler) arasında iletişim kurmak için kullanılır. İki adet kablo kullanır:
- SDA (Serial Data): Veri hattı. Veri aktarımı için kullanılır.
- SCL (Serial Clock): Saat hattı. Veri senkronizasyonu için kullanılır.
Temel Özellikleri
- Çoklu Master (Multi-Master): Aynı I2C bus'ında birden fazla master cihaz (genellikle mikrodenetleyici) bulunabilir.
- Adresleme: Her I2C cihazının benzersiz bir adresi vardır. Master cihaz, iletişim kurmak istediği slave cihazın adresini göndererek iletişimi başlatır.
- Yarı-Çift Yönlü (Half-Duplex): Veri aynı anda hem gönderilemez hem de alınamaz.
- Düşük Hız: Tipik olarak 100 kHz (Standart Mod) veya 400 kHz (Hızlı Mod) hızlarında çalışır. Daha yüksek hızlar da mevcuttur (örneğin, 1 MHz - Hızlı Mod Plus).
- Pull-up Dirençleri: SDA ve SCL hatları, pull-up dirençleri aracılığıyla VCC'ye bağlanır. Bu, hatların varsayılan olarak yüksek seviyede (mantıksal 1) olmasını sağlar.
Çalışma Prensibi
- Başlat (Start) Durumu: Master cihaz, SCL hattını yüksekte tutarken SDA hattını yüksekten düşüğe çektiğinde başlat durumu oluşur.
- Adres Gönderme: Master cihaz, iletişim kurmak istediği slave cihazın 7-bit adresini ve ardından bir okuma/yazma bitini (R/W) gönderir.
- Onay (Acknowledge - ACK): Adresi alan slave cihaz, SDA hattını düşük seviyeye çekerek (ACK) adresi aldığını onaylar.
- Veri Aktarımı: Veri, 8-bit'lik baytlar halinde aktarılır. Her bayttan sonra alıcı cihaz bir ACK biti gönderir.
- Durdur (Stop) Durumu: Master cihaz, SCL hattını yüksekte tutarken SDA hattını düşükten yükseğe çektiğinde durdur durumu oluşur. Bu, iletişimin sonlandığını gösterir.
Avantajları
- Az Kablo: Sadece iki kablo ile birden fazla cihazı bağlama imkanı sunar.
- Basit Uygulama: Protokol nispeten basittir ve mikrodenetleyicilerde kolayca uygulanabilir.
- Esneklik: Farklı hızlarda çalışabilme ve çoklu master desteği sayesinde çeşitli uygulamalara uyum sağlar.
Dezavantajları
- Düşük Hız: Diğer seri iletişim protokollerine (örneğin, SPI) kıyasla daha yavaştır.
- Mesafe Sınırlaması: Kablo uzunluğu arttıkça sinyal bütünlüğü azalır ve iletişim güvenilirliği düşer.
Kullanım Alanları
- Sensörler
- EEPROM'lar
- Gerçek Zamanlı Saatler (RTC)
- LCD Sürücüleri
- Veri Dönüştürücüler (ADC/DAC)
Önemli Kavramlar