Pinout ESP32 je jednou z jeho najväčších predností a zároveň jedným z najčastejších zdrojov zmätku. Pri silnom multiplexovaní, prísnych závislostiach v boot-mode a citlivom analógovom správaní je správny výber pinov dôležitý pre stabilnú prevádzku. Tento článok jasne organizuje každú hlavnú skupinu pinov, aby ste sa vyhli konfliktom, predchádzali zlyhaniu bootovania a navrhovali spoľahlivý hardvér založený na ESP32.

Pochopenie rozloženia pinov ESP32
ESP32 je výkonný a flexibilný mikrokontrolér široko používaný v IoT, automatizácii a inteligentných zariadeniach. Jeho pokročilé schopnosti vychádzajú z vysoko multiplexovaného systému pinov, v ktorom mnohé funkcie zdieľajú rovnaké fyzické piny. Patria sem digitálne I/O, ADC kanály, kapacitné dotykové senzory, komunikačné zbernice, piny domény RTC a vnútorné pripojenia pre SPI flash a bootovaciu konfiguráciu. Keďže mnohé funkcie zdieľajú piny, nesprávne zapojenie môže spôsobiť neúspešné štartovanie, šumové údaje ADC alebo deaktiváciu periférií.
Rozloženie pinov ESP32 DevKit

Vývojové dosky ESP32 sú zvyčajne dostupné vo verziách s 30 a 38 pinmi, pričom obe ukazujú rovnaké základné funkcie, ale s drobnými rozdielmi v dostupných GPIO.
Skupiny pinov na ESP32 vývojárskych doskách
| Skupina | Popis |
|---|---|
| Napájacie piny | VIN (5 V), výstup 3,3 V, GND |
| Riadiace piny | EN (reset), IO0 (bootovací režim) |
| GPIO piny | Digitálny I/O s multiplexovaním |
| Analógové piny | Kanály ADC1 a ADC2 |
| Komunikačné piny | SPI, I2C, UART, I2S |
| Iba vstupné piny | GPIO34–GPIO39 |
| Flash-rezervované piny | GPIO6–GPIO11 |
Spoločné usporiadanie hlavičiek
Ľavá hlavička
• EN, GPIO36–39, GPIO34–35
• GPIO32–33, 25–27
• VIN, GND, 3,3V
Pravý hlavička
• GPIO0–23
• Kolíky na upevnenie čižiem (0, 2, 5, 12, 15)
Pochopenie fyzického usporiadania uľahčuje predchádzanie chybám a efektívne plánovanie elektroinštalácie.
Prehľad GPIO ESP32

GPIO ESP32 sú flexibilné vďaka internej I/O matici, ktorá umožňuje mapovať periférie ako UART, SPI, I2C a PWM takmer kdekoľvek. GPIO podporujú digitálny vstup/výstup s integrovanými pull-up/down rezistormi, edge-triggerované prerušenia a spoľahlivé prepínanie pri vysokých rýchlostiach. Typický kontinuálny pohonný prúd je 12–16 mA (vrcholy až do ~20–40 mA), preto sú pre motory alebo relé potrebné externé meniče.
Iba vstupné piny
Tieto piny nemôžu ovládať výstup a sú ideálne pre senzory a analógové vstupy:
| Pin | Typ | Odporúčané použitie |
|---|---|---|
| GPIO34 | Iba vstup | ADC1 / senzory |
| GPIO35 | Iba vstup | ADC1 |
| GPIO36 (VP) | Iba vstup | ADC1 / Hallov senzor |
| GPIO39 (VN) | Iba vstup | ADC1 |
Bezpečné ESP32 piny na použitie a piny na vyhnutie sa

Nie všetky piny ESP32 sa správajú rovnako. Niektoré sú bezpečné, iné ovplyvňujú bootovací režim alebo sú viazané na internú flash pamäť.
Bezpečnostné piny (odporúčané pre všetkých používateľov)
| GPIO | Poznámky |
|---|---|
| 4, 13–19, 21–27, 32, 33 | Bez nárazu na boot, ideálne pre väčšinu periférií |
Výstražné piny (ovplyvňujú štartovací režim)
| GPIO | Boot Function | Vyhnúť sa počas bootovania |
|---|---|---|
| GPIO0 | Režim flash/boot | Počas bežného bootovania udržujte HIGH (vstup) |
| GPIO2 | Štartovacie napätie | Musí byť VYSOKÝ |
| GPIO5 | Voliteľný bootovací režim | Vyhnite sa ťahaniu nízko |
| GPIO12 | Režim záblesku napätia | Musím zostať NÍZKO |
| GPIO15 | SPI režim | Musím zostať NÍZKO |
Tieto piny sú bezpečné na bežnú prevádzku, ale vonkajšie komponenty ich nesmú počas resetu stiahnuť na neplatné logické úrovne. Ich podrobné úlohy na výcvik sú vysvetlené v časti 9.
Obmedzené piny (nepoužívať)
| GPIO | Dôvod |
|---|---|
| GPIO6–11 | Pripojené k SPI flash pamäti |
Používanie týchto systémov môže ESP32 zamrznúť alebo spadnúť.
ESP32 ADC piny

ESP32 integruje dve jednotky SAR ADC s odlišným operačným správaním:
• ADC1 — Vždy dostupný a odporúčaný pre všetky vstupy senzorov
• ADC2 — Zdieľaný s Wi-Fi subsystémom a stáva sa nedostupným vždy, keď je Wi-Fi aktívne
Toto je jedno z kľúčových obmedzení ESP32, vďaka čomu je ADC1 spoľahlivou voľbou pre merania v bezdrôtových aplikáciách.
| Jednotka ADC | Kanály | GPIO | Poznámky |
|---|---|---|---|
| ADC1 | CH0–CH7 | GPIO32–39 | Najlepšia voľba senzorov |
| ADC2 | CH0–CH9 | 0, 2, 4, 12–15, 25–27 | Nepoužiteľné počas Wi-Fi |
Rozsah napätia a presnosť
ADC podporujú predvolený rozsah vstupu 0–1,1 V, ktorý je možné rozšíriť približne na 3,3 V s útlmom. Obe jednotky ADC sú nelineárne a profitujú z kalibrácie. Analógový výkon môže ovplyvniť vnútorná RF aktivita, takže vedenie senzorových čiar od antény a pridanie jednoduchých RC filtrov môže výrazne zlepšiť stabilitu. Pri projektoch s podporou Wi-Fi vždy umiestnite analógové senzory na ADC1, aby ste zabezpečili nepretržitú a bezšumovú prevádzku.
ESP32 DAC, PWM a dotykové piny
ESP32 obsahuje zabudované analógové výstupy a dotykové senzory, ktoré zjednodušujú generovanie vĺn, stmievanie, ovládanie motora a používateľské rozhrania.
Prehľad 6.1 DAC

Dva 8-bitové DAC kanály vysielajú skutočné analógové napätia:
| DAC | GPIO |
|---|---|
| DAC1 | GPIO25 |
| DAC2 | GPIO26 |
Bežné použitia zahŕňajú jednoduchý zvuk, analógové vlnové priebehy, vyblednutie LED diód a polarizačné napätia. Výstupný rozsah je typicky 0–3,3 V.
PWM (LEDC)

Modul LEDC poskytuje vysokorozlíšený, flexibilný PWM:
• 16 kanálov
• Základňa časovača až 40 MHz
• Až 20-bitové rozlíšenie
• Plne reappovateľné GPIO
Používa sa na stmievanie LED, riadenie motorov, servo signály, audio tóny a všeobecnú moduláciu. Každé GPIO môže hostiť výstup PWM cez GPIO maticu.
Piny dotykového senzora

10 kapacitných dotykových panelov ESP32 detekuje blízkosť prstov a sú užitočné pre dotykové tlačidlá, posuvníky a spúšťače prebúdzania.
| Touchpad | GPIO |
|---|---|
| T0–T9 | GPIO4, 0, 2, 15, 13, 12, 14, 27, 33, 32 |
Tieto senzory obsahujú filtrovanie šumu a dobre fungujú pri nízkoenergetických udalostiach prebudenia.
ESP32 komunikačné piny
ESP32 obsahuje bohatú sadu komunikačných periférií, z ktorých každé môže byť smerované na viacero pinov cez flexibilnú GPIO maticu. To umožňuje priraďovať rozhrania ako I2C, SPI a UART takmer kdekoľvek, čo umožňuje vysoko prispôsobiteľné rozloženie dosiek a kombinácie periférií.
I2C (predvolené a vlastné piny)

ESP32 obsahuje dva I2C ovládače s úplnou flexibilitou pri výbere pinov. Hoci väčšina vývojových dosiek používa predvolené piny, SDA aj SCL je možné priradiť takmer akémukoľvek GPIO.
| Signál | Predvolené GPIO | Poznámky |
|---|---|---|
| SDA | GPIO21 | Plne reappovateľné |
| SCL | GPIO22 | Plne reappovateľné |
Akékoľvek dva digitálne GPIO môžu fungovať ako SDA a SCL. Podporuje štandardný režim (100 kHz), rýchly režim (400 kHz) aj rýchly režim plus (1 MHz v závislosti od klávesnice). Na niektorých doskách podporuje vnútorné pull-upy, ale pre stabilnú komunikáciu sa odporúčajú externé 4,7 kΩ rezistory. Táto flexibilita robí ESP32 ideálnym pre systémy vyžadujúce viacero senzorov alebo netradičné vedenie pinov.
ESP32 obsahuje viacero SPI zberníc, pričom HSPI a VSPI sú dostupné pre používateľské zariadenia. Obe podporujú premapovanie cez GPIO maticu, ale väčšina dosiek a knižníc používa nasledujúcu predvolenú konfiguráciu VSPI, ktorá zabraňuje konfliktom s internými flash pripojeniami:
Predvolené mapovanie VSPI
• SCK → GPIO18
• MISO → GPIO19
• MOSI → GPIO23
• CS → GPIO5
VSPI je zvyčajne preferovaný pre displeje, SD karty a vysokorýchlostné periférie. Aj keď sú piny možné prepĺňať, použitie predvolených zaručuje maximálnu kompatibilitu a znižuje časové problémy bez opakovania obmedzení, ktoré už boli spomenuté v predchádzajúcich častiach.
UART (sériové)

ESP32 obsahuje tri UART kontroléry s flexibilným smerovaním, ktoré umožňuje presunúť akékoľvek UART piny takmer na akýkoľvek GPIO.
| UART | TX PIN | Pin RX | Primárny účel |
|---|---|---|---|
| UART0 | GPIO1 | GPIO3 | Flashovanie, bootovacie správy, sériové logovanie |
| UART1 | GPIO10 | GPIO9 | Dostupné pre používateľské aplikácie |
| UART2 | GPIO17 | GPIO16 | Dostupné pre používateľské aplikácie |
ESP32 Deep-Sleep a RTC piny
ESP32 obsahuje subsystém Ultra-Low-Power (ULP) a vyhradenú doménu Real-Time Clock (RTC), ktoré zostávajú napájané aj po vypnutí hlavného CPU a periférií. Táto architektúra umožňuje extrémne nízku spotrebu energie, často v mikroampérovom rozsahu, čo robí ESP32 vhodným pre dlhodobé batériové aplikácie.
Hlboký režim spánku umožňuje čipu vypnúť hlavné jadrá, väčšinu interných hodín a Wi-Fi/Bluetooth rádiá, pričom stále monitoruje vybrané piny a senzory cez RTC periférie.

ESP32 sa dokáže prebudiť z hlbokého spánku prostredníctvom viacerých nezávislých spúšťačov. Každý zdroj vlny pracuje v rámci domény RTC, ktorá je navrhnutá tak, aby zostala aktívna s minimálnou spotrebou energie.
| Typ stopy | GPIO / Poznámky |
|---|---|
| Externý RTC GPIO | GPIO32, GPIO33, GPIO25, GPIO26, GPIO27 — podpora prebudenia na hrane alebo úrovni |
| Kapacitné dotykové podložky | T0–T9 — detekuje blízkosť prstov alebo dotyk počas hlbokého spánku |
| Časovač prebudenia | RTC časovač môže zariadenie prebudiť po naprogramovanom intervale |
| ULP koprocesor | (Voliteľné) Vlastný nízkoenergetický kód môže skontrolovať senzory pred prebudením hlavného CPU |
Tieto piny patria do domény RTC a zostávajú aktívne aj vtedy, keď sú CPU a bežné GPIO vypnuté. Podporujú prebudenie pomocou stúpajúcich/klesajúcich hrán alebo jednoduchej detekcie hladiny. Bežne sa používa pre wake-on-motion, magnetické spínače a nízkoenergetické spúšte.
ESP32 boot, strapping a EN pinové funkcie

ESP32 používa niekoľko upevňovacích kolíkov, ktoré určujú kľúčové konfigurácie systému počas resetu alebo zapnutia. Tieto piny sa vzorkujú iba pri štarte a potom sa vrátia k normálnej GPIO funkcii. Zabezpečiť, aby neboli počas resetu nastavené na neplatné úrovne, je užitočné pre konzistentné správanie pri štarte.
Stôl na upevňovanie čapkov
| Pin | Boot Role | Požadovaný stav pri štarte |
|---|---|---|
| GPIO0 | Vyberie režim bootloadera / flash | LOW = vstup do režimu blesku; HIGH = normálny štart |
| GPIO2 | Definuje vnútornú úroveň štartovacieho napätia | Musí zostať VYSOKO |
| GPIO5 | SPI konfigurácia bootovania | Musí zostať VYSOKO |
| GPIO12 | Vyberá napätie blesku (3,3 V / 1,8 V) | Musí zostať NÍZKA pre 3,3 V blesk |
| GPIO15 | Nastavuje SPI komunikačný režim počas bootu | Musí zostať NÍZKA |
Táto časť poskytuje autoritatívny referenčný bod pre správanie pri pripútaní. Skoršie časti zhrňujú len praktické účinky; Použite túto tabuľku pri priraďovaní pinov na vlastných PCB alebo integrácii tlačidiel a senzorov.
EN PIN (Povoliť / Resetovať)
Pin EN (Enable) slúži ako vstup na resetovanie hlavného režimu pre ESP32.
Správanie EN pinu:
• Stiahnutie EN LOW okamžite resetuje čip.
• Uvoľnenie späť na HIGH aktivuje vnútorné obvody a reštartuje bootovaciu sekvenciu.
• Na vývojových doskách (napr. ESP32-DevKitC, NodeMCU-ESP32) je EN viazaný na USB-sériové rozhranie, aby umožnil automatický reset počas flashovania.
ESP32 napájacie piny

ESP32 je citlivý na kvalitu napájania, pretože jeho Wi-Fi a Bluetooth rádiá prijímajú krátke, vysokoamplitúdové prúdové impulzy. Stabilné napájanie zaručuje spoľahlivý štart, znížené resety výpadkov a konzistentný výkon bezdrôtového pripojenia.
Súhrn Power Pin
| Pin | Napätie | Použitie |
|---|---|---|
| VIN | 5 V vstup | Napája palubný regulátor (typicky AMS1117 alebo ME6211) na generovanie 3,3 V |
| 3V3 | 3,3 V výstup | Regulovaný výstup z palubného LDO; používa sa na napájanie externej nízkoprúdovej logiky a senzorov |
| GND | — | Elektrická referenčná a spätná cesta pre všetky podsystémy |
Odporúčané piny ESP32 a príklady zapojenia
Výber správnych pinov na ESP32 je potrebný pre stabilnú prevádzku, čisté smerovanie signálu a vyhnutie sa konfliktom s boot-strappingom alebo internými flash pripojeniami. Nasledujúce odporúčania zdôrazňujú najspoľahlivejšie, bez konfliktov piny pre bežné funkcie.
Výber odznakov
| Funkcia | Najlepšie odznaky | Poznámky |
|---|---|---|
| I2C | 21 (SDA), 22 (SCL) | Predvolený hardvérovo testovaný pár; Funguje vo väčšine dosiek. |
| SPI | 18 (SCK), 19 (MISO), 23 (MOSI), 5 (CS) | Tieto piny sa čisto mapujú na VSPI a vyhýbajú sa flash-pripojeným pinom. |
| UART | 16 (RX), 17 (TX) | Dedikované UART2 piny, bezpečné na bootovanie a ladenie. |
| PWM (LEDC) | 4, 16–19, 21–27, 32–33 | Dosah s vysokou flexibilitou; PWM sa dá smerovať takmer na akékoľvek GPIO. |
| ADC | 32–39 (ADC1) | Kanály ADC1 zostávajú použiteľné aj vtedy, keď je Wi-Fi aktívne. |
Záver
Zvládnutie rozvrhu pinov ESP32 eliminuje hádanie a zabraňuje mnohým problémom, ktoré sa objavujú v skutočných zostavách, od hlučných čítaní ADC až po nekonečné bootovacie cykly. Pochopením bezpečných pinov, správania pripútaní, integrity napájania a hlbokého spánku môžete navrhnúť obvody, ktoré zostanú stabilné, predvídateľné a pripravené na bezdrôtové pripojenie. Použite vyššie uvedené mapy pinov a usmernenia ako základ pre bezproblémové projekty ESP32.
Často kladené otázky [FAQ]
Ako nakonfigurovať PlatformIO pre Freenove ESP32-S3 Breakout Board?
Použite štandardné nastavenia vývojárskeho modulu ESP32-S3. Vo vašom platformio.ini pridajte:
[env:esp32s3]
platforma = espressif32
Board = ESP32-S3-DevKITC-1
Framework = Arduino
To zodpovedá rozloženiu pinov Freenove, čo umožňuje bežné kompilovanie a nahrávanie cez USB.
Koľko periférií môže ESP32 prevádzkovať súčasne?
Vďaka GPIO matici môže ESP32 súčasne prevádzkovať viacero I²C, SPI, UART, PWM a ADC funkcií, pokiaľ sa vyhnete obmedzeným pinom a zostanete v rámci limitov CPU a časovania. Hlavné úzke miesta sú ADC2 počas Wi-Fi a kvalita napájania, nie počet pinov.
Prečo sa môj ESP32 reštartuje pri pripájaní senzorov alebo modulov?
Neočakávané resety zvyčajne vznikajú v dôsledku poklesov napätia spôsobených výbuchmi Wi-Fi, motormi alebo zle regulovanými zdrojmi. Použitím zdroja 5 V s napätím 1 A alebo vyšším sa pridanie objemových kondenzátorov s výkonom 10–100 μF a izolácia hlučných záťaží zabraňuje výpadkom napätia.
Môžem použiť 3.3 V pin ESP32 na napájanie externých modulov?
Áno, ale len pre zariadenia s nízkym prúdom (typicky pod 300–500 mA, v závislosti od zabudovaného LDO). Vysokoodberové periférie ako motory, servá a veľké LED pásiky musia používať samostatný zdroj napájania, aby sa predišlo resetom a prehrievaniu.
Ako si vybrať najlepšie piny ESP32 pri použití viacerých periférií?
Uprednostňujte piny bez strapov, vyhýbajte sa GPIO6–11, umiestňujte analógové senzory na ADC1 a používajte predvolené piny VSPI/I²C/UART, ak je to možné. To znižuje konflikty a zabezpečuje, že všetky periférie môžu fungovať spolu bez problémov s premapovaním.