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á.
Introdução ao ESP32 Espressif -S2
Importante
Essa integração de referência está hospedada no RTOS repositório Amazon-Free, que está obsoleto. Recomendamos começar aqui ao criar um novo projeto. Se você já tem um RTOS projeto gratuito existente com base no repositório Amazon-FreeRTOS, agora obsoleto, consulte o. Guia de migração do RTOS repositório Github gratuito da Amazon
nota
Para explorar como integrar bibliotecas e demonstrações RTOS modulares gratuitas em seu próprio IDF projeto Espressif, consulte nossa integração de referência em destaque para ESP32
Visão geral
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.
-
Faça a compilação cruzada de um aplicativo de RTOS demonstração gratuito em 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 o Free RTOS em seu quadro Espressif, você deve configurar sua AWS conta e permissões.
Inscreva-se para um Conta da AWS
Se você não tiver um Conta da AWS, conclua as etapas a seguir para criar um.
Para se inscrever em um Conta da AWS
Abra a https://portal.aws.amazon.com/billing/inscrição.
Siga as instruções online.
Parte do procedimento de inscrição envolve receber uma chamada telefônica e inserir um código de verificação no teclado do telefone.
Quando você se inscreve em um Conta da AWS, um Usuário raiz da conta da AWSé criado. O usuário-raiz tem acesso a todos os Serviços da AWS e atributos na conta. Como prática recomendada de segurança, atribua o acesso administrativo a um usuário e use somente o usuário-raiz para executar tarefas que exigem acesso de usuário-raiz.
AWS envia um e-mail de confirmação após a conclusão do processo de inscrição. A qualquer momento, você pode visualizar a atividade atual da sua conta e gerenciar sua conta acessando https://aws.amazon.com/e
Criar um usuário com acesso administrativo
Depois de se inscrever em um Conta da AWS, proteja seu Usuário raiz da conta da AWS AWS IAM Identity Center, habilite e crie um usuário administrativo para que você não use o usuário root nas tarefas diárias.
Proteja seu Usuário raiz da conta da AWS
-
Faça login AWS Management Console
como proprietário da conta escolhendo Usuário raiz e inserindo seu endereço de Conta da AWS e-mail. Na próxima página, insira sua senha. Para obter ajuda ao fazer login usando o usuário raiz, consulte Fazer login como usuário raiz no Guia do usuário do Início de Sessão da AWS .
-
Ative a autenticação multifator (MFA) para seu usuário root.
Para obter instruções, consulte Habilitar um MFA dispositivo virtual para seu usuário Conta da AWS root (console) no Guia IAM do usuário.
Criar um usuário com acesso administrativo
-
Ative o IAM Identity Center.
Para obter instruções, consulte Habilitar AWS IAM Identity Center no Guia do usuário do AWS IAM Identity Center .
-
No IAM Identity Center, conceda acesso administrativo a um usuário.
Para ver um tutorial sobre como usar o Diretório do Centro de Identidade do IAM como fonte de identidade, consulte Configurar o acesso do usuário com o padrão Diretório do Centro de Identidade do IAM no Guia AWS IAM Identity Center do usuário.
Iniciar sessão como o usuário com acesso administrativo
-
Para entrar com seu usuário do IAM Identity Center, use o login URL que foi enviado ao seu endereço de e-mail quando você criou o usuário do IAM Identity Center.
Para obter ajuda para fazer login usando um usuário do IAM Identity Center, consulte Como fazer login no portal de AWS acesso no Guia Início de Sessão da AWS do usuário.
Atribuir acesso a usuários adicionais
-
No IAM Identity Center, crie um conjunto de permissões que siga as melhores práticas de aplicação de permissões com privilégios mínimos.
Para obter instruções, consulte Create a permission set no Guia do usuário do AWS IAM Identity Center .
-
Atribua usuários a um grupo e, em seguida, atribua o acesso de autenticação única ao grupo.
Para obter instruções, consulte Add groups no Guia do usuário do AWS IAM Identity Center .
Para conceder acesso, adicione as permissões aos seus usuários, grupos ou perfis:
-
Usuários e grupos em AWS IAM Identity Center:
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 AWS IAM Identity Center .
-
Usuários gerenciados IAM por meio de um provedor de identidade:
Crie um perfil para a federação de identidades. Siga as instruções em Criar uma função para um provedor de identidade terceirizado (federação) no Guia IAM do usuário.
-
IAMusuários:
-
Crie um perfil que seu usuário possa assumir. Siga as instruções em Criar uma função para um IAM usuário no Guia do IAM usuário.
-
(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 Adicionar permissões a um usuário (console) no Guia do IAM usuário.
-
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 desenvolvimento ESP32 -S2, consulte o Guia de introdução do ESP32-S2-Saola-1
. Importante
Ao chegar na seção Começar a usar dos guias do Espressif, pare e retorne para as instruções desta página.
-
Baixe Amazon gratuitamente RTOS em GitHub
. (Para obter instruções, consulte o READMEarquivo.md .) -
Configure o ambiente de desenvolvimento.
Para se comunicar com sua placa, você deve instalar uma cadeia de ferramentas. A Espressif fornece o ESP - IDF para desenvolver software para suas placas. Como o ESP - IDF tem sua própria versão do Free RTOS Kernel integrada como um componente, o Amazon Free RTOS inclui uma versão personalizada do ESP - IDF v4.2 que tem o Free RTOS Kernel removido. Isso corrige problemas com arquivos duplicados durante a compilação. Para usar a versão personalizada do ESP - IDF v4.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 IDF diretório existente ESP - e defina Escolher IDF diretório existente ESP - 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 RTOS download gratuito e execute o script a seguir para baixar e instalar o conjunto de ferramentas espressif em sua plataforma.
vendors/espressif/esp-idf/install.sh
-
Adicione as IDF ferramentas ESP - toolchain 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 RTOS download gratuito e execute o script a seguir para baixar e instalar o conjunto de ferramentas Espressif em sua plataforma.
vendors/espressif/esp-idf/install.sh
-
Adicione as IDF ferramentas ESP - toolchain 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 - DevKit C, instale os VCP drivers CP21 0x USB no UART Bridge. 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.
-
Configure os aplicativos de RTOS demonstração gratuitos
Para este tutorial, o arquivo RTOS de configuração gratuito 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
-
Se você estiver executando macOS ou Linux, abra um prompt de terminal. Se você estiver executando o Windows, abra o aplicativo "ESP- IDF 4.xCMD" (se você incluiu essa opção ao instalar o conjunto de IDF ferramentas ESP -) ou o aplicativo “Prompt de comando”, caso contrário.
-
Para verificar se você tem o Python3 instalado, execute o seguinte:
python --version
A versão instalada é exibida. Se você não tiver o Python 3.0.1 ou posterior instalado, poderá instalá-lo a partir do site do Python
. -
Você precisa da interface de linha de AWS comando (CLI) para executar AWS IoT comandos. Se você estiver executando o Windows, use o
easy_install awscli
comando para instalar o AWS CLI no aplicativo “Command” ou "ESP- IDF 4.xCMD”.Se você estiver executando o macOS ou o Linux, consulte Instalando o. AWS CLI
-
Executar
aws configure
e configure-o AWS CLI com seu ID de chave de AWS acesso, chave de acesso secreta e AWS região padrão. Para obter mais informações, consulte Configurando o. AWS CLI
-
Use o comando a seguir para instalar o AWS SDK for Python (boto3):
-
No Windows, no aplicativo “Command” ou "ESP- IDF 4.xCMD", execute
easy_install boto3
-
No macOS ou Linux, execute
pip install tornado nose --user
e depois execute
pip install boto3 --user
-
Gratuito RTOS inclui o SetupAWS.py
script para facilitar a configuração da sua placa Espressif à qual se conectar. AWS IoT
Para executar o script de configuração
-
Para configurar o script, abra
e defina os seguintes atributos:freertos
/tools/aws_config_quick_start/configure.jsonafr_source_dir
-
O caminho completo para o diretório
no computador. Certifique-se de usar barras para especificar esse caminho.freertos
thing_name
-
O nome que você deseja atribuir à AWS IoT coisa que representa seu quadro.
wifi_ssid
-
O SSID da sua rede Wi-Fi.
wifi_password
-
A senha da rede Wi-Fi.
wifi_security
-
O tipo de segurança da rede Wi-Fi. Os tipos de segurança válidos estão a seguir:
-
eWiFiSecurityOpen
(Aberto, sem segurança) -
eWiFiSecurityWEP
(WEPsegurança) -
eWiFiSecurityWPA
(WPAsegurança) -
eWiFiSecurityWPA2
(WPA2segurança)
-
-
Se você estiver executando macOS ou Linux, abra um prompt de terminal. Se você estiver executando o Windows, abra o aplicativo "ESP- IDF 4.xCMD" ou “Command”.
-
Navegue até o diretório
e executefreertos
/tools/aws_config_quick_startpython SetupAWS.py setup
O script faz o seguinte:
-
Cria AWS IoT algo, certificado e política.
-
Anexa a AWS IoT política ao certificado e o certificado à AWS IoT coisa.
-
Preenche o
aws_clientcredential.h
arquivo com seu AWS IoT endpointSSID, Wi-Fi e credenciais. -
Formata o certificado e a chave privada e os grava no arquivo de cabeçalho
aws_clientcredential_keys.h
.
nota
O certificado é codificado apenas para fins de demonstração. Por este motivo, as aplicações devem armazenar esses arquivos em um local seguro.
Para obter mais informações sobre
SetupAWS.py
, consulteREADME.md
no diretório
.freertos
/tools/aws_config_quick_start -
Monitorando MQTT mensagens na AWS nuvem
Antes de executar o projeto de RTOS demonstração gratuito, você pode configurar o MQTT cliente no AWS IoT console para monitorar as mensagens que seu dispositivo envia para a AWS nuvem.
Para assinar o MQTT tópico com o AWS IoT MQTT cliente
-
Faça login no console do AWS IoT
. -
No painel de navegação, escolha Teste e, em seguida, escolha Cliente MQTT de teste.
-
Em Tópico de inscrição, insira
e selecione Inscreva-se no tópico.your-thing-name
/example/topic
Quando o projeto de demonstração for executado com êxito em seu dispositivo, você verá "Olá, mundo!". enviado várias vezes para o tópico em que você assinou.
Crie, atualize e execute o projeto de RTOS demonstração gratuito usando o script idf.py
Você pode usar o IDF utilitário do Espressif para gerar os arquivos de compilação, criar o binário do aplicativo e atualizar sua placa.
Crie e atualize gratuitamente RTOS no Windows, Linux e macOS (ESP- IDF v4.2)
Use o script idf.py
para compilar o projeto 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
Como compilar e instalar o projeto
-
Navegue até a raiz do seu diretório de RTOS download gratuito.
-
Em uma janela de linha de comando, digite o seguinte comando para adicionar as IDF ferramentas ESP - às do seu terminalPATH:
- Windows (aplicação "Comando")
-
vendors\espressif\esp-idf\export.bat
- Windows (aplicativo” ESP - IDF 4.xCMD”)
-
(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
build
e compile a imagem do firmware com o comando a seguir.idf.py -DVENDOR=espressif -DBOARD=esp32s2_saola_1 -DCOMPILER=xtensa-esp32s2 build
A saída deverá ser parecida com a do exemplo a seguir.
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'
Se não houver erros, a compilação gera 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.py
para 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 monitor
nota
-
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
-
Crie e use o Flash Free RTOS com CMake
Além de usar o idf.py
script fornecido pelo IDF SDK para criar e executar seu código, você também pode criar o projeto comCMake. 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 de linha de comando, navegue até a raiz do seu diretório de RTOS download gratuito.
-
Execute o script a seguir para adicionar as IDF ferramentas ESP - ao seu shellPATH.
-
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=esp32s2_saola_1 -DCOMPILER=xtensa-esp32s2 -S . -B ./
YOUR_BUILD_DIRECTORY
-DAFR_ENABLE_ALL_MODULES=1 -DAFR_ENABLE_TESTS=0 -
Com 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
-
-
Crie o projeto.
-
Com Makefiles da Unix
make -C ./
YOUR_BUILD_DIRECTORY
-j8 -
Com Ninja
ninja -C ./
YOUR_BUILD_DIRECTORY
-j8
-
-
Apague a instalada e depois instale a placa.
-
Com Makefiles da Unix
make -C ./
YOUR_BUILD_DIRECTORY
erase_flashmake -C ./
YOUR_BUILD_DIRECTORY
flash -
Com Ninja
ninja -C ./
YOUR_BUILD_DIRECTORY
erase_flashninja -C ./
YOUR_BUILD_DIRECTORY
flash
-
Mais informações
Para obter mais informações sobre como usar e solucionar problemas de ESP32 placas Espressif, consulte os tópicos a seguir: