ESP32'nin pinout özelliği onun en büyük güçlerinden biri ve en yaygın kafa karışıklığı kaynaklarından biridir. Yoğun çoklama, sıkı önyükleme modu bağımlılıkları ve hassas analog davranışlarla, doğru pin seçimi kararlı çalışma için önemlidir. Bu makale, tüm büyük pin gruplarını net bir şekilde organize ediyor; böylece çatışmaları önleyebilir, önyükleme hatalarını önleyebilir ve güvenilir ESP32 tabanlı donanım tasarlayabilirsin.

ESP32 Pin Çıkışını Anlamak
ESP32, IoT, otomasyon ve akıllı cihazlarda yaygın olarak kullanılan güçlü ve esnek bir mikrodenetleyicidir. Gelişmiş yetenekleri, birçok fonksiyonun aynı fiziksel pinleri paylaştığı yüksek çoklu bir pin çıkış sisteminden gelir. Bunlar arasında dijital G/Giriş, ADC kanalları, kapasitif dokunmatik sensörler, iletişim yolları, RTC alan pinleri ve SPI flaş ve önyükleme yapılandırması için dahili bağlantılar bulunur. Birçok fonksiyon pin paylaştığı için, yanlış kablolama başarısız başlatmaya, gürültülü ADC okumalarına veya devre dışı kalan çevre cihazlarına yol açabilir.
ESP32 DevKit Pin Düzeni

ESP32 geliştirme kartları genellikle 30 pinli ve 38 pinli versiyonlarda gelir; her ikisi de aynı temel fonksiyonları sunar ancak mevcut GPIO'larda küçük farklılıklar vardır.
ESP32 Dev Board'larda Pin Grupları
| Grup | Açıklama |
|---|---|
| Güç Pinleri | VIN (5 V), 3.3 V çıkış, GND |
| Kontrol Pinleri | EN (sıfırla), IO0 (boot mode) |
| GPIO Pinleri | Çoklama ile dijital G/Ç |
| Analog Pinler | ADC1 ve ADC2 kanalları |
| İletişim Pinleri | SPI, I2C, UART, I2S |
| Sadece Giriş Amaçlı Pinler | GPIO34–GPIO39 |
| Flash-Rezerve Pinler | GPIO6–GPIO11 |
Ortak Başlık Düzeni
Sol Başlık
• EN, GPIO36–39, GPIO34–35
• GPIO32–33, 25–27
• VIN, GND, 3.3V
Sağ Başlık
• GPIO0–23
• Boot-strapping pinleri (0, 2, 5, 12, 15)
Fiziksel düzeni anlamak, hatalardan kaçınmayı ve kablolamaları verimli planlamayı kolaylaştırır.
ESP32 GPIO Genel Bakış

ESP32 GPIO'lar, UART, SPI, I2C ve PWM gibi çevre birimlerinin neredeyse her yere eşlenmesine olanak tanıyan dahili I/O Matrisi sayesinde esnektir. GPIO'lar, dahili pull-up/down dirençler, kenar tetikli kesintiler ve yüksek hızlarda güvenilir anahtarlama ile dijital giriş/çıkışı destekler. Tipik sürekli sürüş akımı 12–16 mA'dır (~20–40 mA'ya kadar zirve), bu nedenle motorlar veya röleler için harici sürücüler gereklidir.
Sadece Giriş Amaçlı Pinler
Bu pinler çıkışı sürdüremez ve sensörler ile analog girişler için idealdir:
| Pin | Tip | Önerilen Kullanım |
|---|---|---|
| GPIO34 | Sadece giriş | ADC1 / sensörler |
| GPIO35 | Sadece giriş | ADC1 |
| GPIO36 (VP) | Sadece giriş | ADC1 / Hall sensörü |
| GPIO39 (VN) | Sadece giriş | ADC1 |
Kullanılacak Güvenli ESP32 Pinleri ve Kaçınılması Gereken Pimler

Tüm ESP32 pinleri eşit şekilde davranmıyor. Bazıları güvenlidir, bazıları ise önyükleme modunu etkiler veya dahili flash belleğe bağlıdır.
Güvenli Pinler (Tüm Kullanıcılar İçin Önerilir)
| GPIO'lar | Notlar |
|---|---|
| 4, 13–19, 21–27, 32, 33 | Boot darbesi yok, çoğu çevre cihaz için ideal |
Uyarı Pinleri (Başlatma Modunu Etkiler)
| GPIO | Başlatma Fonksiyonu | Boot Sırasında Kaçının |
|---|---|---|
| GPIO0 | Flash/Boot modu | Normal açılışta YÜKSEK (giriş) tutun |
| GPIO2 | Önyükleme voltajı | YÜKSEK olmalı |
| GPIO5 | Opsiyonel önyükleme modu | Düşük çekmekten kaçının |
| GPIO12 | Flaş voltajı modu | ALÇAK kalmak zorundayım |
| GPIO15 | SPI modu | ALÇAK kalmak zorundayım |
Bu pinler normal çalışmada kullanmak için güvenlidir, ancak harici bileşenler sıfırlama sırasında onları geçersiz mantık seviyelerine çekmemelidir. Detaylı boot rolleri 9. Bölümde açıklanmıştır.
Kısıtlı Pimler (Kullanılmaz)
| GPIO | Sebep |
|---|---|
| GPIO6–11 | SPI flash belleğe bağlandı |
Bunları kullanmak ESP32'nin donmasına veya çökmesine neden olabilir.
ESP32 ADC Pimleri

ESP32, farklı operasyonel davranışlara sahip iki SAR ADC birimini entegre eder:
• ADC1 — Tüm sensör girişleri için her zaman mevcut ve tavsiye edilir
• ADC2 — Wi-Fi alt sistemiyle paylaşılır ve Wi-Fi aktifken kullanılamaz hale gelir
Bu, ESP32'nin temel sınırlamalarından biridir ve ADC1'i kablosuz uygulamalarda ölçüm için güvenilir tercih yapar.
| ADC Birimi | Kanallar | GPIO'lar | Notlar |
|---|---|---|---|
| ADC1 | CH0–CH7 | GPIO32–39 | Sensörler için en iyi seçenek |
| ADC2 | CH0–CH9 | 0, 2, 4, 12–15, 25–27 | Wi-Fi sırasında kullanılamaz |
Voltaj Aralığı ve Doğruluk
ADC'ler, zayıflatma ile yaklaşık 3.3 V'a kadar genişletilebilen varsayılan 0–1.1 V giriş aralığını destekler. Her iki ADC birimi de doğrusal değildir ve kalibrasyondan faydalanır. Analog performans, dahili RF aktivitesinden etkilenebilir, bu yüzden sensör hatlarını antenden uzaklaştırmak ve basit RC filtreler eklemek kararlılığı büyük ölçüde artırabilir. Wi-Fi destekli projelerde, sürekli ve gürültüsüz çalışmayı sağlamak için her zaman analog sensörler ADC1'e yerleştirin.
ESP32 DAC, PWM ve Dokunmatik Pinler
ESP32, dalga formu üretimi, karartma, motor kontrolü ve kullanıcı arayüzlerini basitleştiren dahili analog tarzı çıkışlar ve dokunmatik sensörler içerir.
DAC Genel Bakış

İki 8-bit DAC kanalı gerçek analog voltajlar üretir:
| DAC | GPIO |
|---|---|
| DAC1 | GPIO25 |
| DAC2 | GPIO26 |
Yaygın kullanımlar arasında basit ses, analog dalga formları, LED solması ve önyargı voltajları bulunur. Çıkış aralığı genellikle 0–3.3 V'dur.
PWM (LEDC)

LEDC modülü yüksek çözünürlüklü ve esnek PWM sağlar:
• 16 kanal
• 40 MHz'e kadar zamanlayıcı tabanı
• 20 bite kadar çözünürlük
• Tamamen yeniden eşleştirilebilir GPIO'lar
LED karartma, motor kontrolü, servo sinyalleri, ses tonları ve genel modülasyon için kullanılır. Herhangi bir GPIO, GPIO Matrisi üzerinden PWM çıkışı barındırabilir.
Dokunmatik Sensör Pinleri

ESP32'nin 10 kapasitif dokunmatik paneli parmak yakınlığını algılar ve dokunmatik düğmeler, kaydırmalar ve uyandırma tetikleri için kullanışlıdır.
| Dokunmatik Panel | GPIO |
|---|---|
| T0–T9 | GPIO4, 0, 2, 15, 13, 12, 14, 27, 33, 32 |
Bu sensörler gürültü filtreleme içerir ve düşük güçlü uyanık olayları için iyi çalışır.
ESP32 İletişim Pinleri
ESP32, esnek GPIO Matrisi aracılığıyla birden fazla pine yönlendirilebilen zengin bir iletişim çevre cihazı seti içerir. Bu, I2C, SPI ve UART gibi arayüzlerin neredeyse her yere atamasına olanak tanır ve yüksek derecede özelleştirilebilir kart düzenleri ile çevresel kombinasyonlar sağlar.
I2C (Varsayılan ve Özel Pinler)

ESP32, pin seçimi konusunda tam esnekliğe sahip iki I2C kontrolcüsü içerir. Çoğu geliştirme kartı varsayılan pinleri kullansa da, hem SDA hem de SCL neredeyse herhangi bir GPIO'ya yeniden atanabiliyor.
| Sinyal | Varsayılan GPIO | Notlar |
|---|---|---|
| SDA | GPIO21 | Tamamen yeniden eşleştirilebilir |
| SCL | GPIO22 | Tamamen yeniden eşleştirilebilir |
Herhangi iki dijital GPIO SDA ve SCL olarak hareket edebilir. Hem standart mod (100 kHz), hızlı mod (400 kHz) hem de hızlı mod artı (kart cihazına göre 1 MHz) destekler. Bazı kartlarda dahili pull-up destekler, ancak stabil iletişim için harici 4.7 kΩ dirençler önerilir. Bu esneklik, ESP32'yi birden fazla sensör veya alışılmadık pin yönlendirmesi gerektiren sistemler için ideal kılar.
ESP32, kullanıcı cihazları için HSPI ve VSPI ile birlikte birden fazla SPI veri yolu içerir. Her ikisi de GPIO matrisi üzerinden yeniden eşlemeyi destekler, ancak çoğu kart ve kütüphane, dahili flash bağlantılarla çatışmaları önleyen aşağıdaki varsayılan VSPI yapılandırmasını kullanır:
Varsayılan VSPI Eşlemesi
• SCK → GPIO18
• MISO → GPIO19
• MOSI → GPIO23
• CS → GPIO5
VSPI genellikle ekranlar, SD kartlar ve yüksek hızlı çevre cihazlar için tercih edilir. Pimler yeniden eşleştirilebilir olsa da, varsayılan ayarları kullanmak maksimum uyumluluk sağlar ve zamanlama sorunlarını azaltır, önceki bölümlerde zaten ele alınan kısıtlamaları tekrarlamadan.
UART (Seri)

ESP32, esnek yönlendirme özelliğine sahip üç UART kontrolcüsü içerir ve bu da herhangi bir UART pininin neredeyse herhangi bir GPIO'ya taşınmasına olanak tanır.
| UART | TX Pin | RX Pin | Ana Amaç |
|---|---|---|---|
| UART0 | GPIO1 | GPIO3 | Yanıp sönme, önyükleme mesajları, seri kayıt |
| UART1 | GPIO10 | GPIO9 | Kullanıcı uygulamaları için mevcut |
| UART2 | GPIO17 | GPIO16 | Kullanıcı uygulamaları için mevcut |
ESP32 Derin Uyku ve RTC Pinleri
ESP32, ana CPU ve çevre cihazları kapalı olsa bile enerjili kalan Ultra-Düşük Güç (ULP) alt sistemi ve özel bir Gerçek Zaman Saati (RTC) alanı içerir. Bu mimari, genellikle mikroamper aralığında olan son derece düşük güç tüketimini sağlar ve ESP32'yi uzun vadeli pil ile çalışan uygulamalar için uygun kılar.
Derin uyku rejimi, çipin ana çekirdekleri, çoğu dahili saati ve Wi-Fi/Bluetooth radyolarını kapatmasına olanak tanırken, RTC çevre birimleri aracılığıyla seçilen pinleri ve sensörleri izlemeye devam eder.

ESP32, derin uykudan birkaç bağımsız tetikleyiciyle uyanabilir. Her uyanış kaynağı, minimum güç tüketimiyle aktif kalacak şekilde tasarlanmış RTC alanı içinde çalışır.
| Wake Type | GPIO'lar / Notlar |
|---|---|
| Dış RTC GPIO | GPIO32, GPIO33, GPIO25, GPIO26, GPIO27 — kenar veya seviye uyandırma desteği |
| Kapasitif Dokunmatik Paneller | T0–T9 — derin uyku sırasında parmak yakınlığını veya dokunuşunu algılar |
| Zamanlayıcı Uyanış | RTC zamanlayıcısı, programlanmış bir aralık sonra cihazı uyandırabilir |
| ULP Yardımcı İşlemci | (İsteğe bağlı) Özel düşük güç kodu, ana CPU'yu uyandırmadan önce sensörleri kontrol etmek için çalışabilir |
Bu pinler RTC alanına ait ve CPU ile normal GPIO'lar kapalı olsa bile aktif kalır. Yükselen/düşen kenarlarla veya basit seviye algılama yoluyla uyanmayı destekler. Genellikle harekette uyanış, manyetik anahtarlar ve düşük güçlü tetikleyiciler için kullanılır.
ESP32 Boot, Strapping ve EN Pin Fonksiyonları

ESP32, sıfırlama veya güç açma sırasında anahtar sistem konfigürasyonlarını belirleyen birkaç bağlama pini kullanır. Bu pinler yalnızca önyüklemede örneklenir ve ardından normal GPIO fonksiyonuna geri döner. Sıfırlama sırasında geçersiz seviyelere sürülmemesini sağlamak, tutarlı başlangıç davranışı için faydalıdır.
Bağlama İğneli Masa
| Pin | Boot Role | Zorunlu Durum Açılışta |
|---|---|---|
| GPIO0 | Önyükleme / flash modunu seçer | LOW = flaş moduna gir; HIGH = normal başlangıç |
| GPIO2 | Dahili önyükleme voltaj seviyesini tanımlar | Yüksek kalmalı |
| GPIO5 | SPI önyükleme yapılandırması | Yüksek kalmalı |
| GPIO12 | Flaş voltajını seçer (3.3 V / 1.8 V) | 3.3 V flaş için DÜŞÜK kalması gerekiyor |
| GPIO15 | Boot sırasında SPI iletişim modunu ayarlar | DÜŞÜK kalmalı |
Bu bölüm, strapping davranışı için yetkili bir referans sağlar. Önceki bölümler sadece pratik etkileri özetlemektedir; Bu tabloyu özel PCB'lere pin atayırken veya düğmeler ile sensörleri entegre ederken kullanın.
EN Pin (Etkinleştir / Sisetle)
EN (Etkinleştir) pini, ESP32 için ana sıfırlama girişi olarak görev yapar.
EN Pin Davranışı:
• EN LOW çekince çip hemen sıfırlanır.
• Tekrar HIGH seviyesine bırakıldığında dahili devreler açılır ve önyükleme dizisini yeniden başlatır.
• Geliştirme kartlarında (örneğin, ESP32-DevKitC, NodeMCU-ESP32), EN, USB-seri arayüzüne bağlanarak flaşlama sırasında otomatik sıfırlama sağlanır.
ESP32 Güç Pinleri

ESP32, Wi-Fi ve Bluetooth radyoları kısa ve yüksek genlikli akım darbeleri çektiği için güç kalitesine duyarlıdır. Stabil güç dağıtımı, güvenilir önyükleme, azaltılmış brownout resetleri ve tutarlı kablosuz performans sağlar.
Power Pin Özeti
| Pin | Voltaj | Kullanım |
|---|---|---|
| VIN | 5 V giriş | Dahili regülatöre (genellikle AMS1117 veya ME6211) besleyerek 3.3 V |
| 3V3 | 3.3 V çıkış | Gemi içi LDO'dan düzenlenmiş çıkış; harici düşük akım mantığı ve sensörleri beslemek için kullanılır |
| GND | — | Tüm alt sistemler için elektriksel referans ve dönüş yolu |
Önerilen ESP32 Pinleri ve Kablolar Örnekleri
ESP32'de doğru pinlerin seçilmesi, istikrarlı çalışma, temiz sinyal yönlendirmesi ve önyükleme veya dahili flaş bağlantılarıyla çatışmalardan kaçınmak için gereklidir. Aşağıdaki öneriler, yaygın işlevler için en güvenilir ve çatışmasız pinleri vurgulamaktadır.
Pin Seçimleri
| Fonksiyon | En İyi Pinler | Notlar |
|---|---|---|
| I2C | 21 (SDA), 22 (SCL) | Varsayılan donanım testli çift; Çoğu panoda işe yarar. |
| SPI | 18 (SCK), 19 (MISO), 23 (MOSI), 5 (CS) | Bu pinler VSPI'ya temiz şekilde eşlenir ve flaş bağlantılı pinlerden kaçınır. |
| UART | 16 (RX), 17 (TX) | Özel UART2 pinleri, başlatma ve hata ayıklama için güvenli. |
| PWM (LEDC) | 4, 16–19, 21–27, 32–33 | Yüksek esneklik menzili; PWM neredeyse herhangi bir GPIO'ya yönlendirilebilir. |
| ADC | 32–39 (ADC1) | ADC1 kanalları, Wi-Fi aktif olsa bile kullanılabilir kalır. |
Sonuç
ESP32 pinout'unu ustalıkla oynamak, tahmini ortadan kaldırır ve gerçek yapılarda ortaya çıkan birçok sorunu önler; gürültülü ADC okumalarından sonsuz önyükleme döngülerine kadar. Güvenli pinleri, emniyet davranışını, güç bütünlüğünü ve derin uyku yönlendirmesini anlayarak, stabil, öngörülebilir ve kablosuz olarak hazır devreler tasarlayabilirsiniz. Yukarıdaki pin haritalarını ve yönergeleri, sorunsuz ESP32 projeleri için temel olarak kullanın.
Sıkça Sorulan Sorular [SSS]
Freenove ESP32-S3 Breakout Kartı için PlatformIO'yu nasıl yapılandırabilirim?
Standart ESP32-S3 geliştirici modül ayarlarını kullanın. platformio.ini şunu ekleyin:
[env:esp32s3]
platform = espressif32
Board = ESP32-s3-devkitc-1
framework = arduino
Bu, Freenove pin çıkışıyla eşleşiyor ve USB üzerinden normal derleme ve yükleme yapılmasına olanak sağlıyor.
ESP32 aynı anda kaç çevre cihazı çalıştırabilir?
GPIO Matrisi sayesinde, ESP32 aynı anda birden fazla I²C, SPI, UART, PWM ve ADC fonksiyonunu çalıştırabilir; yeter ki kısıtlı pinlerden kaçının ve CPU ile zamanlama sınırları içinde kalsın. Ana darboğazlar Wi-Fi sırasında ADC2 ve güç kaynağı kalitesi, pin sayısı değil.
ESP32 neden sensör veya modül bağlanırken yeniden açılıyor?
Beklenmedik sıfırlamalar genellikle Wi-Fi patlamaları, motorlar veya kötü düzenlenmiş kaynaklar nedeniyle oluşan voltaj düşüşlerinden kaynaklanır. 1 A veya daha yüksek 5 V kaynak kullanmak, 10–100 μF toplu kondansatör eklemek ve gürültülü yükleri izole etmek, elektrik kesintilerini önler.
ESP32'nin 3.3 V pinini harici modülleri beslemek için kullanabilir miyim?
Evet, ama sadece düşük akımlı cihazlar için (genellikle 300–500 mA'nın altında, dahili LDO'ya bağlı olarak). Motorlar, servolar ve büyük LED şeritler gibi yüksek çekimli çevre cihazları, sıfırlama ve aşırı ısınmayı önlemek için ayrı bir güç kaynağı kullanmak zorundadır.
Birden fazla çevre cihazı kullanırken en iyi ESP32 pinlerini nasıl seçebilirim?
Bağlanmayan pinlere öncelik verin, GPIO6–11'den kaçının, analog sensörleri ADC1'e yerleştirin ve mümkün olduğunda varsayılan VSPI/I²C/UART pinlerini kullanın. Bu, çatışmaları azaltır ve tüm çevre birimlerinin yeniden eşleme sorunları olmadan birlikte çalışmasını sağlar.