ESP32 Pinout Dijelaskan: Pin Selamat, Peraturan Pendawaian dan Contoh

နို ၂၅ ၂၀၂၅
Sumber: DiGi-Electronics
Lihat: 2253

Pinout ESP32 ialah salah satu kekuatan terbesarnya, dan salah satu sumber kekeliruan yang paling biasa. Dengan pemultipleksan berat, kebergantungan mod but yang ketat dan tingkah laku analog yang sensitif, pemilihan pin yang betul adalah penting untuk operasi yang stabil. Artikel ini menyusun setiap kumpulan pin utama dengan jelas supaya anda boleh mengelakkan konflik, mengelakkan kegagalan but dan mereka bentuk perkakasan berasaskan ESP32 yang boleh dipercayai.

Figure 1. ESP32 Pinout

Memahami Pinout ESP32

ESP32 ialah mikropengawal yang berkuasa dan fleksibel yang digunakan secara meluas dalam IoT, automasi dan peranti pintar. Keupayaan canggihnya datang daripada sistem pinout yang sangat multipleks di mana banyak fungsi berkongsi pin fizikal yang sama. Ini termasuk I / O digital, saluran ADC, penderia sentuh kapasitif, bas komunikasi, pin domain RTC dan sambungan dalaman untuk konfigurasi denyar dan but SPI. Oleh kerana banyak fungsi berkongsi pin, pendawaian yang tidak betul boleh menyebabkan but gagal, bacaan ADC yang bising atau peranti dilumpuhkan.

Susun atur Pin ESP32 DevKit

Figure 2. ESP32 DevKit Pin Layout

Papan pembangunan ESP32 biasanya datang dalam versi 30-pin dan 38-pin, kedua-duanya mendedahkan fungsi teras yang sama, tetapi dengan perbezaan kecil dalam GPIO yang tersedia.

Kumpulan Pin pada Papan Dev ESP32

KumpulanPenerangan
Pin KuasaVIN (5 V), output 3.3 V, GND
Pin KawalanEN (tetapkan semula), IO0 (mod but)
Pin GPIOI/O Digital dengan pemultipleksan
Pin AnalogSaluran ADC1 dan ADC2
Pin KomunikasiSPI, I2C, UART, I2S
Pin Input SahajaGPIO34–GPIO39
Pin Dikhaskan FlashGPIO6–GPIO11

Susunan Pengepala Biasa

Tajuk Kiri

• EN, GPIO36–39, GPIO34–35

• GPIO32–33, 25–27

• VIN, GND, 3.3V

Tajuk Kanan

• GPIO0–23

• Pin pengikat but (0, 2, 5, 12, 15)

Memahami susun atur fizikal menjadikannya lebih mudah untuk mengelakkan kesilapan dan merancang pendawaian dengan cekap.

Gambaran Keseluruhan ESP32 GPIO

Figure 3. ESP32 GPIO

GPIO ESP32 adalah fleksibel terima kasih kepada Matriks I/O dalaman, yang membolehkan peranti seperti UART, SPI, I2C dan PWM dipetakan hampir di mana-mana sahaja. GPIO menyokong input/output digital dengan perintang tarik naik/bawah terbina dalam, gangguan yang dicetuskan tepi dan pensuisan yang boleh dipercayai pada kelajuan tinggi. Arus pemacu berterusan biasa ialah 12–16 mA (puncak sehingga ~20–40 mA), jadi pemacu luaran diperlukan untuk motor atau geganti.

Pin Input Sahaja

Pin ini tidak boleh memacu output dan sesuai untuk penderia dan input analog:

PinJenisPenggunaan yang Disyorkan
GPIO34Input sahajaADC1 / penderia
GPIO35Input sahajaADC1
GPIO36 (VP)Input sahajaADC1 / Penderia Dewan
GPIO39 (VN)Input sahajaADC1

Pin ESP32 Selamat untuk Digunakan dan Pin untuk Dielakkan

Figure 4. Safe ESP32 Pins to Use and Pins to Avoid

Tidak semua pin ESP32 berkelakuan sama. Sesetengahnya selamat, manakala yang lain mempengaruhi mod but atau terikat pada memori kilat dalaman.

Pin Selamat (Disyorkan untuk Semua Pengguna)

GPIONota
4, 13–19, 21–27, 32, 33Tiada kesan but, sesuai untuk kebanyakan peranti

Pin Berhati-hati (Menjejaskan Mod But)

GPIOFungsi ButElakkan Semasa But
GPIO0Mod Flash/BootKekalkan TINGGI (input) semasa but biasa
GPIO2Voltan butMestilah TINGGI
GPIO5Mod but pilihanElakkan menarik rendah
GPIO12Mod voltan kilatMesti kekal RENDAH
GPIO15Mod SPIMesti kekal RENDAH

Pin ini selamat digunakan dalam operasi biasa, tetapi komponen luaran tidak boleh menariknya ke tahap logik yang tidak sah semasa tetapan semula. Peranan but terperinci mereka dijelaskan dalam Bahagian 9.

Pin Terhad (Jangan Gunakan)

GPIOSebab
GPIO6–11Disambungkan ke memori kilat SPI

Menggunakan ini boleh membekukan atau ranap ESP32.

Pin ADC ESP32

Figure 5. ESP32 ADC Pins

ESP32 menyepadukan dua unit SAR ADC dengan tingkah laku operasi yang berbeza:

• ADC1 — Sentiasa tersedia dan disyorkan untuk semua input penderia

• ADC2 — Dikongsi dengan subsistem Wi-Fi dan menjadi tidak tersedia apabila Wi-Fi aktif

Ini adalah salah satu had utama ESP32, menjadikan ADC1 pilihan yang boleh dipercayai untuk pengukuran dalam aplikasi wayarles.

Unit ADCSaluranGPIONota
ADC1CH0–CH7GPIO32–39Pilihan terbaik untuk penderia
ADC2CH0–CH90, 2, 4, 12–15, 25–27Tidak boleh digunakan semasa Wi-Fi

Julat Voltan & Ketepatan

ADC menyokong julat input 0–1.1 V lalai, boleh dilanjutkan kepada kira-kira 3.3 V dengan pengecilan. Kedua-dua unit ADC adalah bukan linear dan mendapat manfaat daripada penentukuran. Prestasi analog boleh dipengaruhi oleh aktiviti RF dalaman, jadi menghalakan talian penderia daripada antena dan menambah penapis RC mudah boleh meningkatkan kestabilan. Untuk projek yang didayakan Wi-Fi, sentiasa letakkan penderia analog pada ADC1 untuk memastikan operasi berterusan dan bebas bunyi.

ESP32 DAC, PWM dan Pin Sentuh

ESP32 termasuk output gaya analog onboard dan penderia sentuh yang memudahkan penjanaan bentuk gelombang, peredupan, kawalan motor dan antara muka pengguna.

Gambaran Keseluruhan DAC

Figure 6. ESP32 DAC

Dua saluran DAC 8-bit mengeluarkan voltan analog sebenar:

DACGPIO
DAC1GPIO25
DAC2GPIO26

Kegunaan biasa termasuk audio ringkas, bentuk gelombang analog, pudar LED dan voltan berat sebelah. Julat keluaran biasanya 0–3.3 V.

PWM (LEDC)

Figure 7. ESP32 PWM

Modul LEDC menyediakan PWM fleksibel resolusi tinggi:

• 16 saluran

• Asas pemasa sehingga 40 MHz

• Resolusi sehingga 20-bit

• GPIO yang boleh diubah sepenuh

Digunakan untuk peredupan LED, kawalan motor, isyarat servo, nada audio dan modulasi am. Mana-mana GPIO boleh mengehoskan output PWM melalui Matriks GPIO.

Pin Penderia Sentuh

Figure 8. ESP32 Touch Sensor Pins

10 pad sentuh kapasitif ESP32 mengesan kedekatan jari dan berguna untuk butang sentuh, gelangsar dan pencetus bangun.

Pad SentuhGPIO
T0–T9GPIO4, 0, 2, 15, 13, 12, 14, 27, 33, 32

Penderia ini termasuk penapisan bunyi dan berfungsi dengan baik untuk acara bangun berkuasa rendah.

Pin Komunikasi ESP32

ESP32 termasuk set peranti komunikasi yang kaya, setiap satu mampu dihalakan ke berbilang pin melalui Matriks GPIO yang fleksibel. Ini membolehkan antara muka seperti I2C, SPI dan UART diberikan hampir di mana-mana sahaja, membolehkan susun atur papan dan kombinasi persisian yang sangat boleh disesuaikan.

I2C (Pin lalai dan tersuai)

Figure 9. ESP32 I2C Pins

ESP32 termasuk dua pengawal I2C, dengan fleksibiliti penuh ke atas pemilihan pin. Walaupun kebanyakan papan pembangunan menggunakan pin lalai, kedua-dua SDA dan SCL boleh ditugaskan semula kepada hampir mana-mana GPIO.

IsyaratGPIO lalaiNota
SDAGPIO21Boleh diubah semula sepenuhnya
SCLGPIO22Boleh diubah semula sepenuhnya

Mana-mana dua GPIO digital boleh bertindak sebagai SDA dan SCL. Menyokong kedua-dua mod standard (100 kHz), mod pantas (400 kHz) dan mod pantas tambah (1 MHz bergantung pada papan). Menyokong pull-up dalaman pada beberapa papan, tetapi perintang luaran 4.7 kΩ disyorkan untuk komunikasi yang stabil. Fleksibiliti ini menjadikan ESP32 sesuai untuk sistem yang memerlukan berbilang penderia atau penghalaan pin yang tidak konvensional.

ESP32 termasuk berbilang bas SPI, dengan HSPI dan VSPI tersedia untuk peranti pengguna. Kedua-duanya menyokong pemetaan semula melalui matriks GPIO, tetapi kebanyakan papan dan perpustakaan menggunakan konfigurasi VSPI lalai berikut, yang mengelakkan konflik dengan sambungan kilat dalaman:

Pemetaan VSPI Lalai

• SCK → GPIO18

• MISO → GPIO19

• MOSI → GPIO23

• CS → GPIO5

VSPI biasanya lebih disukai untuk paparan, kad SD dan peranti berkelajuan tinggi. Walaupun pin boleh ditukar semula, menggunakan lalai memastikan keserasian maksimum dan mengurangkan isu pemasaan tanpa mengulangi sekatan yang telah dibincangkan dalam bahagian terdahulu.

UART (Bersiri)

Figure 10. ESP32 UART Pins

ESP32 termasuk tiga pengawal UART, dengan penghalaan fleksibel yang membolehkan mana-mana pin UART bergerak ke hampir mana-mana GPIO.

UARTPin TXPin RXTujuan Utama
UART0GPIO1GPIO3Berkelip, mesej but, pembalakan bersiri
UART1GPIO10GPIO9Tersedia untuk aplikasi pengguna
UART2GPIO17GPIO16Tersedia untuk aplikasi pengguna

ESP32 Deep Sleep & RTC Pin

ESP32 termasuk subsistem Ultra-Low-Power (ULP) dan domain Jam Masa Nyata (RTC) khusus yang kekal berkuasa walaupun CPU utama dan peranti dimatikan. Seni bina ini membolehkan penggunaan kuasa yang sangat rendah, selalunya dalam julat mikroampere, menjadikan ESP32 sesuai untuk aplikasi yang dikendalikan bateri jangka panjang.

Tidur nyenyak membolehkan cip mematikan teras utama, kebanyakan jam dalaman dan radio Wi-Fi/Bluetooth, sambil masih memantau pin dan penderia terpilih melalui peranti RTC.

Figure 11. ESP32 RTC Pins

ESP32 boleh bangun daripada tidur nyenyak melalui beberapa pencetus bebas. Setiap sumber bangun beroperasi di dalam domain RTC, yang direka bentuk untuk kekal aktif dengan penggunaan kuasa yang minimum.

Jenis BangunGPIO / Nota
GPIO RTC LuaranGPIO32, GPIO33, GPIO25, GPIO26, GPIO27 — sokongan tepi atau tahap bangun
Pad Sentuh KapasitifT0–T9 — mengesan kedekatan jari atau sentuhan semasa tidur nyenyak
Pemasa BangunPemasa RTC boleh membangunkan peranti selepas selang masa yang diprogramkan
Pemproses Bersama ULP(Pilihan) Kod kuasa rendah tersuai boleh dijalankan untuk menyemak penderia sebelum membangunkan CPU utama

Pin ini tergolong dalam domain RTC dan kekal aktif walaupun CPU dan GPIO biasa dimatikan. Mereka menyokong bangun melalui tepi naik/turun atau pengesanan tahap mudah. Biasanya digunakan untuk bangun semasa gerakan, suis magnet dan pencetus kuasa rendah.

Fungsi But ESP32, Tali dan Pin EN

Figure 12.ESP32 Strapping Pins

ESP32 menggunakan beberapa pin pengikat yang menentukan konfigurasi sistem utama semasa tetapan semula atau dihidupkan. Pin ini disampelkan hanya semasa but dan kemudian kembali kepada fungsi GPIO biasa. Memastikan ia tidak didorong ke tahap tidak sah semasa tetapan semula berguna untuk tingkah laku permulaan yang konsisten.

Jadual Pin Pengikat

PinPeranan butKeadaan yang Diperlukan di Boot
GPIO0Memilih mod pemuat but / kilatLOW = masukkan mod kilat; TINGGI = permulaan biasa
GPIO2Mentakrifkan tahap voltan but dalamanMesti kekal TINGGI
GPIO5Konfigurasi but SPIMesti kekal TINGGI
GPIO12Memilih voltan kilat (3.3 V / 1.8 V)Mesti kekal RENDAH untuk denyar 3.3 V
GPIO15Menetapkan mod komunikasi SPI semasa butMesti kekal RENDAH

Bahagian ini menyediakan rujukan berwibawa untuk tingkah laku mengikat. Bahagian terdahulu hanya meringkaskan kesan praktikal; gunakan jadual ini apabila menetapkan pin pada PCB tersuai atau menyepadukan butang dan penderia.

Pin EN (Dayakan / Tetapkan Semula)

Pin EN (Dayakan) bertindak sebagai input tetapan semula induk untuk ESP32.

Tingkah Laku Pin EN:

• Menarik EN LOW menetapkan semula cip dengan segera.

• Melepaskannya kembali kepada TINGGI menghidupkan litar dalaman dan memulakan semula urutan but.

• Pada papan pembangunan (cth, ESP32-DevKitC, NodeMCU-ESP32), EN terikat pada antara muka USB-ke-siri untuk membolehkan tetapan semula automatik semasa berkelip.

Pin Kuasa ESP32

Figure 13. ESP32 Power Pins

ESP32 sensitif terhadap kualiti kuasa kerana radio Wi-Fi dan Bluetoothnya menarik denyutan arus pendek amplitud tinggi. Penghantaran kuasa yang stabil memastikan but yang boleh dipercayai, tetapan semula brownout yang dikurangkan dan prestasi wayarles yang konsisten.

Ringkasan Pin Kuasa

PinVoltanPenggunaan
VINInput 5 VMemberi makan pengawal selia onboard (biasanya AMS1117 atau ME6211) untuk menjana 3.3 V
3V3Keluaran 3.3 VOutput terkawal daripada LDO onboard; digunakan untuk menggerakkan logik dan penderia arus rendah luaran
GNDRujukan elektrik dan laluan pulangan untuk semua subsistem

Contoh Pin & Pendawaian ESP32 yang Disyorkan

Memilih pin yang betul pada ESP32 diperlukan untuk operasi yang stabil, penghalaan isyarat yang bersih dan mengelakkan konflik dengan sambungan but-strapping atau denyar dalaman. Cadangan berikut menyerlahkan pin yang paling boleh dipercayai dan bebas konflik untuk fungsi biasa.

Pilihan Pin

FungsiPin TerbaikNota
I2C21 (SDA), 22 (SCL)Pasangan yang diuji perkakasan lalai; berfungsi di kebanyakan papan.
SPI18 (SCK), 19 (MISO), 23 (MOSI), 5 (CS)Pin ini dipetakan dengan bersih kepada VSPI dan mengelakkan pin yang disambungkan denyar.
UART16 (RX), 17 (TX)Pin UART2 khusus, selamat untuk but dan penyahpepijatan.
PWM (LEDC)4, 16–19, 21–27, 32–33Julat fleksibiliti tinggi; PWM boleh dihalakan ke hampir mana-mana GPIO.
ADC32–39 (ADC1)Saluran ADC1 kekal boleh digunakan walaupun Wi-Fi aktif.

Kesimpulannya

Menguasai pinout ESP32 mengalih keluar tekaan dan menghalang banyak masalah yang muncul dalam binaan sebenar, daripada bacaan ADC yang bising kepada gelung but yang tidak berkesudahan. Dengan memahami pin selamat, tingkah laku mengikat, integriti kuasa dan penghalaan tidur nyenyak, anda boleh mereka bentuk litar yang kekal stabil, boleh diramal dan sedia tanpa wayar. Gunakan peta pin dan garis panduan di atas sebagai asas anda untuk projek ESP32 tanpa masalah.

Soalan Lazim [Soalan Lazim]

Bagaimanakah cara saya mengkonfigurasi PlatformIO untuk Papan Pelarian Freenove ESP32-S3?

Gunakan tetapan modul pembangun ESP32-S3 standard. Dalam platformio.ini anda, tambahkan:

[env:esp32s3]

platform = espressif32

papan = esp32-s3-devkitc-1

rangka kerja = arduino

Ini sepadan dengan pinout Freenove, membolehkan penyusunan dan muat naik biasa melalui USB.

Berapa banyak peranti yang boleh dijalankan oleh ESP32 pada masa yang sama?

Oleh kerana Matriks GPIO, ESP32 boleh menjalankan berbilang fungsi I²C, SPI, UART, PWM dan ADC secara serentak, selagi anda mengelakkan pin terhad dan kekal dalam had CPU dan masa. Kesesakan utama ialah ADC2 semasa Wi-Fi dan kualiti bekalan kuasa, bukan kiraan pin.

Mengapakah ESP32 saya but semula apabila menyambungkan penderia atau modul?

Tetapan semula yang tidak dijangka biasanya datang daripada penurunan voltan yang disebabkan oleh letupan Wi-Fi, motor atau bekalan yang tidak dikawal dengan baik. Menggunakan sumber 5 V 1 A atau lebih tinggi, menambah kapasitor pukal 10–100 μF dan mengasingkan beban bising menghalang pemadaman listrik.

Bolehkah saya menggunakan pin 3.3 V ESP32 untuk menggerakkan modul luaran?

Ya, tetapi hanya untuk peranti arus rendah (biasanya di bawah 300–500 mA, bergantung pada LDO onboard). Peranti cabutan tinggi seperti motor, servo dan jalur LED besar mesti menggunakan bekalan kuasa yang berasingan untuk mengelakkan tetapan semula dan terlalu panas.

Bagaimanakah cara saya memilih pin ESP32 terbaik apabila menggunakan berbilang persisian?

Utamakan pin bukan tali, elakkan GPIO6–11, letakkan penderia analog pada ADC1 dan gunakan pin VSPI/I²C/UART lalai apabila boleh. Ini mengurangkan konflik dan memastikan semua peranti boleh beroperasi bersama tanpa isu pemetaan semula.