Der ESP32-Mikrocontroller besitzt 34 universelle Anschlüsse (Pins) für digitale und analoge Signale. Sie werden daher als GPIOs (General Purpose Input / Output) bezeichnet. Der Verwendungszweck (purpose) kann bei den meisten Pins über spezielle Programmbefehle definiert werden. So wird auf diese Weise z. B. festgelegt, ob ein Pin als digitaler Ein- oder Ausgang verwendet werden soll. Digitale Signale können nur die beiden Zustände „Ein“ (Logisch „1“ | HIGH | 3,3 V) oder „Aus“ (Logisch „0“, LOW, 0 V) annehmen. Analoge Signale umfassen beliebige Spannungswerte zwischen 0 und 3,3 V. Wird beispielsweise ein Temperaturfühler mit linearer Temperatur-/Spannungskennlinie an einen analogen Eingang angeschlossen, wird der aktuelle Spannungswert über den integrierten Analog-Digital-Converter (ADC) des ESP32 in einen digitalen Zahlenwert gewandelt. Je mehr Bits für diese Wandlung zur Verfügung stehen, desto genauer kann die temperaturabhängige Spannungsänderung erfasst werden. Über eine im Programm hinterlegte mathematische Funktion, lässt sich auf diese Weise die aktuelle Temperatur in Abhängigkeit der analogen Spannung berechnen.


Da die Anschlüsse des ESP32 sehr vielfältige Funktionen haben, stellt der Hersteller des Mikrocontroller-Boards dem Nutzer eine Pinout-Tabelle zur Verfügung. Aus dieser Tabelle kann ein übersichtliches Pin-Layout abgeleitet werden, das in der Abbildung 1 zu sehen ist. Die Grafik zeigt nur das für die T1-Projekte relevante Pin-Layout. Die detaillierte Pinout-Tabelle kann dem Hersteller-Manual entnommen werden.

ESP-Pinbelegung und Features FST (Stand 10.11.22).pdf


Pin-Layout des ESP32

Abbildung 1: Pin-Layout des ESP32 (BBS 2 Wolfsburg, G. Klähn, Stand: 06.01.22)


Achtung:

Die Eingänge ADC10 bis ADC19, über die analoge Signale in digitale gewandelt werden können (ADC → Analog Digital Converter), sind bei Verwendung der WLAN-Funktion nicht nutzbar!

Der Pin oberhalb des 5V-Anschlusses (G11, FLASH CMD) ist bei einigen ESP32-Boards fälschlicherweise mit GND (GROUND = Massepotenzial) bezeichnet. Legt man an diesen Pin ein „0“-Potenzial (0 V) an, kann der ESP32 nicht booten bzw. starten, weil dieser Anschluss ebenfalls für die Aktualisierung des internen Flash-Speichers genutzt wird, in dem die anwendungsspezifische Firmware des ESP32 abgelegt ist. Das „0“-Potenzial suggeriert dem Mikrocontroller, dass die Firmware überschrieben werden soll, worauf dieser die meisten seiner Funktionen und internen Bausteine deaktiviert.

Die Aktualisierung des Flash-Speichers erfolgt in Form einer seriellen Datenübertragung ( SPI → Serial Peripheral Interface). Für diese stehen die Pins FLASH D0 (GPIO7, SD0), FLASH D1 (GPIO8, SD1), FLASH D2 (GPIO9, SD2), FLASH D3 (GPIO10, SD3) sowie FLASH CMD (GPIO11) und FLASH SCK (GPIO6, CLK) zur Verfügung.  

Die folgende Tabelle ist ein sehr kleiner Auszug der Pinout-Tabelle des ESP32 und zeigt lediglich, welche GPIOs als Ein- oder Ausgänge verwendet werden dürfen und was dabei zu beachten ist.


Alles, was grün markiert ist, kann als Ein-/Ausgang verwendet werden.
Alles, was gelb markiert ist, sollte man mit Vorsicht benutzen, da beim Booten/Starten des ESPs unvorhergesehene Signale geschickt werden. Somit könnte es zu ungewollten HIGH-/LOW-Zuständen kommen!
Alles, was rot markiert ist, ist für einen Ein-/Ausgang nicht geeignet

Die in den verschiedenen Projekten des Basic-Bereiches verwendeten Pins werden mit Links zu den Projekten gekennzeichnet.

PIN
Eingang Ausgang Anmerkungen Basic-Projekt
GPIO_0 / 
EN (Reset)
Pulled up OK - ext. Pull-up-Widerstand 
- Durch Verbinden des GPIO_0 / EN Pins mit Masse (GND) führt der ESP32 einen Neustart aus
 T1-RGB Tuning
GPIO_1 TX pin OK    
GPIO_2 OK OK    T1-SoundT1-SensorsT1-RGB Tuning
GPIO_3 OK RX pin    
GPIO_4 OK OK    T1-Electric - Lighting, T1-Sound
GPIO_5 OK OK    T1-Sensors
GPIO_6 x x Verbunden mit dem integrierten SPI-Flash  
GPIO_7 x x Verbunden mit dem integrierten SPI-Flash  
GPIO_8 x x Verbunden mit dem integrierten SPI-Flash
 
GPIO_9 x x Verbunden mit dem integrierten SPI-Flash  
GPIO_10 x x Verbunden mit dem integrierten SPI-Flash  
GPIO_11 x x Verbunden mit dem integrierten SPI-Flash  
GPIO_12 OK OK Boot-Fehler, wenn beim Starten ein High anliegt  T1-Smart Device
GPIO_13 OK OK    T1-MonitoringT1-Smart Device
GPIO_14 OK OK    T1-RemoteT1-Smart Device
GPIO_15 OK OK    T1-SensorsT1-RGB Tuning
GPIO_16 OK OK    T1-Electric - Lighting
GPIO_17 OK OK    T1-Electric - Lighting
GPIO_18 OK OK    T1-Remote
GPIO_19 OK OK    T1-Remote
GPIO_21 OK OK    T1-Remote
GPIO_22 OK OK    T1-Remote
GPIO_23 OK OK    T1-MonitoringT1-Remote
GPIO_25 OK OK    T1-Monitoring
GPIO_26 OK OK    T1-Remote
GPIO_27 OK OK    T1-Remote
GPIO_32 OK OK    T1-Monitoring, T1-IOT, T1-RGB Tuning
GPIO_33 OK OK    
GPIO_34 OK   Nur Eingang  T1-Remote
GPIO_35 OK   Nur Eingang  T1-Electric - Lighting
GPIO_36 OK   Nur Eingang  
GPIO_39 OK   Nur Eingang
 
5V
Power mit 5 V Spannung  T1-Electric - LightingT1-SensorsT1-MonitoringT1-IOTT1-Remote, T1-Smart DeviceT1-RGB Tuning
3,3V
Power mit 3,3 V Spannung  T1-Electric - LightingT1-SoundT1-Monitoring, T1-Remote
GND
(Ground) Masse  Alle Projekte
Zuletzt geändert: Donnerstag, 10. November 2022, 14:34