Diese Pinout -Handbuch zu ESP32 enthält folgende Inhalte:
1: Einführung in ESP32
2: ESP32 GPIO -Stifte
3: ESP32 ADC -Stifte
4: DAC -Stifte
5: PWM -Stifte
6: SPI -Stifte in ESP32
7: I2C -Stifte
8: I2s Pins
9: UART
10: Kapazitive Touchstifte
11: ESP32 -Getriebstifte
12: Stifte hoch beim Stiefel
13: Aktivieren Sie (en) Pin
14: ESP32 Power Pins
15: ESP32 Hall Effect Sensor
Bevor wir hier voranschreiten, haben wir eine kurze Einführung in das ESP32 IoT -Vorstand zusammengefasst.
1: Einführung in ESP32
1.1: ESP32 Pinout
Mehrere Varianten von ESP32 sind auf dem Markt erhältlich. Heute werden wir die detaillierte Pinout der 30-poligen Variante abdecken, die mit dem ESP32-W-Room-32-Mikrocontroller geliefert wird, manchmal auch als WROOM32 bezeichnet wird.
Insgesamt 48 Pins sind in ESP32 -Chips erhältlich, unter denen 30 Pins dem Benutzer ausgesetzt sind, während andere in den Mikrocontroller integriert sind. Einige Boards enthalten auch sechs zusätzliche SPI -Flash -integrierte Stifte, die den Gesamtstift auf 36 zusammenfassen.
1.2: ESP32 30 Pin Version Board
Das folgende Bild repräsentiert die detaillierte Pinout der ESP32 30 -Pin -Variante, die alle Peripheriegeräte enthält, die wir einzeln detailliert diskutieren.
Einige Hauptperipheriegeräte in ESP32 sind:
*ESP32 CHIP enthält insgesamt 48 Pins, von denen nur 30 Stifte für die externe Schnittstelle verfügbar sind (in einigen Boards 36, die 6 zusätzliche SPI -Stifte enthalten) verbleibende 18 Stifte für Kommunikationszwecke in den Chip integriert sind.
1.3: ESP32 36 Pin Version Board
Hier ist ein Bild eines ESP32 -Boards mit insgesamt 36 Pins mit.
1.4: Unterschied zwischen ESP32 30 Pin Version und ESP32 36 Pin Version
Sowohl ESP32 -Board teilen die gleiche Spezifikation Die einzige Hauptdifferenz hier sind 6 zusätzliche Stifte, die in der ESP32 -Platine (36 Pins) ausgesetzt sind, die SPI -Flash -Stift sind, und zweitens wird der GPIO 0 durch GND -Pin in der ESP32 -Platine (30 Pins) ersetzt, was dazu führt fehlen von Berührung 1 Und ADC2 CH1 Stift.
2: ESP32 GPIO -Stifte
Wie bereits erwähnt, hat ESP32 insgesamt 48 Pins, von denen nur 30 Pins für Benutzer zugänglich sind. Jede dieser 30 Allzweckeingangsausgangsstifte hat eine bestimmte Funktion und kann mit einem bestimmten Register konfiguriert werden. Es gibt verschiedene GPIO -Stifte wie UART, PWM, ADC und DAC.
Von diesen 30 Pins sind einige Strom, während einige sowohl als Eingang als auch als Ausgabe konfiguriert werden können, während bestimmte Stifte nur eingibt.
2.1: Eingangs-/Ausgangsstifte
Fast alle GPIO -Stifte können als Eingang und Ausgabe mit Ausnahme der 6 seriellen peripheren Schnittstelle (SPI) -Flitzerstifte konfiguriert werden, die nicht für Eingangs- oder Ausgangszwecke konfiguriert werden können. Diese 6 SPI -Stifte sind auf der 36 Pins -Versionsplatine erhältlich.
Die unten angegebene Tabelle erläutert den Status von ESP32 -GPIO -Stiften, die als Eingang und Ausgabe verwendet werden können:
Hier OK bedeutet, dass der entsprechende Pin als Eingang oder Ausgang verwendet werden kann.
GPIO PIN | EINGANG | AUSGANG | Beschreibung |
Gpio 0 | Nach oben gezogen | OK | PWM -Ausgabe beim Start |
GPIO 1 | TX Pin | OK | Ausgabe -Debugug am Boot |
GPIO 2 | OK | OK | An Bord geführt |
GPIO 3 | OK | RX PIN | Hoch beim Kofferraum |
GPIO 4 | OK | OK | - |
GPIO 5 | OK | OK | PWM -Ausgabe beim Start |
GPIO 6 | - | - | SPI -Blitznadel |
GPIO 7 | - | - | SPI -Blitznadel |
GPIO 8 | - | - | SPI -Blitznadel |
GPIO 9 | - | - | SPI -Blitznadel |
GPIO 10 | - | - | SPI -Blitznadel |
GPIO 11 | - | - | SPI -Blitznadel |
GPIO 12 | OK | OK | Boot Fail bei High Pull |
GPIO 13 | OK | OK | - |
GPIO 14 | OK | OK | PWM -Ausgabe beim Start |
GPIO 15 | OK | OK | PWM -Ausgabe beim Start |
GPIO 16 | OK | OK | - |
GPIO 17 | OK | OK | - |
GPIO 18 | OK | OK | - |
GPIO 19 | OK | OK | - |
GPIO 21 | OK | OK | - |
GPIO 22 | OK | OK | - |
GPIO 23 | OK | OK | - |
GPIO 25 | OK | OK | - |
GPIO 26 | OK | OK | - |
GPIO 27 | OK | OK | - |
GPIO 32 | OK | OK | - |
GPIO 33 | OK | OK | - |
GPIO 34 | OK | Nur eingeben | |
GPIO 35 | OK | Nur eingeben | |
GPIO 36 | OK | Nur eingeben | |
GPIO 39 | OK | Nur eingeben |
2.2: Eingabe nur Stifte
GPIO -Stifte 34 bis 39 können nicht als Ausgabe konfiguriert werden, da diese nur für Eingabezwecke gilt. Dies liegt an dem mangelnden internen Zieh- oder Pulldown-Widerstand. Daher kann nur als Eingang verwendet werden.
Außerdem werden GPIO 36 (VP) und GPIO 39 (VN) für ultra-niedrige Rauschvorverstärker in ESP32 ADC verwendet.
Zusammenfassend lässt sich sagen, dass die folgenden Eingabe nur Stifte in ESP32:
2.3: Stifte unterbrechen
Alle GPIO -Stifte in ESP32 können externe Interrupts erfolgen. Dies hilft, Veränderungen bei einem bestimmten Interrupt zu überwachen, anstatt kontinuierlich zu überwachen.
2.4: RTC -Stifte
ESP32 hat auch einige RTC -GPIO -Stifte. Diese RTC -Stifte ermöglichen es ESP32, im tiefen Schlafmodus zu arbeiten. Wenn sich ESP32 im tiefen Schlafmodus befindet, während ein Co-Prozessor mit Ultra-Low Power (ULP) ausgeführt wird.
Diese RTC -GPIO -Stifte können als externe Anregungsquelle dienen, um ESP32 aus dem tiefen Schlaf zu einem bestimmten Zeitpunkt oder zu einem bestimmten Zeitpunkt aufzuwachen. Die RTC -GPIO -Stifte umfassen:
3: ESP32 ADC -Stifte
Das ESP32-Board verfügt über zwei integrierte 12-Bit. Die ESP32 -Board -ADCs unterstützen 18 verschiedene analoge Eingangskanäle.
Aber dies ist hier nicht der Fall; Diese analogen Kanäle sind in zwei Kategorien Kanal 1 und Kanal 2 unterteilt. Beide Kanäle haben einige Stifte, die für ADC -Eingaben nicht immer verfügbar sind. Mal sehen, was diese ADC -Stifte zusammen mit anderen sind.
3.1: ESP32 ADC Pinout
Wie bereits erwähnt, verfügt das ESP32 -Vorstand über 18 ADC -Kanäle. Von 18 nur 15 sind im Devkit V1 DOIT -Board mit insgesamt 30 GPIOs erhältlich.
Schauen Sie sich Ihr Board an und identifizieren Sie die ADC -Stifte, während wir sie im Bild unten hervorheben:
3.2: Kanal 1 ADC Pin
Im Folgenden finden Sie die angegebene PIN -Zuordnung von ESP32 Devkit Doit Board. ADC1 in ESP32 verfügt über 8 Kanäle. Aber ich garantiere, dass dies immer noch mehr als genug ist.
ADC1 | GPIO PIN ESP32 |
CH0 | 36 |
CH1 | 37* (Na) |
CH2 | 38* (Na) |
CH3 | 39 |
CH4 | 32 |
CH5 | 33 |
CH6 | 34 |
CH7 | 35 |
*Diese Stifte sind für die externe Schnittstelle nicht verfügbar; Diese sind in ESP32 -Chips integriert.
Das folgende Bild zeigen ESP32 ADC1 -Kanäle:
3.3: Kanal 2 ADC PIN
Devkit Doit Boards haben 10 analoge Kanäle in ADC2. Obwohl ADC2 über 10 analoge Kanäle zum Lesen analogen Daten verfügt, sind diese Kanäle nicht immer verfügbar, um sie zu verwenden. ADC2 wird an Bord -WLAN -Treibern geteilt, was bedeutet. Lösung für dieses Problem besteht darin, ADC2 nur zu verwenden, wenn der Wi-Fi-Treiber ausgeschaltet ist.
ADC2 | GPIO PIN ESP32 |
CH0 | 4 |
CH1 | 0 (NA in 30 Pin Version ESP32-Devkit Doit) |
CH2 | 2 |
CH3 | 15 |
CH4 | 13 |
CH5 | 12 |
CH6 | 14 |
CH7 | 27 |
CH8 | 25 |
CH9 | 26 |
Das folgende Bild zeigt die PIN -Zuordnung des ADC2 -Kanals.
3.4: So verwenden Sie ESP32 ADC
ESP32 ADC funktioniert auf ähnliche Weise wie Arduino Nur Unterschied hier ist, dass es 12-Bit-ADC hat. Die ESP32 -Karte ordnet also die analogen Spannungswerte im Bereich von 0 bis 4095 in digitalen diskreten Werten ab.
Notiz: ESP32 ADC ist standardmäßig auf 12 Bit festgelegt. Es ist jedoch möglich, es in 0-Bit, 10-Bit und 11-Bit zu konfigurieren. Der 12-Bit-Standard-ADC kann den Wert messen 2^12 = 4096 und die analoge Spannung reicht von 0V bis 3.3v.
3.5: ADC -Einschränkung auf ESP32
Hier sind einige Einschränkungen von ESP32 ADC:
Das Nichtlinearitätsverhalten von ESP32 ist auf dem Serienmonitor von Arduino IDE zu sehen.
4: DAC -Stifte
ESP32 verfügt über zwei an Bord 8-Bit DAC (Digital-Analog-Wandler). Mit ESP32 DAC -Stiften kann jedes digitale Signal in Analog umgewandelt werden. DAC -PINS -Anwendung umfassen Spannung und PWM -Steuerung.
Im Folgenden sind die beiden DAC -Stifte im ESP32 -Board aufgeführt.
5: PWM -Stifte
Die ESP32 -Karte enthält 16 PWM -Kanäle (Independent Impuls Width Modulation), mit denen verschiedene PWM -Signale ausgegeben werden können. Fast alle GPIOs können ein PWM -Signal erzeugen, aber der Eingang nur Stifte 34,35,36,39 kann nicht als PWM -Stifte verwendet werden, da sie kein Signal ausgeben können.
Notiz: In 36 Pin ESP32, in Bord 6 SPI Flash Integrated Pins (GPIO 6, 7, 8, 9, 10, 11) kann nicht als PWM verwendet werden.
Lesen Sie hier eine vollständige Anfängerhandbuch zur Kontrolle von ESP32 -PWM -Pins mit Arduino IDE.
6: SPI -Stifte in ESP32
ESP32 hat vier SPI -Peripheriegeräte in seinem Mikrocontroller integriert:
Die meisten ESP32 -Boards sind mit vorgefertigten SPI -Pins für SPI2 und SPI3 ausgestattet. Wenn wir jedoch nicht zugewiesen sind, können wir immer SPI -Pins im Code zuweisen. Im Folgenden finden Sie die SPI -Stifte, die in den meisten Vorschriften der ESP32 vorhanden sind, die vorgeschrieben sind:
SPI -Schnittstelle | Mosi | Miso | Sclk | CS |
VSPI | GPIO 23 | GPIO 19 | GPIO 18 | GPIO 5 |
Hspi | GPIO 13 | GPIO 12 | GPIO 14 | GPIO 15 |
Oben erwähnte SPI -Stifte können je nach Boardtyp variieren. Jetzt schreiben wir einen Code, um ESP32 -SPI -Pins mit Arduino IDE zu überprüfen.
Ein vollständiges Tutorial zur seriellen peripheren Schnittstelle finden Sie hier.
7: I2C -Stifte
Das ESP32 -Board verfügt über einen einzelnen I2C -Bus, der bis zu 120 I2C -Geräte unterstützt. Standardmäßig sind zwei SPI -Stifte für SDA und SCL bei GPIO 21 bzw. 22 definiert. Verwenden Sie jedoch den Befehl Kabel.Beginnen Sie (SDA, SCL) Wir können jeden GPIO als i2C -Schnittstelle konfigurieren.
Nach zwei GPIO -Stiften sind standardmäßig für I2C eingestellt:
8: I2s Pins
I2S (Inter-IC-Sound) ist ein synchrones Kommunikationsprotokoll, das Audiosignale zwischen zwei digitalen Audiogeräten seriell überträgt.
ESP32 verfügt über zwei I2S -Peripheriegeräte, von denen jedes im Halb -Duplex -Kommunikationsmodus arbeitet. Wir können sie jedoch auch kombinieren, um im vollständigen Duplex -Modus zu arbeiten.
Normalerweise werden die beiden DAC -Stifte in ESP32 für die I2S -Audiokommunikation verwendet. Im Folgenden finden Sie die I2S -Stifte in ESP32:
Für die I2S -Stifte für Seriendaten (SD) können wir jeden GPIO -PIN konfigurieren.
9: UART
Standardmäßig hat ESP32 drei UART -Schnittstellen, die UART0, UART1 und UART2 sind. Sowohl UART0 als auch UART2 sind extern verwendbar, aber der UART1 ist für externe Schnittstellen und Kommunikation nicht verfügbar, da er intern mit integriertem SPI -Flash -Speicher verbunden ist.
Notiz: ESP32 -Chip verfügt über eine Multiplexierungsfunktion.
Im Folgenden finden Sie die UART -Stifte von ESP32:
Uart Bus | Rx | Tx | Beschreibung |
UART0 | GPIO 3 | GPIO 1 | Kann verwendet, aber nicht empfohlen werden, da intern mit USB-zu-serieller Konverter verbunden ist |
UART1 | GPIO 9 | GPIO 10 | Verwenden Sie nicht mit SPI Internal ESP32 Flash -Speicher verbunden |
UART2 | GPIO 16 | GPIO 17 | Gebrauchen |
10: Kapazitive Touchstifte
ESP32 verfügt. Mit diesen Stiften kann jede Änderung der elektrischen Ladung erkannt werden. Diese Stifte wirken als Touchpad wie Sinneingabe eines menschlichen Fingers oder einen anderen zu verursachten Touch -Interrupt.
Mit diesen Stiften können wir auch eine externe Wakeup -Quelle für ESP32 aus dem Deep Sleep Mode entwerfen.
Berührungsstifte enthalten:
Im Folgenden finden Sie die Berührungssensorstifte in ESP32 -Board:
Touch_1 Pin fehlt in dieser Version von ESP32 (30 Pin) Board. Touch_1 Pin ist um (Gpio0) die im 36-pin ESP32 vorhanden ist.
Hier ist ein Tutorial über ESP32 -Kapazitiven -Touch -Sensor mit Arduino IDE.
11: ESP32 -Getriebstifte
ESP32 verfügt. In den meisten Boards mit dem eingebauten USB-Serial müssen wir uns keine Sorgen um diese Pins machen, da das Board selbst ESP32 in den rechten Modus entweder blinkt.
Falls diese Stifte verwendet werden, kann man auf Probleme beim Hochladen neuer Code, Flashing Firmware oder beim Zurücksetzen des ESP32 -Boards auftreten.
Im Folgenden finden Sie die ESP32 -Racking -Stifte:
12: Stifte hoch beim Stiefel
Einige GPIO -Stifte zeigen ein unerwartetes Verhalten, wenn Ausgänge mit diesen Stiften verbunden sind, da diese Stifte einen hohen Zustand zeigen oder ein PWM -Signal erzeugen.
Diese Stifte sind:
13: Aktivieren Sie (en) Pin
Dieser Pin wird verwendet, um das ESP32 -Board zu aktivieren. Mit diesem können wir den ESP32 -Spannungsregler steuern. Dieser Pin ermöglicht den Chip, wenn er hoch gezogen wird und wenn er niedrig gezogen wird, arbeitet ESP32 bei minimaler Leistung.
Durch Anschließen des EN (aktivieren) Pin mit GND die 3.3V an der Bord -Spannungsregulator deaktiviert diese Bedeutung. Wir können bei Bedarf ESP32 mit einem externen Drücken neu starten.
14: ESP32 Power Pins
ESP32 verfügt über mehrere Stromeingangsquellen. Hauptsächlich können zwei Stifte zum Antrieb von ESP32 verwendet werden, die den Vin (VIN) -Bin und den 3v3 (3) umfassen.3V) Pin. Die Hauptquelle für die Stromversorgung von ESP32 ist die Verwendung des USB -Kabels. Die beiden anderen Quellen erforderten eine externe regulierte Versorgung.
Der ESP32 hat ein an Bord Spannungsregler von Ausgang 3.3V, der einen Eingang von zwei Quellen USB und den VN -Stift danach nimmt, wandelt es die Eingangsspannung (5V) auf 3 um.3V für ESP32 arbeiten.
Im Folgenden finden Sie die drei Stromquellen für ESP32:
Notiz: 3V3 -Pin von ESP32 ist nicht an den Spannungsregler an der Bordes angeschlossen. Es wird nicht empfohlen, dies für den Leistungseingang zu verwenden, da eine geringfügige Erhöhung der Spannung zu einem stärkeren Stromfluss vom Ausgangsanschluss des LDO -Reglers (AMS1117) Eingabe, was zu einer dauerhaften Beschädigung des ESP32 -Spannungsreglers führt.
Wenn Sie jedoch konstant 3 haben 3.3V -Versorgung dann kann es verwendet werden.
Zweitens geben Sie den VN -Pin nicht mehr als 9 V, da ESP32 nur 3 benötigt.3V für die Arbeit; Alle verbleibenden Spannungen werden als Wärme abgeleitet.
Eine detailliertere Anleitung zu ESP32 -Stromquellen und Spannungsanforderungen finden Sie in diesem Tutorial, wie Sie ESP32 betreiben können.
15: ESP32 Hall Effect Sensor
ESP32 verfügt über einen eingebauten Hall-Effekt.
Hier finden Sie ein Tutorial zur Verwendung von ESP32 -eingebauten Hall -Effekt -Sensor und drucken Sie die Lesedaten über den seriellen Monitor.
Abschluss
Beginnend mit ESP32 war es noch nie einfach, aber die Verwendung dieses Artikels zu ESP32 Pinout kann jeder innerhalb weniger Minuten mit einem IoT -basierten Board beginnen. Hier deckt dieser Artikel alle Details zu ESP32 Pinout ab. Jeder ESP32 -Pin wird ausführlich detailliert besprochen. Weitere Tutorials zu bestimmten Pins finden Sie in anderen Tutorials auf ESP32 -Board.