Mit „ESP32“ wird eigentlich der reine ESP32-Chip bezeichnet. Der Begriff wird jedoch auch für ESP32-Entwicklungsboards verwendet.
Die Verwendung der reinen ESP32-Chips ist weder einfach noch praktikabel – insbesondere in der Lern- und Testphase sowie bei der Entwicklung von Prototypen.
Ich benutze daher ausschließlich ESP32-Entwicklungsboards.
ESP32-Spezifikationen (Auszug)
Es gibt inzwischen eine Vielzahl von Firmen, die sogenannte ESP32-Entwicklungsboards anbieten. Um mit diesen Boards sinnvoll arbeiten zu können, muss man sich über das zugehörige Datenblatt über die Pinbelegungen, Schnittstellen usw. informieren.
Auszug aus dem Informationsblatt zum ESP32-S3-WROOM Entwicklungsboard der Fa. Lafvin
WLAN : 150,0 Mbit/s Datenrate mit HT40
Bluetooth: BLE (Bluetooth Low Energy) und Bluetooth Classic
Prozessor: Tensilica Xtensa Dual-Core 32-Bit-LX6-Mikroprozessor
Speicher:
ROM: 448 KB (für Bootvorgang und Kernfunktionen)
SRAM: 520 KB (für Daten und Befehle)
RTC-Fast-SRAM: 8 KB (für Datenspeicherung und Haupt-CPU beim RTC-
Bootvorgang aus dem Deep-Sleep-Modus)
RTC-Slow-SRAM: 8 KB (für den Zugriff durch den Coprozessor während
des Deep-Sleep-Modus)
Peripherie-Ein-/Ausgabe:
Peripherieschnittstelle mit DMA, einschließlich kapazitiver Touch-Funktionalität
ADCs (Analog-Digital-Wandler)
DACs (Digital-Analog-Wandler)
I²C (Inter-Integrated Circuit)
UART (Universal Asynchronous Receiver/Transmitter)
SPI (Serial Peripheral Interface)
I²S (Integrated Interchip Sound)
RMII (Reduced Media-Independent Interface)
PWM (Pulsweitenmodulation)
In den folgenden Übungen zum ESP32 verwende ich - soweit nicht extra darauf hingewiesen wird - die folgenden Entwicklungsboards:
ESP32-S3-WROOM Board (schematische Darstellung).
Für die Versuche mit dem ESP32 xxx benutze ich ein Expansion-Board (optional), das auf einem Steckbrett aufgesteckt ist (s. Abb.2).
Erste Vorbereitungen für die nachfolgenden ESP32-Versuche
Zusammenfassung
In den o.g. fünf Schritten hast du jetzt
In einem ersten einfachen Test wird jetzt überprüft, ob das ESP32 Board von der Arduino IDE erkannt wird.
Übung 1Arduino
Hardware
1x ESP32-xxx Board (hier: ESP32-S3-WROOM Board) mit USB-Kabel
1x Arduino-IDE
Aufgabe
Die fest verdrahtete LED (blau) auf dem Board (GPIO 2) soll die LED hintereinander 1s lang ein- und 1s lang ausschalten. Schreibe dazu ein Programm, speicher es ab, lade es hoch und überprüfe, ob die LED wie geforderte blinkt.
Wenn alles nach Plan verläuft, lassen sich ab sofort mit dem ESP32 Board alle folgenden Übungen erfolgreich mit der Arduino-IDE durchführen.
Programm LED Blinker
#define LED_BUILTIN 2 // Pin der eingebauten LED (blau)
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // LED an
delay(1000); // 1000 ms
Pause
digitalWrite(LED_BUILTIN, LOW); // LED aus
delay(1000); // 1000 ms
Pause
}
Übung 1Visuino
Hardware
1x ESP32-xxx Board (hier: ESP32-S3-WROOM Board) mit USB-Kabel
1x Visuino-IDE
Aufgabe
Die fest verdrahtete LED (blau) auf dem Board (GPIO 2) soll, wie in Übung 1Arduino beschrieben, blinken. Stelle einen Schaltungsaufbau zusammen, speichere ihn ab, lade das Programm hoch und überprüfe, ob die LED wie gefordert blinkt.
Wenn alles nach Plan verläuft, lassen sich ab sofort mit dem ESP32 Board alle folgenden Übungen erfolgreich mit der Visuino-IDE durchführen.
Schaltungsaufbau
Schritt 1: Wähle das passende Board oder den passenden Controller aus (s. Abb. 5).
Schritt 2: Wähle für das Eingangssignal am GPIO2 einen Impulsgeber und als Ausgang eine LED an GPIO2. Stelle die Verbindungen zum Board her (s. Abb. 6).
Schritt 3: Über den Menüpunkt BUILD - Compile/Build and Upload übertrage das Programm in den Controller (s. Abb. 7). Überprüfe die Blinkfrequenz.