Image
28 Temmuz, 2026

I2C Haberleşme Protokolü

I2C Nedir? Arduino ile I2C Haberleşme Protokolü Nasıl Kullanılır?

I2C, iki kablo üzerinden birden fazla cihazın aynı hatta bağlanabildiği seri haberleşme protokolüdür. Sensörler, OLED ekranlar, RTC modülleri, ADC çeviriciler ve birçok düşük hızlı çevre birimi I2C ile çalışır.

I2C haberleşmede SDA ve SCL hatları üzerinden birden fazla modülün aynı veri yoluna bağlanma mantığı.
Fotoğraf 1: I2C haberleşmede SDA ve SCL hatları üzerinden birden fazla modülün aynı veri yoluna bağlanma mantığı.

I2C Nedir?

I2C haberleşmede bir ana cihaz saat sinyalini üretir ve aynı veri hattı üzerinden adreslenmiş cihazlarla veri alışverişi yapar. Her cihazın 7-bit veya 10-bit adresi bulunur. Bu sayede aynı SDA/SCL hattında birden fazla modül kullanılabilir.

Kısaca: I2C, elektronik devrelerde veri aktarımı için kullanılan temel haberleşme yöntemlerinden biridir. Doğru protokol seçimi; hız, kablo mesafesi, pin sayısı, gürültü dayanımı ve sistem maliyetini doğrudan etkiler.

Pinler ve Bağlantı Mantığı

Hat / PinGörevi
SDASeri veri hattıdır. Arduino UNO üzerinde A4 pinidir.
SCLSeri saat hattıdır. Arduino UNO üzerinde A5 pinidir.
VCCModülün çalışma voltajına göre 3.3V veya 5V besleme.
GNDOrtak toprak hattı.

Nerelerde Kullanılır?

  • OLED/LCD ekran bağlantıları
  • BMP180/BME280 gibi sensörler
  • DS3231 RTC modülleri
  • ADS1115 ADC modülleri
  • Pin tasarrufu gereken projeler

Arduino ile Basit Örnek

Aşağıdaki örnek, I2C konusunu anlatırken GitHub README içinde kullanılabilecek temel demo mantığını gösterir.

#include <Wire.h>

void setup() {
  Wire.begin();
  Serial.begin(9600);
  Serial.println("I2C Scanner basladi");
}

void loop() {
  for (byte address = 1; address < 127; address++) {
    Wire.beginTransmission(address);
    if (Wire.endTransmission() == 0) {
      Serial.print("I2C cihaz bulundu: 0x");
      Serial.println(address, HEX);
    }
  }
  delay(3000);
}

I2C Örnek Kodları ve Bağlantı Notları

Arduino, ESP32 ve modül bağlantıları için örnek README dosyalarını GitHub deposunda yayınlayabilirsiniz.

Sık Yapılan Hatalar

  • Pull-up dirençlerini unutmak: I2C hatları genellikle pull-up direnç ister; çoğu modülde dahili direnç bulunur ama uzun kabloda sorun çıkabilir.
  • Adres çakışması: Aynı adrese sahip iki modül aynı hatta doğrudan kullanılamaz.
  • Voltaj seviyesi: 3.3V modülü 5V hatta bağlarken lojik seviye dönüştürücü gerekebilir.

Bu Protokol İçin Gerekli / Faydalı Ürünler

I2C projelerinde Arduino, breadboard, jumper kablo ve 3.3V/5V uyumluluğu için lojik seviye dönüştürücü kullanılabilir.

Arduino Uno R3 Klon + USB KabloÜrünü İncele
BreadboardÜrünü İncele
Jumper KabloÜrünü İncele
4 Kanal Lojik Seviye DönüştürücüÜrünü İncele

Sonuç

I2C protokolünü anlamak, Arduino ve gömülü sistem projelerinde sensör, ekran, haberleşme modülü ve sürücü kartlarını daha doğru seçmenizi sağlar. Projenizde mesafe, hız, kablo sayısı ve gürültü dayanımı gereksinimlerini belirleyerek doğru protokolü seçebilirsiniz.

Robomer ile Elektronik Projelerinizi Kurun

Geliştirme kartları, sensörler, haberleşme modülleri, dönüştürücüler ve kablolama elemanları Robomer güvencesiyle.

Robomer Ürünlerini İncele