Ana içeriğe geç

📚 Haberleşme Protokolleri

Giriş: Protokollerin Önemi

Gömülü sistemlerdeki mikrodenetleyiciler (işlemci kartlar) ve çevresel aygıtlar (sensörler, bellekler, modüller) arasındaki veri alışverişini düzenleyen kurallar bütününe haberleşme protokolü denir. Doğru protokol seçimi, sistemin hızı, karmaşıklığı ve güç tüketimi açısından kritiktir.


1. Temel Kavram: Analog ve Dijital Haberleşme

Haberleşme protokollerinin tamamı, verinin elektrik sinyalleri yoluyla nasıl aktarılacağına odaklanır. Bu sinyaller temelde ikiye ayrılır:

A. Analog Haberleşme

  • Tanım: Veri, sürekli değişen bir voltaj veya akım sinyali olarak temsil edilir. Sinyal, bir sinüs dalgası gibi kesintisiz bir formdadır.
  • Değer Aralığı: Sinyal, belirli bir aralıkta (örneğin, 0V ile 5V arasında) sonsuz sayıda olası değere sahip olabilir.
  • Kullanım Alanı: Ses (mikrofonlar), görüntü (kameralar) veya ortam sıcaklığı (termokupl) gibi gerçek dünya verilerini iletmek için kullanılır.
  • Örnek: Geleneksel telefon hatlarındaki ses iletimi veya mikrofon sinyali.

B. Dijital Haberleşme

  • Tanım: Veri, ayrık (discrete) voltaj seviyeleri ile temsil edilir, genellikle sadece iki seviye kullanılır: Yüksek (1) ve Düşük (0). Bu sinyallere kare dalga denir.
  • Değer Aralığı: Sadece iki durum (0 veya 1, Açık veya Kapalı, Doğru veya Yanlış) mevcuttur.
  • Kullanım Alanı: Bütün mikrodenetleyiciler, bilgisayarlar ve I2C, SPI, UART gibi protokoller dijital haberleşmeyi kullanır. Dijital sinyaller gürültüye karşı daha dayanıklıdır.
  • Örnek: Bir mikrodenetleyicinin bir LED'i açıp kapatması veya iki çip arasındaki veri alışverişi.

alt text

Özellik Analog Sinyal Dijital Sinyal
Voltaj Seviyesi Sürekli (Sonsuz Değer) Ayrık (Genellikle 0 ve 1)
Hassasiyet Gürültüden Kolay Etkilenir Gürültüye Dayanıklı
Kullanım Gerçek Dünya Ölçümleri Bilgisayar/Çip İletişimi

2. I²C (Inter-Integrated Circuit)

I²C, Philips tarafından geliştirilmiş, iki kablolu, senkronize, seri haberleşme protokolüdür.

Temel Özellikler

  • Bağlantı Yapısı: Multi-Master, Multi-Slave. Tek bir hatta birden çok Master ve Slave bulunabilir.
  • Haberleşme: Yarı Çift Yönlü (Half-Duplex). Veri akışı tek yönlüdür (gönderme veya alma).
  • Adresleme: Her Slave cihazın benzersiz bir 7-bit (veya 10-bit) adresi vardır. Master, iletişime başlamak için bu adresi kullanır.
  • Hız: Orta. Genellikle 100 kHz (Standart) veya 400 kHz (Hızlı Mod) kullanılır.

alt text

Pinler ve Görevleri

Pin Görev
SCL Serial CLock (Seri Saat). Master tarafından üretilen saat sinyalini taşır.
SDA Serial DAta (Seri Veri). Veri gönderme ve alma için kullanılan çift yönlü hattır.

Kullanım Alanları ve Örnekler

  • Aynı PCB üzerindeki kısa mesafeli ve orta hızlı çevresel aygıtlar.
  • Örnek Sensörler/Modüller:
    • BMP388: Yüksek hassasiyetli barometrik basınç ve sıcaklık sensörü.
    • MPU6050: 6 Eksenli ivmeölçer ve jiroskop.
    • EEPROM bellekler, RTC (Gerçek Zamanlı Saat) modülleri.

3. SPI (Serial Peripheral Interface)

SPI, Motorola tarafından geliştirilmiş, dört kablolu, senkronize, tam çift yönlü seri haberleşme protokolüdür.

Temel Özellikler

  • Bağlantı Yapısı: Single-Master, Multi-Slave. Birden çok Slave cihaza bağlanabilir, ancak her biri için ayrı bir Seçim Pini (CS) gerekir.
  • Haberleşme: Tam Çift Yönlü (Full-Duplex). Veri gönderme ve alma aynı anda gerçekleşebilir.
  • Adresleme: Yok. İletişim, Master tarafından seçilen Slave'in CS (Chip Select) pini kullanılarak yönlendirilir.
  • Hız: En Hızlı. Teorik olarak sınırlıdır ve pratikte MHz mertebesinde çok yüksek hızlara ulaşabilir.

alt text

Pinler ve Görevleri

Pin Açılım Görev
SCK Serial Clock Saat sinyalini taşır (Master üretir).
MOSI Master Out, Slave In Master'dan Slave'e veri aktarımı.
MISO Master In, Slave Out Slave'den Master'a veri aktarımı.
SS/CS Slave Select / Chip Select Master'ın hangi Slave ile konuşacağını seçer (aktif düşük).

Kullanım Alanları ve Örnekler

  • Yüksek hızlı veri transferi gerektiren aygıtlar.
  • Örnek Sensörler/Modüller:
    • SD Kart Okuyucu: Yüksek hızda bellek erişimi için.
    • SPI Flash Modülleri: Harici depolama birimleri.
    • Grafik ekranlar (TFT/OLED), Yüksek hızlı ADC (Analogdan Dijitale Dönüştürücü) çipleri.

4. UART (Universal Asynchronous Receiver/Transmitter)

UART, herhangi bir harici saat sinyali olmadan (eşzamansız) veri iletimi sağlayan donanım devresidir.

Temel Özellikler

  • Bağlantı Yapısı: Noktadan Noktaya (Point-to-Point). Genellikle sadece iki cihaz arasında kullanılır.
  • Haberleşme: Eşzamansız (Asynchronous). Veri alıcısı ve göndericisi önceden belirlenmiş bir hızda (Baud Rate) çalışmalıdır.
  • Veri Çerçeveleme: İletilen her veri baytı, iletişimin başlangıcını (Start Bit) ve sonunu (Stop Bit) belirten ek bitlerle çevrelenir.
  • Hız: En Yavaş. Tipik hızlar 9600, 115200 Baud gibi düşük hızlardır.

alt text

Pinler ve Görevleri

Pin Görev
TX Transmit (Gönderim). Veri gönderilen hat.
RX Receive (Alım). Veri alınan hat.
Önemli Not Cihazlar arası çapraz bağlantı esastır: Cihaz A'nın TX pini, Cihaz B'nin RX pinine bağlanır.

Kullanım Alanları ve Örnekler

  • Basit, iki nokta arası ve genellikle daha uzun mesafeli iletişim.
  • Örnek Sensörler/Modüller:
    • NEO M8N GPS Modülü: Konum verilerini iletmek için.
    • LoRa İletişim Modülü: Uzun menzilli düşük güçlü kablosuz iletişim.
    • Bluetooth (HC-05), WiFi (ESP-01) modülleri ve PC ile mikrodenetleyici arasındaki Seri Konsol iletişimi.

5. Protokollerin Karşılaştırmalı Özeti

Özellik I²C SPI UART
Haberleşme Şekli Senkron (SCL) Senkron (SCK) Eşzamansız (Baud Rate)
Pin Sayısı 2 (SDA, SCL) 4 (MOSI, MISO, SCK, CS) 2 (TX, RX)
Hız Orta En Hızlı En Yavaş
Adresleme Gerekir mi? Evet (7-bit) Hayır (CS Pini) Hayır (Noktadan Noktaya)
Avantaj Az Pin, Çoklu Cihaz En Hızlı, Full-Duplex En Basit, Uzun Mesafe
Dezavantaj Hız Sınırlı, Kompleks Çok Pin, Tek Master Veri Kaybı Riski (Senkronizasyon)