Um mit der C/C++-Entwicklung zu beginnen und auch den Quellcode Zeile für Zeile zu debuggen, sind ein paar einfache Schritte nötig

  • Kaufe ein EasyDevKit
  • Installiere eine Entwicklungsumgebung (IDE)
  • Schließe das EasyDevKit an
  • Installiere den USB Treiber
  • Öffne ein C/C++ Projekt in der IDE und konfiguriere es für die Verwendung von EasyDevKit
  • Erstelle, übertrage und starte die Anwendung auf dem EasyDevKit
  • Setze einen Haltepunkt in der IDE, hänge den Debugger an und gehe Zeile für Zeile durch das Programm

Kaufe ein EasyDevKit

Im Shop gibt es die verschiedenen EsyDevKits.

Installiere eine Entwicklungsumgebung (IDE)

Als Beispiel kannst Du die kostenlose IDE Microsoft Visual Studio Code installieren. Um die IDE mit einem ESP32 EasyDevKit zum Laufen zu bringen, kannst Du das Espressif IDF Plugin für Visual Studio Code installieren.

Derzeit sind die OpenOCD-Modifikationen, mit denen die EasyDevKits funktionieren, nicht in der Espressif-Version von OpenOCD enthalten. Dies ist ein laufender Prozess und bis dieser abgeschlossen ist, musst Du die neueste Version von OpenOCD-EasyDevKits in das Espressif-Plugin kopieren. Um dies zu tun, gehe bitte wie folgt vor:

  1. Lade die neueste Version von OpenOCD-EasyDevKits von github herunter und entpacke sie. Für Linux benötigst Du die Linux-Version, für Windows die Windows-Version.
  2. Kopiere die bin- und share-Ordner in Deinen esp-openocd-Ordner und überschreibe dort alle Dateien. Du findest diese bin- und share-Ordner im Ordner .espressif. Z.B. .espressif/tools/openocd-esp32/v0.12.0-esp32-20230419/openocd-esp32
  3. Nur für Windows: Lade den neuesten libusb-Treiber von GitHub herunter: https://github.com/libusb/libusb/releases Entpacke die 7z-Datei und kopiere die libusb-1.0.dll aus dem Ordner VS2022/MS32/dll in den Ordner esp-openocd/bin. Z.B. .espressif/tools/openocd-esp32/v0.12.0-esp32-20230419/openocd-esp32/bin

Schließe das EasyDevKit an

Verbinde das EasyDevKit mit einem USB Anschluss. Du brauchst kein Steckbrett und keine zusätzlichen Kabel. Es wird nur das EasyDevKit und ein Micro-USB-Kabel benötigt.

Für Windows musst du den passenden USB Treiber installieren. Überspringe diesen Schritt für Linux.

  • Lade das Zadig Tool herunter und starte es
  • Klicke auf Options => List all devices
  • Für ein FTDI FT2232H basiertes EasyDevKit wähle EasyDevKit (Interface 0) aus und installiere den WinUSB Treiber
  • Für ein WCH CH347T basiertes EasyDevKit wähle EasyDevKit (Interface 2) aus und installiere den WinUSB Treiber

Öffnen dein C/C++ Project und selektiere die serielle Schnittstelle für das Übertragen per UART

Für einen schnellen Einstieg kannst Du die Beispielanwendung „Hello World“ aus dem Verzeichnis esp samples öffnen. Die Auswahl der richtigen seriellen Schnittstelle erfolgt in der Statusleiste von Visual Studio Code.

Erstelle, übertrage und starte die Anwendung auf dem EasyDevKit

In der Statusleiste von Visual Studio Code befindet sich das kleine Flammensymbol. Du kannst damit die Anwendung mit einem Klick erstellen, übertragen und die UART Ausgaben überwachen.

Starte das JTAG Debugging

Kopiere die launch.json in dein .vscode Verzeichnis. Füge die OpenOCD interface und board Konfigurationen zu Deiner settings.json hinzu. Diese Datei befindet sich ebenfalls im .vscode Verzeichnis.

Für FTDI FT2232H basierte EasyDevKits

"idf.openOcdConfigs": [
        "interface/ftdi/easydevkits-ftdi.cfg",
        "board/esp32-wrover.cfg"        
    ]

Für WCH CH347T basierte EasyDevKits

"idf.openOcdConfigs": [
        "interface/easydevkits-wch.cfg",
        "board/esp32-wrover.cfg"        
    ]

Starte den OpenOCD Server mit einem Klick auf „OpenOCD Server“ in der Statusleiste. Setze dann einen Breakpoint und starte Deine Anwendung zum JTAG-Debugging mit F5. Warte, bis deine Anwendung am Breakpoint anhält.

Viel Spaß beim debuggen!

Wenn Du möchtest, kannst Du dir das Video „Erste Schritte“ ansehen. Es beschreibt alle Schritte im Detail.

Getting started with EasyDevKits

Die beiden Dateien die im Video erwähnt werden, findest Du hier: