📚 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.

| Ö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.

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.

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.

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) |