Unterrichts- und Lernmaterial für Mikrocontroller
Unterrichts- und Lernmaterial fürMikrocontroller

ESP32 xxx Entwicklungsboards

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-DEVKIT-V1
  • ESP32-S3-WROOM
  • ESP32 Mini und
  • ESP 8266

ESP32-S3-WROOM Board (schematische Darstellung).

 

 

 

 

 

 

 

 

Abb. 1

ESP32-S3-WROOM Entwicklungsboard mit GPIO Pinbelegung

Für die Versuche mit dem ESP32 xxx benutze ich ein Expansion-Board (optional), das auf einem Steckbrett aufgesteckt ist (s. Abb.2).

 

 

 

 

 

 

 

 

 

Abb. 2

ESP32-S3-WROOM Board mit Expansion-Board.

Erste Vorbereitungen für die nachfolgenden ESP32-Versuche

 

  1. Verbinde das ESP32-Entwicklungsboard über den USB-Anschluss mit einem Rechner. 
  2. Installiere auf dem Rechner die aktuelle Arduino IDE, soweit nicht schon geschehen.
  3. Damit unter der Arduino IDE ein ESP32-Board erkannt wird, muss über den Boardverwalter eine zusätzliche Boardverwalter URL eingetragen (s. Abb. 3) und eine Datei hochgeladen werden (s. Abb. 4).

Abb. 3

Über Datei - Einstellungen im Hauptmenü der Arduino IDE wird in der Zeile "Zusätzliche Boardverwalter URLs" die o.g. Adresse eingetragen.

Über das Symbol "Board-Verwaltung" links im vertikalen ICON-Menü der Arduino-IDE gib als Suchbegriff ESP32 (s. Abb. 4) ein und wähle die Datei ESP32 von Espressif Systems aus.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Abb. 4

Die Datei esp32 von Espressif Systems wird geladen.

  1. Zum Hochladen von Programmcode in den Controller wird eine Treibersoftware benötigt. Der ESP32-S3-WROOM benötigt zum Beispiel den Treiber CH343. Diese Software wird i.a. vom Anbieter des Entwicklungsboards mitgeliefert.
  2. Optional: Wer mit dem Programm VISUINO arbeitet, sollte sich auch dieses Programm auf seinem Rechner installieren.

Zusammenfassung

 

In den o.g. fünf Schritten hast du jetzt

  • eine neue Board-URL hinzugefügt
  • das notwendige ESP32 Paket der Fa. Espressif installiert
  • dein Board in der Arduino-IDE verfügbar gemacht.

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).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Abb. 5

Meine Wahl fällt auf

Generic ESP32 S3.

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).

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.

Druckversion | Sitemap
© Reinhard Rahner - Gettorf