Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Guida introduttiva a Espressif ESP32-WROOM-32SE
Importante
Questa integrazione di riferimento è ospitata nel Amazon-FreeRTOS repository che è obsoleto. Ti consigliamo di iniziare da qui quando crei un nuovo progetto. Se hai già un progetto FreeRTOS esistente basato sul Amazon-FreeRTOS repository ora obsoleto, consulta il. Amazon-FreeRTOS Guida alla migrazione del repository Github
Nota
-
Per scoprire come integrare le librerie e le demo modulari FreeRTOS all'interno del tuo progetto Espressif IDF, consulta la nostra integrazione di riferimento in primo piano per la piattaforma. ESP32-C3
-
Attualmente, la porta FreeRTOS per ESP32-WROOM-32SE non supporta la funzionalità SMP (symmetric multiprocessing).
Questo tutorial mostra come iniziare a usare Espressif. ESP32-WROOM-32SE Per acquistarne uno dal nostro partner nel catalogo dei dispositivi AWS partner, consulta. ESP32-WROOM-32SE
Panoramica di
Questo tutorial descrive le seguenti procedure:
-
Connessione della scheda a un computer host.
-
Installazione del software sul computer host per lo sviluppo e il debug di applicazioni integrate per la scheda con microcontrollore.
-
Compila in modo incrociato un'applicazione demo FreeRTOS su un'immagine binaria.
-
Caricamento dell'immagine binaria dell'applicazione sulla scheda in uso e successiva esecuzione dell'applicazione.
-
Monitora ed esegui il debug dell'applicazione in esecuzione utilizzando una connessione seriale.
Prerequisiti
Prima di iniziare a usare FreeRTOS sulla tua scheda Espressif, devi configurare il tuo account e le tue autorizzazioni. AWS
Registrati per un Account AWS
Per iniziare AWS, hai bisogno di un Account AWS. Per informazioni sulla creazione di un Account AWS, vedere Guida introduttiva a Account AWS nella Guida Gestione dell’account AWS di riferimento.
Per fornire l’accesso, aggiungi autorizzazioni agli utenti, gruppi o ruoli:
-
Utenti e gruppi in Centro identità AWS IAM:
Crea un set di autorizzazioni. Segui le istruzioni riportate nella pagina Create a permission set (Creazione di un set di autorizzazioni) nella Guida per l’utente di Centro identità AWS IAM .
-
Utenti gestiti in IAM tramite un provider di identità:
Crea un ruolo per la federazione delle identità. Segui le istruzioni riportate nella pagina Create a role for a third-party identity provider (federation) della Guida per l’utente IAM.
-
Utenti IAM:
-
Crea un ruolo che l’utente possa assumere. Segui le istruzioni riportate nella pagina Create a role for an IAM user della Guida per l’utente IAM.
-
(Non consigliato) Collega una policy direttamente a un utente o aggiungi un utente a un gruppo di utenti. Segui le istruzioni riportate nella pagina Aggiunta di autorizzazioni a un utente (console) nella Guida per l’utente IAM.
-
Nozioni di base
Nota
I comandi Linux in questo tutorial richiedono l'uso della shell Bash.
-
Configura l'hardware Espressif.
Per informazioni sulla configurazione dell'hardware della scheda di ESP32-WROOM-32SE sviluppo, consulta la Guida introduttiva
ESP32-DevKitC V4. Importante
Quando arrivi alla sezione Installazione passo dopo passo della guida, prosegui fino a completare il Passaggio 4 (Impostazione delle variabili di ambiente). Fermati dopo aver completato il passaggio 4 e segui i passaggi rimanenti qui.
-
Scarica Amazon FreeRTOS da. GitHub
(Per istruzioni, consulta il README.md file.) -
Configura il tuo ambiente di sviluppo.
Per comunicare con la tua scheda, devi installare una toolchain. Espressif fornisce il software ESP-IDF per sviluppare software per le proprie schede. Poiché ESP-IDF ha una propria versione del kernel FreeRTOS integrata come componente, Amazon FreeRTOS include una versione personalizzata della versione 4.2 in cui è stato rimosso il ESP-IDF kernel FreeRTOS. Questo risolve i problemi relativi ai file duplicati durante la compilazione. Per utilizzare la versione personalizzata della versione ESP-IDF 4.2 inclusa in Amazon FreeRTOS, segui le istruzioni riportate di seguito per il sistema operativo della tua macchina host.
Windows
-
Scarica l' ESP-IDFUniversal Online Installer
per Windows. -
Esegui l'Universal Online Installer.
-
Quando arrivi alla fase Scarica o usa ESP-IDF, seleziona Usa una ESP-IDF directory esistente e imposta Scegli una ESP-IDF directory esistente su.
freertos/vendors/espressif/esp-idf -
Completa l'installazione.
macOS
-
Segui le istruzioni nella configurazione standard dei prerequisiti di Toolchain (ESP-IDF v4.2) per macOS.
Importante
Quando trovi le istruzioni «Ottieni ESP-IDF» nella sezione Passaggi successivi, interrompi e torna alle istruzioni in questa pagina.
-
Aprire una finestra a riga di comando.
-
Accedi alla directory di download di FreeRTOS, quindi esegui il seguente script per scaricare e installare la toolchain espressif per la tua piattaforma.
vendors/espressif/esp-idf/install.sh -
Aggiungi gli ESP-IDF strumenti della toolchain al percorso del tuo terminale con il seguente comando.
source vendors/espressif/esp-idf/export.sh
Linux
-
Segui le istruzioni nella configurazione standard dei prerequisiti di Toolchain (ESP-IDF v4.2) per Linux.
Importante
Una volta visualizzate le istruzioni «Ottieni ESP-IDF» nella sezione Procedure successive, interrompi e torna alle istruzioni in questa pagina.
-
Aprire una finestra a riga di comando.
-
Accedi alla directory di download di FreeRTOS, quindi esegui il seguente script per scaricare e installare la toolchain Espressif per la tua piattaforma.
vendors/espressif/esp-idf/install.sh -
Aggiungi gli ESP-IDF strumenti della toolchain al percorso del tuo terminale con il seguente comando.
source vendors/espressif/esp-idf/export.sh
-
-
Stabilisci una connessione seriale.
-
Per stabilire una connessione seriale tra il computer host e il ESP32-WROOM-32SE, installare i driver VCP da USB a UART Bridge CP210x. È possibile scaricare i driver da Silicon Labs
. -
Segui i passaggi per stabilire una connessione seriale con ESP32
. -
Dopo aver stabilito una connessione seriale, annotare la porta seriale per la connessione della scheda. Ne hai bisogno per flashare la demo.
-
Configura le applicazioni demo di FreeRTOS
Per questo tutorial, il file di configurazione di FreeRTOS si trova in. (Ad esempio, se freertos/vendors/espressif/boards/board-name/aws_demos/config_files/FreeRTOSConfig.hAFR_BOARD espressif.esp32_devkitc viene selezionato, il file di configurazione si trova in.) freertos/vendors/espressif/boards/esp32/aws_demos/config_files/FreeRTOSConfig.h
Importante
Il dispositivo ATECC608A ha un'inizializzazione unica che viene bloccata sul dispositivo la prima volta che viene eseguito un progetto (durante la chiamata a). C_InitToken Tuttavia, il progetto demo e il progetto di test di FreeRTOS hanno configurazioni diverse. Se il dispositivo è bloccato durante le configurazioni del progetto demo, non tutti i test nel progetto di test avranno esito positivo.
-
Configura il progetto demo FreeRTOS seguendo i passaggi indicati. Configurazione delle demo di FreeRTOS Quando arrivi all'ultimo passaggio, per formattare le tue AWS IoT credenziali, fermati ed esegui i seguenti passaggi.
-
Microchip ha diversi strumenti di scripting per facilitare la configurazione delle parti ATECC608A. Passare alla directory
e aprire il filefreertos/vendors/microchip/example_trust_chain_toolREADME.md. -
Per effettuare il provisioning del dispositivo, segui le istruzioni contenute nel
README.mdfile. Queste fasi includono quanto segue:-
Crea e registra un'autorità di certificazione con AWS.
-
Generare le chiavi su ATECC608A ed esportare la chiave pubblica e il numero di serie del dispositivo.
-
Genera un certificato per il dispositivo e registra quel certificato con AWS.
-
-
Caricare il certificato CA e il certificato del dispositivo sul dispositivo seguendo le istruzioni in Developer-mode fornitura di chiavi.
Monitoraggio dei messaggi MQTT su AWS Cloud
Prima di eseguire il progetto demo di FreeRTOS, puoi configurare il client MQTT nella AWS IoT console per monitorare i messaggi che il tuo dispositivo invia al Cloud. AWS
Per iscriverti all'argomento MQTT con AWS IoT Client MQTT
-
Accedere alla AWS IoT console
. -
Nel pannello di navigazione, scegli Test, quindi scegli MQTT Test Client.
-
Nell'argomento Abbonamento, inserisci
e scegli Abbonati all'argomento.your-thing-name/example/topic
Crea, esegui il flashing ed esegui il progetto demo di FreeRTOS usando lo script idf.py
Puoi usare l'utilità IDF (idf.py) di Espressif per generare i file di compilazione, compilare il binario dell'applicazione e flashare i binari sul tuo dispositivo.
Nota
Alcune configurazioni potrebbero richiedere l'uso dell'opzione di porta "-p port-name" with idf.py per specificare la porta corretta, come nell'esempio seguente.
idf.py -p /dev/cu.usbserial-00101301B flash
Compila ed esegui il flashing di FreeRTOS su Windows, Linux e macOS (v4.2) ESP-IDF
-
Vai alla radice della tua directory di download di FreeRTOS.
-
In una finestra a riga di comando, inserisci il seguente comando per aggiungere ESP-IDF gli strumenti al PATH del tuo terminale:
- Windows (app «Command»)
-
vendors\espressif\esp-idf\export.bat - Windows (app «ESP-IDF 4.x CMD»)
-
(Questa operazione è già stata eseguita quando hai aperto l'app.)
- Linux/macOS
-
source vendors/espressif/esp-idf/export.sh
-
Configura cmake nella
builddirectory e crea l'immagine del firmware con il seguente comando.idf.py -DVENDOR=espressif -DBOARD=esp32_ecc608a_devkitc -DCOMPILER=xtensa-esp32 buildDovresti vedere un output come questo nell'esempio seguente.
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'Se non ci sono errori, la build genererà i file binari .bin del firmware.
-
Cancellate la memoria flash della vostra scheda di sviluppo con il seguente comando.
idf.py erase_flash -
Usa lo
idf.pyscript per caricare il file binario dell'applicazione sulla tua scheda.idf.py flash -
Monitora l'output dalla porta seriale della tua scheda con il seguente comando.
idf.py monitorNota
-
È possibile combinare questi comandi come nell'esempio seguente.
idf.py erase_flash flash monitor -
Per alcune configurazioni del computer host, è necessario specificare la porta quando si esegue il flashing della scheda, come nell'esempio seguente.
idf.py erase_flash flash monitor -p /dev/ttyUSB1
-
Crea e installa FreeRTOS con CMake
Oltre a utilizzare lo idf.py script fornito dall'IDF SDK per creare ed eseguire il codice, puoi anche creare il progetto con CMake. Attualmente supporta Unix Makefile e il sistema di compilazione Ninja.
Per creare e aggiornare il progetto
-
In una finestra a riga di comando, vai alla radice della tua directory di download di FreeRTOS.
-
Esegui il seguente script per aggiungere ESP-IDF gli strumenti al PATH della tua shell.
- Windows
-
vendors\espressif\esp-idf\export.bat - Linux/macOS
-
source vendors/espressif/esp-idf/export.sh
-
Immetti il seguente comando per generare i file di build.
- Con 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 - Con 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
-
Cancella il flash e poi fai lampeggiare la lavagna.
- Con Unix Makefiles
-
make -C ./YOUR_BUILD_DIRECTORYerase_flashmake -C ./YOUR_BUILD_DIRECTORYflash - Con Ninja
-
ninja -C ./YOUR_BUILD_DIRECTORYerase_flashninja -C ./YOUR_BUILD_DIRECTORYflash
Informazioni aggiuntive
Per ulteriori informazioni sull'utilizzo e la risoluzione dei problemi delle schede Espressif ESP32, consulta i seguenti argomenti: