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-S2
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, lesen Sie das. Amazon-FreeRTOS Leitfaden zur Migration zum Github-Repository
Anmerkung
Um zu erfahren, wie Sie modulare FreeRTOS-Bibliotheken und -Demos in Ihr eigenes Espressif IDF-Projekt integrieren können, schauen Sie sich unsere empfohlene Referenzintegration für die Plattform an. ESP32-C3
Dieses Tutorial zeigt Ihnen, wie Sie mit dem Espressif SoC und den Entwicklungsboards beginnen. ESP32-S2 ESP32-S2-Saola-1
-Ü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-compile eine FreeRTOS-Demoanwendung für ein Binärbild.
-
Laden des binären Anwendungs-Image auf Ihre Platine und Ausführen der Anwendung.
-
Überwachen und debuggen Sie die laufende Anwendung über eine serielle Verbindung.
Voraussetzungen
Bevor Sie mit FreeRTOS auf Ihrem Espressif-Board beginnen, müssen Sie Ihr Konto und Ihre Berechtigungen einrichten. AWS
Melde dich an für AWS-Konto
Um damit zu beginnen AWS, benötigen Sie eine AWS-Konto. Informationen zum Erstellen einer AWS-Konto finden Sie AWS-Konto im AWS -Kontenverwaltung Referenzhandbuch unter Erste Schritte mit einer.
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
Die Linux-Befehle in diesem Tutorial setzen voraus, dass Sie die Bash-Shell verwenden.
-
Richten Sie die Espressif-Hardware ein.
Informationen zum Einrichten der Hardware des ESP32-S2 Entwicklungsboards finden Sie im Handbuch ESP32-S2-Saola-1 Erste Schritte
. Wichtig
Wenn Sie den Abschnitt Erste Schritte in den Espressif-Handbüchern erreichen, halten Sie an und kehren Sie dann zu den Anweisungen auf dieser Seite zurück.
-
Laden Sie Amazon FreeRTOS von herunter. GitHub
(Anweisungen finden Sie in der README.md Datei.) -
Richten Sie Ihre Entwicklungsumgebung ein.
Um mit deinem Board zu kommunizieren, musst du eine Toolchain installieren. Espressif stellt sie zur Verfügung ESP-IDF , um Software für ihre Boards zu entwickeln. Da in Amazon FreeRTOS 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. Dadurch werden Probleme mit doppelten Dateien beim Kompilieren behoben. Um die benutzerdefinierte Version von ESP-IDF Version 4.2 zu verwenden, die in Amazon FreeRTOS enthalten ist, 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 Bestehendes ESP-IDF Verzeichnis auswählen auf
.freertos/vendors/espressif/esp-idf -
Schließen Sie die Installation ab.
macOS
-
Folgen Sie den Anweisungen im Standard-Setup der Toolchain-Voraussetzungen (ESP-IDF v4.2) für macOS.
Wichtig
Wenn Sie unter „Nächste Schritte“ zu den ESP-IDF „Holen“ -Anweisungen 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 Toolchaintools mit dem folgenden Befehl zum Pfad Ihres Terminals hinzu.
source vendors/espressif/esp-idf/export.sh
Linux
-
Folgen Sie den Anweisungen im Standard-Setup der Toolchain-Prinzipien (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 Toolchaintools 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-DevKitC, installieren Sie die CP210x USB to 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
-
Wenn Sie macOS oder Linux verwenden, öffnen Sie eine Terminal-Eingabeaufforderung. Wenn Sie Windows ausführen, öffnen Sie die App „ESP-IDF 4.x CMD“ (falls Sie diese Option bei der Installation der ESP-IDF Toolchain angegeben haben) oder andernfalls die App „Command Prompt“.
-
Führen Sie Folgendes aus, um zu überprüfen, ob Sie Python3 installiert haben:
python --versionDie installierte Version wird angezeigt. Wenn Sie Python 3.0.1 oder höher nicht installiert haben, können Sie es von der Python-Website aus installieren. https://www.python.org/downloads/
-
Sie benötigen die AWS Befehlszeilenschnittstelle (CLI), um AWS IoT Befehle auszuführen. Wenn Sie Windows ausführen, verwenden Sie den
easy_install awscliBefehl, um die AWS CLI in der App „Command“ oder „ESP-IDF 4.x CMD“ zu installieren.Wenn Sie macOS oder Linux verwenden, finden Sie weitere Informationen unter CLI installieren. AWS
-
Ausführen
aws configureund konfigurieren Sie die AWS CLI mit Ihrer AWS Zugriffsschlüssel-ID, Ihrem geheimen Zugriffsschlüssel und Ihrer AWS Standardregion. Weitere Informationen finden Sie unter Konfigurieren der AWS -CLI.
-
Verwenden Sie den folgenden Befehl, um das AWS SDK für Python (boto3) zu installieren:
-
Führen Sie unter Windows in der App „Command“ oder „ESP-IDF 4.x CMD“ Folgendes aus
easy_install boto3 -
Führen Sie unter macOS oder Linux Folgendes aus
pip install tornado nose --userund dann lauf
pip install boto3 --user
-
FreeRTOS enthält das SetupAWS.py Skript, das es einfacher macht, Ihr Espressif-Board einzurichten, mit dem Sie eine Verbindung herstellen können. AWS IoT
So führen Sie das Konfigurationsskript aus:
-
Wenn Sie das Skript konfigurieren möchten, öffnen Sie
und legen die folgenden Attribute fest:freertos/tools/aws_config_quick_start/configure.jsonafr_source_dir-
Der vollständige Pfad zum
-Verzeichnis auf Ihrem Computer. Stellen Sie sicher, dass Sie diesen Pfad mit Schrägstrichen angeben.freertos thing_name-
Der Name, den du dem AWS IoT Ding zuweisen möchtest, das dein Board repräsentiert.
wifi_ssid-
Die SSID Ihres Wi-Fi Netzwerks.
wifi_password-
Das Passwort für Ihr Wi-Fi Netzwerk.
wifi_security-
Der Sicherheitstyp für Ihr Wi-Fi Netzwerk. Die folgenden Sicherheitstypen sind gültig:
-
eWiFiSecurityOpen(Open, no security (Offen, keine Sicherheit) -
eWiFiSecurityWEP(WEP-Sicherheit) -
eWiFiSecurityWPA(WPA-Sicherheit) -
eWiFiSecurityWPA2(WPA2-Sicherheit)
-
-
Wenn Sie macOS oder Linux verwenden, öffnen Sie eine Terminal-Eingabeaufforderung. Wenn Sie Windows ausführen, öffnen Sie die App „ESP-IDF 4.x CMD“ oder „Command“.
-
Navigieren Sie zum
Verzeichnis und führen Sie es ausfreertos/tools/aws_config_quick_startpython SetupAWS.py setupDas -Skript führt folgende Aktionen aus:
-
Erstellt ein AWS IoT Ding, ein Zertifikat und eine Richtlinie.
-
Hängt die AWS IoT Richtlinie an das Zertifikat und das Zertifikat an das AWS IoT Ding an.
-
Füllt die
aws_clientcredential.hDatei mit Ihrem AWS IoT Endpunkt, Ihrer Wi-Fi SSID und Ihren Anmeldeinformationen auf. -
Formatiert Ihr Zertifikat und Ihren privaten Schlüssel und schreibt sie in die
aws_clientcredential_keys.hHeader-Datei.
Anmerkung
Das Zertifikat ist nur zu Demonstrationszwecken fest codiert. Production-level Anwendungen sollten diese Dateien an einem sicheren Ort speichern.
Weitere Informationen zu
SetupAWS.pyfinden SieREADME.mdimVerzeichnis.freertos/tools/aws_config_quick_start -
Überwachung von MQTT-Nachrichten auf der 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 mit dem zu abonnieren 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 im Feld Subscription topic (Abonnementthema) die Option
ein und wählen Sie dann Subscribe to topic (Thema abonnieren).your-thing-name/example/topic
Wenn das Demo-Projekt erfolgreich auf Ihrem Gerät ausgeführt wird, sehen Sie „Hello World!“ wurde mehrfach zu dem Thema gesendet, das Sie abonniert haben.
Erstellen, flashen und starten Sie das FreeRTOS-Demoprojekt mit dem Skript idf.py
Sie können das IDF-Hilfsprogramm von Espressif verwenden, um die Build-Dateien zu generieren, die Anwendungs-Binärdatei zu erstellen und Ihr Board zu flashen.
Erstelle und flashe FreeRTOS unter Windows, Linux und macOS (v4.2) ESP-IDF
Verwenden Sie das idf.py Skript, um das Projekt zu erstellen und die Binärdateien auf Ihr Gerät zu flashen.
Anmerkung
Bei einigen Setups müssen Sie möglicherweise die Port-Option -p port-name with verwenden, idf.py um den richtigen Port anzugeben, wie im folgenden Beispiel.
idf.py -p /dev/cu.usbserial-00101301B flash
Um das Projekt zu erstellen und zu flashen
-
Navigiere zum Stammverzeichnis deines 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 „Befehl“)
-
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=esp32s2_saola_1 -DCOMPILER=xtensa-esp32s2 buildSie sollten eine Ausgabe wie das folgende Beispiel sehen.
Executing action: all (aliases: build) Running cmake in directory /path/to/hello_world/build Executing "cmake -G Ninja -DPYTHON_DEPS_CHECKED=1 -DESP_PLATFORM=1 -DVENDOR=espressif -DBOARD=esp32s2_saola_1 -DCOMPILER=xtensa-esp32s2 -DCCACHE_ENABLE=0 /path/to/hello_world"... -- The C compiler identification is GNU 8.4.0 -- The CXX compiler identification is GNU 8.4.0 -- The ASM compiler identification is GNU ... (more lines of build system output) [1628/1628] Generating binary image from built executable esptool.py v3.0 Generated /path/to/hello_world/build/aws_demos.bin Project build complete. To flash, run this command: esptool.py -p (PORT) -b 460800 --before default_reset --after hard_reset --chip esp32s2 write_flash --flash_mode dio --flash_size detect --flash_freq 80m 0x1000 build/bootloader/bootloader.bin 0x8000 build/partition_table/partition-table.bin 0x16000 build/ota_data_initial.bin 0x20000 build/aws_demos.bin or run 'idf.py -p (PORT) flash'Wenn keine Fehler vorliegen, generiert der Build die binären Firmware-Binärdateien.
-
Löschen Sie den Flash-Speicher Ihres Entwicklungsboards mit dem folgenden Befehl.
idf.py erase_flash -
Verwenden Sie das
idf.pySkript, um die Anwendungs-Binärdatei 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 dargestellt.
idf.py erase_flash flash monitor -p /dev/ttyUSB1
-
Erstellen und flashen Sie FreeRTOS mit CMake
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=esp32s2_saola_1 -DCOMPILER=xtensa-esp32s2 -S . -B ./YOUR_BUILD_DIRECTORY-DAFR_ENABLE_ALL_MODULES=1 -DAFR_ENABLE_TESTS=0 -
Mit Ninja
cmake -DVENDOR=espressif -DBOARD=esp32s2_saola_1 -DCOMPILER=xtensa-esp32s2 -S . -B ./YOUR_BUILD_DIRECTORY-DAFR_ENABLE_ALL_MODULES=1 -DAFR_ENABLE_TESTS=0 -GNinja
-
-
Erstellen Sie das Projekt.
-
Mit Unix-Makefiles
make -C ./YOUR_BUILD_DIRECTORY-j8 -
Mit Ninja
ninja -C ./YOUR_BUILD_DIRECTORY-j8
-
-
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 Problembehandlung von Espressif ESP32-Boards finden Sie in den folgenden Themen: