Skip to Content
ESP ve IoT3,3V ve 5V Seviye Dönüştürme

3,3V ve 5V Seviye Dönüştürme

Arduino Uno 5 V, ESP32 ve ESP8266 ise 3,3 V lojik seviyeyle çalışır. Bu iki dünyayı birleştirmek, ESP kartlarıyla çalışırken karşılaşacağınız en somut donanım problemidir.

Yanlış yapıldığında sonuç genellikle sessizdir: kart bir süre çalışır, sonra pin ölür veya rastgele davranmaya başlar.

Sorun Nedir?

Bir mikrodenetleyicinin giriş pinleri, besleme geriliminin üzerinde bir gerilime dayanacak şekilde tasarlanmaz.

KartLojik seviyeGirişe uygulanabilecek maksimum
Arduino Uno / Nano / Mega5 V~5,5 V
ESP82663,3 V~3,6 V
ESP323,3 V~3,6 V
Raspberry Pi3,3 V~3,3 V

3,3 V’luk bir pine 5 V uygulamak, giriş koruma diyodundan akım geçmesine yol açar. Bazen hemen bir şey olmaz — ama pin yavaşça bozulur ve arıza günler sonra ortaya çıkar.

İki Yön, İki Farklı Durum

Yön çok önemlidir ve ikisi aynı çözümü gerektirmez.

5 V → 3,3 V (indirme) — TEHLİKELİ

5 V’luk bir cihazın çıkışını 3,3 V’luk bir karta bağlamak mutlaka dönüştürme gerektirir.

Örnek: HC-SR04’ün Echo pini (5 V) → ESP32 girişi.

3,3 V → 5 V (yükseltme) — GENELLİKLE GEREKMEZ

5 V’luk bir kartın girişi, HIGH kabul etmek için genellikle 3 V’un üzerini yeterli görür. 3,3 V bu eşiğin üzerindedir.

Yani ESP32’nin çıkışını Arduino’nun girişine doğrudan bağlamak çoğunlukla sorunsuz çalışır.

Ama her zaman değil. Bazı 5 V’luk entegreler HIGH eşiğini besleme geriliminin %70’i olarak alır (5 × 0,7 = 3,5 V). Bu durumda 3,3 V yetmez ve sinyal güvenilmez olur. Böyle bir durumda yükseltme gerekir.

Yöntem 1: Gerilim Bölücü (Sadece indirme)

En basit ve en ucuz çözümdür. İki dirençle 5 V’u 3,3 V’a düşürür.

5V sinyal ──[ R1 = 1 kΩ ]──┬── 3,3V karta [ R2 = 2 kΩ ] GND
V_cikis = 5 V × R2 / (R1 + R2) = 5 × 2 / 3 = 3,33 V ✔

Yaygın direnç çiftleri:

R1R2Çıkış
1 kΩ2 kΩ3,33 V
1 kΩ2,2 kΩ3,44 V
10 kΩ20 kΩ3,33 V
2,2 kΩ3,3 kΩ3,00 V

Avantajı: Ucuz, iki bileşen, hemen kurulur.

Sınırları:

  • Tek yönlüdür. Yalnızca 5 V → 3,3 V çalışır.
  • Yavaştır. Dirençler ile kablo kapasitesi bir RC filtresi oluşturur. Yaklaşık 100 kHz üzerindeki sinyaller bozulur. I2C’nin 400 kHz hızlı modunda veya SPI’da kullanmayın.
  • Sürekli akım çeker. Küçük ama pille çalışan projelerde önemli olabilir.

Ultrasonik sensör Echo hattı, buton, PIR çıkışı gibi yavaş sinyaller için fazlasıyla yeterlidir.

Yöntem 2: MOSFET ile Çift Yönlü Dönüştürücü

I2C gibi çift yönlü hatlar için standart çözümdür. Tek bir N-kanal MOSFET (BSS138) ve iki pull-up direnci kullanır.

3,3V ──[ 10 kΩ ]──┬── 3,3V taraf (SDA) Gate ← 3,3V [ BSS138 ] 5V ──[ 10 kΩ ]────┴── 5V taraf (SDA)

Bağlantı:

  • MOSFET Gate → 3,3 V beslemeye
  • Source → 3,3 V tarafındaki sinyal hattına
  • Drain → 5 V tarafındaki sinyal hattına
  • Her iki hatta kendi besleme gerilimine 10 kΩ pull-up

Nasıl çalışır? 3,3 V tarafı LOW olduğunda MOSFET iletime geçer ve 5 V tarafını da aşağı çeker. 5 V tarafı LOW olduğunda MOSFET’in gövde diyodu üzerinden 3,3 V tarafı da aşağı çekilir. İki taraf da HIGH olduğunda pull-up dirençleri hatları kendi seviyelerine çeker.

Bu devre I2C’nin açık kolektör yapısıyla mükemmel uyumludur.

Yöntem 3: Hazır Seviye Dönüştürücü Modülü

Pratikte en çok tercih edilen çözümdür ve çok ucuzdur.

4 kanallı çift yönlü modül (BSS138 tabanlı)

Yukarıdaki MOSFET devresinin dört kanallı hazır halidir.

PinBağlantı
LV3,3 V besleme
HV5 V besleme
GNDOrtak toprak (iki taraf da)
LV1–LV43,3 V taraf sinyalleri
HV1–HV45 V taraf sinyalleri

Kullanım: I2C, tek yönlü sinyaller, düşük hızlı SPI. En yaygın ve en esnek modüldür.

Sınırı: MOSFET tabanlı olduğu için çok yüksek hızlarda (>2 MHz) zorlanır.

TXS0108E (8 kanal, otomatik yön)

Sekiz kanallı, yön algılamalı bir entegredir. Daha hızlıdır ama tek yönlü hatlarda bazen “yön kararsızlığı” yaşayabilir.

74HCT125 / 74AHCT125 (tek yönlü tampon)

3,3 V → 5 V yükseltme için en güvenilir çözümdür. HCT serisinin HIGH eşiği düşüktür (~2 V), bu yüzden 3,3 V sinyali kesin olarak HIGH kabul eder.

WS2812 LED şeritlerini ESP32 ile sürerken tavsiye edilen çözüm budur.

Hangi Durumda Ne Kullanmalı?

DurumÇözüm
HC-SR04 Echo → ESP32Gerilim bölücü (1 kΩ + 2 kΩ)
5 V I2C cihaz ↔ ESP32Çift yönlü modül (BSS138)
5 V buton/switch → ESP32Gerilim bölücü, veya butonu GND’ye bağlayıp INPUT_PULLUP
ESP32 → 5 V röle kartı girişiGenellikle doğrudan çalışır
ESP32 → WS2812 LED şerit74AHCT125 tampon
ESP32 → 5 V motor sürücü (L298N)Genellikle doğrudan çalışır
5 V UART cihaz ↔ ESP32RX hattına gerilim bölücü, TX doğrudan
Yüksek hızlı SPIÖzel seviye dönüştürücü entegre

En İyi Çözüm: Sorunu Baştan Yaratmamak

Çoğu sensör hem 3,3 V hem 5 V ile çalışır. Sensörü 3,3 V’tan beslerseniz çıkışı da 3,3 V olur ve dönüştürücüye hiç gerek kalmaz.

3,3 V ile sorunsuz çalışan yaygın sensörler:

  • DHT11 / DHT22
  • DS18B20
  • BMP280 / BME280
  • MPU6050
  • OLED ekranlar (SSD1306)
  • Çoğu I2C modülü

Veri sayfasında “Operating Voltage: 3,0 – 5,5 V” gibi bir aralık görüyorsanız sensörü 3,3 V’tan besleyin ve sorunu tamamen ortadan kaldırın.

Ana istisna: HC-SR04. 3,3 V ile beslendiğinde güvenilir çalışmaz; 5 V gerekir ve bu yüzden Echo hattı dönüştürülmelidir. (3,3 V ile çalışan HC-SR04P versiyonu da mevcuttur.)

Kaçınılması Gereken Yanlış Çözümler

Seri direnç koymak. “Araya 1 kΩ koydum, akımı sınırlıyor” yaklaşımı yanlıştır. Giriş pini akım çekmez; koruma diyodu üzerinden geçen akımı sınırlarsınız ama gerilim yine 5 V’a yakın kalır. Bu, hasarı yavaşlatır ama önlemez.

Zener diyot. Çalışır ama sinyal kenarlarını bozar ve sürekli akım çeker.

“Bende çalışıyor” varsayımı. ESP kartları 5 V sinyalle bir süre sorunsuz çalışabilir. Bu, güvenli olduğu anlamına gelmez; pinler kümülatif olarak yıpranır.

Ortak Toprak

Hangi yöntemi kullanırsanız kullanın, iki devrenin GND hatları birleştirilmelidir. Lojik seviye, GND’ye göre tanımlanır; ortak referans olmadan hiçbir dönüştürücü çalışmaz.

Özet

3,3 V ve 5 V lojik seviyeler doğrudan birleştirilemez. 5 V → 3,3 V yönü mutlaka dönüştürme gerektirir; ters yön genellikle gerekmez ama her zaman değil.

Bu derste şunları öğrendik:

  • Hangi kartın hangi lojik seviyede çalıştığını
  • İki yönün neden farklı ele alınması gerektiğini
  • Gerilim bölücü ile indirmeyi ve hız sınırını
  • BSS138 MOSFET ile çift yönlü dönüştürmeyi
  • Hazır modülleri ve hangisinin ne zaman uygun olduğunu
  • Sensörü 3,3 V’tan besleyerek sorunu baştan çözmeyi
  • Seri direnç ve zener gibi yanlış çözümleri