Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Erste Schritte mit dem Espressif ESP32-WROOM-32SE
Wichtig
Diese Referenzintegration wird im Amazon-FreeRTOS Repository gehostet, das veraltet ist. Wir empfehlen, dass Sie hier beginnen, wenn Sie ein neues Projekt erstellen. Wenn Sie bereits ein bestehendes FreeRTOS-Projekt haben, das auf dem inzwischen veralteten Amazon-FreeRTOS Repository basiert, finden Sie weitere Informationen unter. Amazon-FreeRTOS Leitfaden zur Migration zum Github-Repository
Anmerkung
-
Derzeit unterstützt der FreeRTOS-Port für die ESP32-WROOM-32SE Funktion Symmetric Multiprocessing (SMP) nicht.
Dieses Tutorial zeigt Ihnen, wie Sie mit dem Espressif beginnen können. ESP32-WROOM-32SE Informationen zum Kauf eines Geräts bei unserem Partner im AWS Partnergerätekatalog finden Sie unter. ESP32-WROOM-32SE
-Übersicht
In diesem Tutorial führen Sie die folgenden Schritte aus:
-
Verbinden Sie Ihr Board mit einem Host-Rechner.
-
Installieren Sie Software zum Entwickeln und Debuggen eingebetteter Anwendungen für Ihr Mikrocontroller-Board auf Ihrem Host-Computer.
-
Cross-Kompilieren Sie eine FreeRTOS-Demo-Anwendung zu einem Binär-Image.
-
Laden des binären Anwendungs-Image auf Ihre Platine und Ausführen der Anwendung.
-
Überwachen und debuggen Sie die laufende Anwendung mithilfe einer seriellen Verbindung.
Voraussetzungen
Bevor Sie mit FreeRTOS auf Ihrem Espressif-Board beginnen, müssen Sie Ihr Konto und Ihre AWS Berechtigungen einrichten.
Melde dich an für ein AWS-Konto
Um loszulegen AWS, benötigen Sie eine AWS-Konto. Informationen zum Erstellen eines AWS-Konto finden Sie unter Erste Schritte mit einem AWS-Konto im AWS -Kontenverwaltung Referenzhandbuch.
Um Zugriff zu gewähren, fügen Sie Ihren Benutzern, Gruppen oder Rollen Berechtigungen hinzu:
-
Benutzer und Gruppen in AWS IAM Identity Center:
Erstellen Sie einen Berechtigungssatz. Befolgen Sie die Anweisungen unter Erstellen eines Berechtigungssatzes im AWS IAM Identity Center -Benutzerhandbuch.
-
Benutzer, die in IAM über einen Identitätsanbieter verwaltet werden:
Erstellen Sie eine Rolle für den Identitätsverbund. Befolgen Sie die Anleitung unter Eine Rolle für einen externen Identitätsanbieter (Verbund) erstellen im IAM-Benutzerhandbuch.
-
IAM-Benutzer:
-
Erstellen Sie eine Rolle, die Ihr Benutzer annehmen kann. Befolgen Sie die Anleitung unter Eine Rolle für einen IAM-Benutzer erstellen im IAM-Benutzerhandbuch.
-
(Nicht empfohlen) Weisen Sie einem Benutzer eine Richtlinie direkt zu oder fügen Sie einen Benutzer zu einer Benutzergruppe hinzu. Befolgen Sie die Anweisungen unter Hinzufügen von Berechtigungen zu einem Benutzer (Konsole) im IAM-Benutzerhandbuch.
-
Erste Schritte
Anmerkung
Für die Linux-Befehle in diesem Tutorial müssen Sie die Bash-Shell verwenden.
-
Richten Sie die Espressif-Hardware ein.
Informationen zur Einrichtung der Hardware für das ESP32-WROOM-32SE Entwicklungsboard finden Sie im ESP32-DevKitC V4-Handbuch „Erste Schritte
“. Wichtig
Wenn Sie den Abschnitt „Installation Schritt für Schritt“ des Handbuchs erreicht haben, folgen Sie diesen Anweisungen, bis Sie Schritt 4 (Einrichten der Umgebungsvariablen) abgeschlossen haben. Hören Sie auf, nachdem Sie Schritt 4 abgeschlossen haben, und folgen Sie den verbleibenden Schritten hier.
-
Laden Sie Amazon FreeRTOS von herunter. GitHub
(Anweisungen finden Sie in der README.md Datei.) -
Richten Sie Ihre Entwicklungsumgebung ein.
Um mit Ihrem Board zu kommunizieren, müssen Sie eine Toolchain installieren. Espressif stellt sie zur Verfügung ESP-IDF , um Software für ihre Boards zu entwickeln. Da ESP-IDF eine eigene Version des FreeRTOS-Kernels als Komponente integriert ist, enthält Amazon FreeRTOS eine benutzerdefinierte Version von ESP-IDF v4.2, bei der der FreeRTOS-Kernel entfernt wurde. Dies behebt Probleme mit doppelten Dateien beim Kompilieren. Um die in Amazon FreeRTOS enthaltene benutzerdefinierte Version von ESP-IDF v4.2 zu verwenden, folgen Sie den nachstehenden Anweisungen für das Betriebssystem Ihres Host-Computers.
Windows
-
Laden Sie ESP-IDF den Universal Online Installer
für Windows herunter. -
Führen Sie den Universal Online Installer aus.
-
Wenn Sie zum Schritt Herunterladen oder Verwenden gelangen ESP-IDF, wählen Sie Bestehendes ESP-IDF Verzeichnis verwenden und setzen Sie Vorhandenes ESP-IDF Verzeichnis auswählen auf
.freertos/vendors/espressif/esp-idf -
Schließen Sie die Installation ab.
macOS
-
Folgen Sie den Anweisungen in den Voraussetzungen für die Standardkonfiguration der Toolchain (ESP-IDF v4.2) für macOS
. Wichtig
Wenn Sie unter „Nächste Schritte“ zu den Anweisungen ESP-IDF „Abrufen“ gelangen, beenden Sie den Vorgang und kehren Sie dann zu den Anweisungen auf dieser Seite zurück.
-
Öffnen Sie ein Befehlszeilenfenster.
-
Navigieren Sie zum FreeRTOS-Download-Verzeichnis und führen Sie dann das folgende Skript aus, um die espressif-Toolchain für Ihre Plattform herunterzuladen und zu installieren.
vendors/espressif/esp-idf/install.sh -
Fügen Sie die ESP-IDF Toolketten-Tools mit dem folgenden Befehl zum Pfad Ihres Terminals hinzu.
source vendors/espressif/esp-idf/export.sh
Linux
-
Folgen Sie den Anweisungen in der Standardkonfiguration der Toolchainvoraussetzungen (ESP-IDF v4.2)
für Linux. Wichtig
Wenn Sie unter „Nächste Schritte“ zu den Anweisungen ESP-IDF „Abrufen“ gelangen, beenden Sie den Vorgang und kehren Sie dann zu den Anweisungen auf dieser Seite zurück.
-
Öffnen Sie ein Befehlszeilenfenster.
-
Navigieren Sie zum FreeRTOS-Download-Verzeichnis und führen Sie dann das folgende Skript aus, um die Espressif-Toolchain für Ihre Plattform herunterzuladen und zu installieren.
vendors/espressif/esp-idf/install.sh -
Fügen Sie die ESP-IDF Toolketten-Tools mit dem folgenden Befehl zum Pfad Ihres Terminals hinzu.
source vendors/espressif/esp-idf/export.sh
-
-
Stellen Sie eine serielle Verbindung her.
-
Um eine serielle Verbindung zwischen Ihrem Host-Computer und dem herzustellen ESP32-WROOM-32SE, installieren Sie die CP210x USB-zu-UART-Bridge-VCP-Treiber. Sie können diese Treiber von Silicon Labs
herunterladen. -
Führen Sie die Schritte aus, um eine serielle Verbindung mit ESP32 herzustellen
. -
Nachdem Sie eine serielle Verbindung hergestellt haben, notieren Sie sich den seriellen Port für Ihre Board-Verbindung. Sie benötigen es, um die Demo zu flashen.
-
Konfigurieren Sie die FreeRTOS-Demoanwendungen
Für dieses Tutorial befindet sich die FreeRTOS-Konfigurationsdatei unter. (Wenn zum Beispiel ausgewählt freertos/vendors/espressif/boards/board-name/aws_demos/config_files/FreeRTOSConfig.hAFR_BOARD espressif.esp32_devkitc ist, befindet sich die Konfigurationsdatei unter.) freertos/vendors/espressif/boards/esp32/aws_demos/config_files/FreeRTOSConfig.h
Wichtig
Das ATECC608A-Gerät verfügt über eine einmalige Initialisierung, die bei der ersten Ausführung eines Projekts (während des Aufrufs von) für das Gerät gesperrt wird. C_InitToken Das FreeRTOS-Demoprojekt und das Testprojekt haben jedoch unterschiedliche Konfigurationen. Wenn das Gerät während der Demo-Projektkonfigurationen gesperrt ist, sind nicht alle Tests im Testprojekt erfolgreich.
-
Konfigurieren Sie das FreeRTOS-Demo-Projekt, indem Sie den Schritten unter folgen. Konfiguration der FreeRTOS-Demos Wenn Sie mit dem letzten Schritt zum Formatieren Ihrer AWS IoT Anmeldeinformationen fertig sind, beenden Sie den Vorgang und führen Sie die folgenden Schritte aus.
-
Microchip hat mehrere Skript-Tools zur Verfügung gestellt, um beim Aufbau der ATECC608A-Teile zu helfen. Navigieren Sie zu dem Verzeichnis
und öffnen Sie die Dateifreertos/vendors/microchip/example_trust_chain_toolREADME.md. -
Folgen Sie den Anweisungen in der
README.mdDatei, um Ihr Gerät bereitzustellen. Die Schritte umfassen Folgendes:-
Erstellen und registrieren Sie eine Zertifizierungsstelle bei AWS.
-
Generieren Sie Ihre Schlüssel auf dem ATECC608A und exportieren Sie den öffentlichen Schlüssel und die Seriennummer des Geräts.
-
Generieren Sie ein Zertifikat für das Gerät und registrieren Sie dieses Zertifikat bei AWS.
-
-
Laden Sie das Zertifizierungsstellenzertifikat und das Gerätezertifikat auf das Gerät, indem Sie die Anweisungen für Developer-mode Schlüsselbereitstellung befolgen.
Überwachung von MQTT-Nachrichten auf dem AWS Cloud
Bevor Sie das FreeRTOS-Demoprojekt ausführen, können Sie den MQTT-Client in der AWS IoT Konsole so einrichten, dass er die Nachrichten überwacht, die Ihr Gerät an die Cloud sendet. AWS
Um das MQTT-Thema zu abonnieren mit AWS IoT MQTT-Client
-
Melden Sie sich bei der AWS IoT -Konsole
an. -
Wählen Sie im Navigationsbereich Test und dann MQTT Test Client aus.
-
Geben Sie unter Thema Abonnement den Text ein
und wählen Sie dann Thema abonnieren aus.your-thing-name/example/topic
Erstellen, flashen und starten Sie das FreeRTOS-Demoprojekt mit dem Skript idf.py
Sie können das IDF-Hilfsprogramm (idf.py) von Espressif verwenden, um die Build-Dateien zu generieren, die Anwendungs-Binärdatei zu erstellen und die Binärdateien auf Ihr Gerät zu flashen.
Anmerkung
Bei einigen Setups müssen Sie möglicherweise die Portoption "-p port-name" mit verwenden, idf.py um den richtigen Port anzugeben, wie im folgenden Beispiel.
idf.py -p /dev/cu.usbserial-00101301B flash
FreeRTOS unter Windows, Linux und macOS erstellen und flashen (v4.2) ESP-IDF
-
Navigieren Sie zum Stammverzeichnis Ihres FreeRTOS-Download-Verzeichnisses.
-
Geben Sie in einem Befehlszeilenfenster den folgenden Befehl ein, um die ESP-IDF Tools zum PATH Ihres Terminals hinzuzufügen:
- Windows (App „Command“)
-
vendors\espressif\esp-idf\export.bat - Windows (App „ESP-IDF 4.x CMD“)
-
(Dies wurde bereits getan, als Sie die App geöffnet haben.)
- Linux//macOS
-
source vendors/espressif/esp-idf/export.sh
-
Konfigurieren Sie cmake im
buildVerzeichnis und erstellen Sie das Firmware-Image mit dem folgenden Befehl.idf.py -DVENDOR=espressif -DBOARD=esp32_ecc608a_devkitc -DCOMPILER=xtensa-esp32 buildSie sollten eine Ausgabe wie das folgende Beispiel sehen.
Running cmake in directory /path/to/hello_world/build Executing "cmake -G Ninja --warn-uninitialized /path/to/hello_world"... Warn about uninitialized values. -- Found Git: /usr/bin/git (found version "2.17.0") -- Building empty aws_iot component due to configuration -- Component names: ... -- Component paths: ... ... (more lines of build system output) [527/527] Generating hello-world.bin esptool.py v2.3.1 Project build complete. To flash, run this command: ../../../components/esptool_py/esptool/esptool.py -p (PORT) -b 921600 write_flash --flash_mode dio --flash_size detect --flash_freq 40m 0x10000 build/hello-world.bin build 0x1000 build/bootloader/bootloader.bin 0x8000 build/partition_table/partition-table.bin or run 'idf.py -p PORT flash'Wenn keine Fehler vorliegen, generiert der Build die binären Firmware-Dateien.
-
Löschen Sie den Flash-Speicher Ihres Entwicklungsboards mit dem folgenden Befehl.
idf.py erase_flash -
Verwenden Sie das
idf.pySkript, um die Binärdatei der Anwendung auf Ihr Board zu flashen.idf.py flash -
Überwachen Sie die Ausgabe von der seriellen Schnittstelle Ihrer Platine mit dem folgenden Befehl.
idf.py monitorAnmerkung
-
Sie können diese Befehle wie im folgenden Beispiel kombinieren.
idf.py erase_flash flash monitor -
Bei bestimmten Host-Rechner-Setups müssen Sie den Port angeben, wenn Sie die Karte flashen, wie im folgenden Beispiel gezeigt.
idf.py erase_flash flash monitor -p /dev/ttyUSB1
-
FreeRTOS mit CMake erstellen und flashen
Neben der Verwendung des vom IDF SDK bereitgestellten idf.py Skripts zum Erstellen und Ausführen Ihres Codes können Sie das Projekt auch mit CMake erstellen. Derzeit unterstützt es Unix Makefile und das Ninja-Build-System.
Um das Projekt zu erstellen und zu flashen
-
Navigieren Sie in einem Befehlszeilenfenster zum Stammverzeichnis Ihres FreeRTOS-Download-Verzeichnisses.
-
Führen Sie das folgende Skript aus, um die ESP-IDF Tools zum PATH Ihrer Shell hinzuzufügen.
- Windows
-
vendors\espressif\esp-idf\export.bat - Linux//macOS
-
source vendors/espressif/esp-idf/export.sh
-
Geben Sie den folgenden Befehl ein, um die Build-Dateien zu generieren.
- Mit Unix-Makefiles
-
cmake -DVENDOR=espressif -DBOARD=esp32_plus_ecc608a_devkitc -DCOMPILER=xtensa-esp32 -S . -B ./YOUR_BUILD_DIRECTORY-DAFR_ENABLE_ALL_MODULES=1 -DAFR_ENABLE_TESTS=0 - Mit Ninja
-
cmake -DVENDOR=espressif -DBOARD=esp32_plus_ecc608a_devkitc -DCOMPILER=xtensa-esp32 -S . -B ./YOUR_BUILD_DIRECTORY-DAFR_ENABLE_ALL_MODULES=1 -DAFR_ENABLE_TESTS=0 -GNinja
-
Lösche den Blitz und flashe dann die Platine.
- Mit Unix-Makefiles
-
make -C ./YOUR_BUILD_DIRECTORYerase_flashmake -C ./YOUR_BUILD_DIRECTORYflash - Mit Ninja
-
ninja -C ./YOUR_BUILD_DIRECTORYerase_flashninja -C ./YOUR_BUILD_DIRECTORYflash
Zusätzliche Informationen
Weitere Informationen zur Verwendung und Problembehebung von Espressif ESP32-Karten finden Sie in den folgenden Themen: