As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Começando com o Espressif ESP32-WROOM-32SE
Importante
Essa integração de referência está hospedada no Amazon-FreeRTOS repositório que está obsoleto. Recomendamos começar aqui ao criar um novo projeto. Se você já tem um projeto FreeRTOS existente com base no repositório agora Amazon-FreeRTOS obsoleto, consulte o. Amazon-FreeRTOS Guia de migração do repositório Github
nota
-
Atualmente, a porta FreeRTOS ESP32-WROOM-32SE para não suporta o recurso de multiprocessamento simétrico (SMP).
Este tutorial mostra como começar a usar o ESP32-WROOM-32SE Espressif. Para comprar um de nosso AWS parceiro no catálogo de dispositivos parceiros, consulte ESP32-WROOM-32SE
Visão geral do
Este tutorial orienta você pelas seguintes etapas:
-
Conectar a placa a uma máquina host.
-
Instalar o software na máquina host para desenvolver e depurar aplicações incorporadas para a placa do microcontrolador.
-
Compilar uma aplicação de demonstração do FreeRTOS de forma cruzada para uma imagem binária.
-
Carregar a imagem binária do aplicativo em na placa e executar o aplicativo.
-
Monitorar e depurar a aplicação em execução usando uma conexão serial.
Pré-requisitos
Antes de começar a usar os FreeRTOS em seu quadro Espressif, você deve configurar sua conta e permissões. AWS
Inscreva-se para um Conta da AWS
Para começar AWS, você precisa de um Conta da AWS. Para obter informações sobre como criar um Conta da AWS, consulte Introdução a um Conta da AWS no Guia de AWS Gerenciamento de contas referência.
Para conceder acesso, adicione as permissões aos seus usuários, grupos ou perfis:
-
Usuários e grupos em Centro de Identidade do AWS IAM:
Crie um conjunto de permissões. Siga as instruções em Criação de um conjunto de permissões no Guia do usuário do Centro de Identidade do AWS IAM .
-
Usuários gerenciados no IAM com provedor de identidades:
Crie um perfil para a federação de identidades. Siga as instruções em Criando um perfil para um provedor de identidades de terceiros (federação) no Guia do Usuário do IAM.
-
Usuários do IAM:
-
Crie um perfil que seu usuário possa assumir. Siga as instruções em Criação de um perfil para um usuário do IAM no Guia do usuário do IAM.
-
(Não recomendado) Vincule uma política diretamente a um usuário ou adicione um usuário a um grupo de usuários. Siga as instruções em Adição de permissões a um usuário (console) no Guia do usuário do IAM.
-
Conceitos básicos
nota
Os comandos do Linux neste tutorial exigem o uso do shell Bash.
-
Configuração de hardware da Espressif.
Para obter informações sobre como configurar o hardware da placa de ESP32-WROOM-32SE desenvolvimento, consulte o Guia de introdução da ESP32-DevKitC V4
. Importante
Ao chegar à seção Guia detalhado de instalação deste guia, siga até concluir a Etapa 4 (Configurar as variáveis de ambiente). Pare depois de concluir a Etapa 4 e siga as etapas restantes aqui.
-
Faça o download dos Amazon GitHub
FreeRTOS em. (Para obter instruções, consulte o README.md arquivo.) -
Configure o ambiente de desenvolvimento.
Para se comunicar com sua placa, você deve instalar uma cadeia de ferramentas. A Espressif fornece o desenvolvimento ESP-IDF de software para suas placas. Como ESP-IDF tem sua própria versão do Kernel do FreeRTOS integrada como um componente, o Amazon FreeRTOS inclui uma versão personalizada da v4.2 que tem o Kernel do ESP-IDF FreeRTOS removido. Isso corrige problemas com arquivos duplicados durante a compilação. Para usar a versão personalizada da versão ESP-IDF 4.2 incluída no Amazon FreeRTOS, siga as instruções abaixo para o sistema operacional da sua máquina host.
Windows
-
Baixe ESP-IDF o Universal Online Installer
para Windows. -
Execute o Instalador online universal.
-
Ao chegar à etapa Baixar ou usar ESP-IDF, selecione Usar um ESP-IDF diretório existente e defina Escolher ESP-IDF diretório existente como
.freertos/vendors/espressif/esp-idf -
Concluir a instalação.
macOS
-
Siga as instruções na Configuração padrão dos pré-requisitos do Toolchain (ESP-IDF v4.2)
para macOS. Importante
Ao acessar as instruções “Obter ESP-IDF” em Próximas etapas, pare e retorne às instruções nesta página.
-
Abra a janela de linha de comando.
-
Navegue até o diretório de download do FreeRTOS e, em seguida, execute o script a seguir para baixar e instalar a cadeia de ferramentas do espressif em sua plataforma.
vendors/espressif/esp-idf/install.sh -
Adicione as ESP-IDF ferramentas do conjunto de ferramentas ao caminho do seu terminal com o comando a seguir.
source vendors/espressif/esp-idf/export.sh
Linux
-
Siga as instruções na Configuração padrão dos pré-requisitos do Toolchain (ESP-IDF v4.2
) para Linux. Importante
Ao acessar as instruções “Obter ESP-IDF” em Próximas etapas, pare e retorne às instruções nesta página.
-
Abra a janela de linha de comando.
-
Navegue até o diretório de download do FreeRTOS e execute o script a seguir para baixar e instalar a cadeia de ferramentas do Espressif em sua plataforma.
vendors/espressif/esp-idf/install.sh -
Adicione as ESP-IDF ferramentas do conjunto de ferramentas ao caminho do seu terminal com o comando a seguir.
source vendors/espressif/esp-idf/export.sh
-
-
Estabelecimento de uma conexão serial.
-
Para estabelecer uma conexão serial entre sua máquina host e o. ESP32-WROOM-32SE, instale os drivers CP210x USB para UART Bridge VCP. Você pode fazer download desses drivers no Silicon Labs
. -
Siga as etapas para Estabelecer uma conexão serial com ESP32
. -
Depois de estabelecer uma conexão serial, anote a porta serial da conexão de sua placa. Você precisa disso para instalar a demonstração.
-
Configuração das aplicações de demonstração do FreeRTOS
Para este tutorial, o arquivo de configuração do FreeRTOS está localizado em . (Por exemplo, se freertos/vendors/espressif/boards/board-name/aws_demos/config_files/FreeRTOSConfig.hAFR_BOARD espressif.esp32_devkitc for escolhido, o arquivo de configuração estará localizado em .) freertos/vendors/espressif/boards/esp32/aws_demos/config_files/FreeRTOSConfig.h
Importante
O dispositivo ATECC608A tem uma inicialização única que está bloqueada no dispositivo na primeira vez que um projeto é executado (durante a chamada para C_InitToken). No entanto, o projeto de demonstração e o projeto de teste do FreeRTOS têm configurações diferentes. Se o dispositivo estiver bloqueado durante as configurações do projeto de demonstração, nem todos os testes no projeto de teste serão bem-sucedidos.
-
Configure o projeto de demonstração do FreeRTOS seguindo as etapas em Configuração das demonstrações do FreeRTOS. Quando você chegar à última etapa Para formatar suas AWS IoT credenciais, pare e execute as etapas a seguir.
-
A Microchip forneceu várias ferramentas de script para ajudar a configurar as peças do ATECC608A. Navegue até o diretório
e abra o arquivofreertos/vendors/microchip/example_trust_chain_toolREADME.md. -
Siga as instruções no arquivo
README.mdpara provisionar seu dispositivo. As etapas incluem o seguinte:-
Crie e registre uma autoridade de certificação com AWS.
-
Gerar suas chaves no ATECC608A e exportar a chave pública e o número de série do dispositivo.
-
Gere um certificado para o dispositivo e registre esse certificado com AWS.
-
-
Carregar o certificado CA e o certificado de dispositivo no dispositivo seguindo as instruções para Developer-mode provisionamento de chaves.
Monitorando mensagens MQTT no AWS Nuvem
Antes de executar o projeto de demonstração do FreeRTOS, você pode configurar o cliente MQTT no console para monitorar AWS IoT as mensagens que seu dispositivo envia para a nuvem. AWS
Para assinar o tópico do MQTT com o AWS IoT Cliente MQTT
-
Faça login no console do AWS IoT
. -
No painel de navegação, escolha Teste e, em seguida, escolha Cliente de teste MQTT.
-
Em Tópico de assinatura, insira
e selecione Assinar o tópico.your-thing-name/example/topic
Compilação, atualização e execução do projeto de demonstração do FreeRTOS usando o script idf.py
Você pode usar o utilitário Espressif (idf.py) do IDF para gerar os arquivos de compilação, compilar o binário da aplicação e instalar os binários em seu dispositivo.
nota
Algumas configurações podem exigir que você use a opção de porta "-p port-name" comidf.py para especificar a porta correta, como no exemplo a seguir.
idf.py -p /dev/cu.usbserial-00101301B flash
Crie e atualize Freertos no Windows, Linux e macOS (v4.2) ESP-IDF
-
Navegue até a raiz do diretório de downloads do FreeRTOS.
-
Em uma janela de linha de comando, digite o seguinte comando para adicionar as ESP-IDF ferramentas ao PATH do seu terminal:
- Windows (aplicação "Comando")
-
vendors\espressif\esp-idf\export.bat - Windows (aplicativo “ESP-IDF 4.x CMD”)
-
(Isso já foi feito quando você abriu a aplicação.)
- Linux / macOS
-
source vendors/espressif/esp-idf/export.sh
-
Configure o cmake no diretório
builde compile a imagem do firmware com o comando a seguir.idf.py -DVENDOR=espressif -DBOARD=esp32_ecc608a_devkitc -DCOMPILER=xtensa-esp32 buildA saída deverá ser parecida com a do exemplo a seguir.
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 não houver erros, a compilação gerará os arquivos .bin binários do firmware.
-
Apague a memória instalada da placa de desenvolvimento com o comando a seguir.
idf.py erase_flash -
Use o script
idf.pypara instalar o binário da aplicação na placa.idf.py flash -
Monitore a saída da porta serial da placa com o comando a seguir.
idf.py monitornota
-
Você pode combinar esses comandos, como no exemplo a seguir.
idf.py erase_flash flash monitor -
Para determinadas configurações da máquina host, você deve especificar a porta ao instalar a placa, como no exemplo a seguir.
idf.py erase_flash flash monitor -p /dev/ttyUSB1
-
Compilação e instalação do FreeRTOS com o CMake
Além de usar o script idf.py fornecido pelo SDK do IDF para criar e executar seu código, você também pode compilar o projeto com o CMake. Atualmente, ele é compatível com o Makefile da Unix e o sistema de compilação Ninja.
Como compilar e instalar o projeto
-
Em uma janela da linha de comando, navegue até o diretório raiz de downloads do FreeRTOS.
-
Execute o script a seguir para adicionar as ESP-IDF ferramentas ao PATH do seu shell.
- Windows
-
vendors\espressif\esp-idf\export.bat - Linux / macOS
-
source vendors/espressif/esp-idf/export.sh
-
Insira o comando a seguir para gerar os arquivos de compilação.
- Com Makefiles da Unix
-
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 - Com 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
-
Apague a instalada e depois instale a placa.
- Com Makefiles da Unix
-
make -C ./YOUR_BUILD_DIRECTORYerase_flashmake -C ./YOUR_BUILD_DIRECTORYflash - Com Ninja
-
ninja -C ./YOUR_BUILD_DIRECTORYerase_flashninja -C ./YOUR_BUILD_DIRECTORYflash
Mais informações
Para obter mais informações sobre o uso e a solução de problemas das placas Espressif ESP32, consulte os seguintes tópicos: