Belegungsplan ESP32

Quelle und weitere Typen: Technical Documents | Espressif Systems

Bei der Vielzahl an unterschiedlichen Kit‘s (Board mit Modul), sollte der Lieferant oder Hersteller, die notwendigen Datenblätter und Pin-Belegungspläne bereit stellen. IO-Pegel liegt bei 3,3Volt


Welchen GPIO Pin beim ESP32 kann ich bedenkenlos nehmen?
Der Belegungsplan gibt schon eine gute Orientierung welcher Pin für seine Lösung in Frage kommt. Es kommt aber auch je nachdem darauf an, welcher Hersteller von Entwicklungsboards, welche der 34 physischen GPIO-Pins des ESP32 Chips intern verwendet hat und welche nach außen geführt wurden.

Somit hier eine Liste wie Reservierte, teilbelegte und zu bevorzugende GPIO-Pin´s sein könnten:
Quelle: docs.espressif

Punkt 1:
Strapping pin: GPIO 0, GPIO 2, GPIO 5, GPIO 12 (MTDI) und GPIO 15 (MTDO) sind Strapping pins. Weitere Informationen entnehmen Sie bitte dem ESP32-Datenblatt.

Punkt 2:
SPI0/1: GPIO 6-11 und GPIO 16-17 sind in der Regel mit dem auf dem Modul integrierten SPI-Flash und PSRAM verbunden und sollten daher nicht für andere Zwecke verwendet werden.

Punkt 3:
JTAG: GPIO 12-15 werden normalerweise für das Inline-Debuggen verwendet.

Punkt 4:
GPI: GPIO 34-39 kann nur als Eingabemodus eingestellt werden und verfügt nicht über softwarefähige Pullup- oder Pulldown-Funktionen.

Punkt 5:
TXD & RXD werden in der Regel zum Flashen und Debuggen verwendet.

Punkt 6:
ADC2: ADC2-Pins können nicht verwendet werden, wenn Wi-Fi verwendet wird. Wenn Sie also Probleme haben, den Wert von einem ADC2-GPIO zu erhalten, während Sie Wi-Fi verwenden, können Sie stattdessen einen ADC1-GPIO verwenden, der Ihr Problem lösen sollte. Weitere Informationen finden Sie unter Hardware-Einschränkungen des ADC-Continuous-Modus und Hardware-Einschränkungen des ADC-Oneshot-Modus.

Punkt 7:
Bitte verwenden Sie nicht den Interrupt von GPIO 36 und GPIO 39, wenn Sie ADC oder Wi-Fi und Bluetooth mit aktiviertem Schlafmodus verwenden. Eine detaillierte Beschreibung des Problems finden Sie unter ESP32 ECO und Workarounds for Bugs > Abschnitt 3.11


Weitere ESP32 Varianten mit Einschränkungen:

Nicht alle der angebotenen GPIO-Pin können bedenken los verwendet werden, folgende Einschränkungen sollten beim entwickeln bekannt sein:

Der ESP32-Chip verfügt über 34 physikalische GPIO-Pins (GPIO0 bis GPIO19, GPIO21 bis GPIO23, GPIO25 bis GPIO27 und GPIO32 bis GPIO39)
GPIO-Pin Einschränkungen beim ESP32

Der ESP32-S2-Chip verfügt über 43 physikalische GPIO-Pins (GPIO0 bis GPIO21 und GPIO26 bis GPIO46)
GPIO-Pin Einschränkungen beim ESP32-S2

Der ESP32-S3-Chip verfügt über 45 physikalische GPIO-Pins (GPIO0 bis GPIO21 und GPIO26 bis GPIO48)
GPIO-Pin Einschränkungen beim ESP32-S3

Der ESP32-C2-Chip verfügt über 21 physikalische GPIO-Pins (GPIO0 bis GPIO20)
GPIO-Pin Einschränkungen beim ESP32-C2

Der ESP32-C3-Chip verfügt über 22 physikalische GPIO-Pins (GPIO0 bis GPIO21)
GPIO-Pin Einschränkungen beim ESP32-C3

Der ESP32-C6-Chip verfügt über 31 physikalische GPIO-Pins (GPIO0 bis GPIO30)
GPIO-Pin Einschränkungen beim ESP32-C6

Der ESP32-H2-Chip verfügt über 28 physikalische GPIO-Pins (GPIO0 bis GPIO27)
GPIO-Pin Einschränkungen beim ESP32-H2

Weitere Orientierungshilfen zu den vielen ESP32 Varianten und die Einbindung in die Entwicklungsumgebung Arduino IDE 2.x wird auf dieser Seite und in dem Video gezeigt:
https://prilchen.de/orientierungshilfe-beim-kauf-von-esp32-modulen


Für Arduino IDE 1.x:
Wie die Entwicklungsumgebung Arduino IDE 1.x vorbereitet wird, um mit den Boards arbeiten zu können, ist hier beschreiben:
https://prilchen.de/auswahl-der-moeglichen-endwicklungsboards-in-der-arduino-ide-erweitern/

Diagnose- und Debugtool:
WLAN- und I2C-Scanner für den ESP8266/ESP32

, ,