ESP-IDF é a estrutura oficial de desenvolvimento do chip ESP32.
Consulte os guias de configuração para obter instruções detalhadas sobre como configurar o ESP-IDF:
Assim como o projeto esp-idf-template mencionado no guia de configuração, o ESP-IDF vem com alguns projetos de exemplo no diretório de exemplos.
Depois de encontrar o projeto com o qual deseja trabalhar, mude para seu diretório e você poderá configurá-lo e construí-lo.
make menuconfig
?
para ver uma tela de ajuda. A tecla Enter sai da tela de ajuda.Y
e N
para ativar (Sim) e desativar (Não) itens de configuração com caixas de seleção " [*]
"?
enquanto realça um item de configuração exibe ajuda sobre esse item./
para pesquisar os itens de configuração.Depois de concluir a configuração, pressione Escape várias vezes para sair e diga “Sim” para salvar a nova configuração quando solicitado.
make all
... irá compilar o aplicativo, o bootloader e gerar uma tabela de partição com base na configuração.
Quando make all
, ele imprimirá uma linha de comando para usar esptool.py para atualizar o chip. No entanto, você também pode fazer isso no make executando:
make flash
Isso irá atualizar todo o projeto (aplicativo, bootloader e tabela de partição) para um novo chip. As configurações para flashing da porta serial podem ser definidas com make menuconfig
.
Você não precisa executar make all
antes de executar make flash
, make flash
reconstruirá automaticamente tudo o que precisar.
O destino make monitor
usará o minitermo já instalado (uma parte do pyserial) para exibir a saída serial do ESP32 no console do terminal.
Saia do minitermo digitando Ctrl-].
Para atualizar e monitorar a saída em uma passagem, você pode executar:
make flash monitor
Após o flash inicial, você pode querer apenas construir e atualizar apenas seu aplicativo, não o gerenciador de inicialização e a tabela de partições:
make app
- crie apenas o aplicativo.make app-flash
- atualize apenas o aplicativo. make app-flash
reconstruirá automaticamente o aplicativo se necessário.
(No desenvolvimento normal, não há desvantagem em atualizar novamente o gerenciador de inicialização e a tabela de partições todas as vezes, se eles não tiverem sido alterados.)
ESP-IDF suporta a compilação de vários arquivos em paralelo, então todos os comandos acima podem ser executados como make -jN
onde N
é o número de processos make paralelos a serem executados (geralmente N deve ser igual ou um a mais que o número de núcleos da CPU em seu sistema.)
Várias funções make podem ser combinadas em uma. Por exemplo: para construir o aplicativo e o bootloader usando 5 trabalhos em paralelo, atualize tudo e exiba a saída serial da execução do ESP32:
make -j5 flash monitor
Depois de compilar seu projeto, o diretório “build” conterá um arquivo binário com um nome como “my_app.bin”. Este é um binário de imagem ESP32 que pode ser carregado pelo bootloader.
O flash de um único ESP32 pode conter vários aplicativos, bem como muitos tipos diferentes de dados (dados de calibração, sistemas de arquivos, armazenamento de parâmetros, etc.). Por esse motivo, uma tabela de partição é atualizada para compensar 0x4000 na atualização.
Cada entrada na tabela de partição possui um nome (rótulo), tipo (aplicativo, dados ou qualquer outra coisa), subtipo e o deslocamento em flash onde a partição é carregada.
A maneira mais simples de usar a tabela de partição é make menuconfig
e escolher uma das tabelas de partição simples predefinidas:
Em ambos os casos, o aplicativo de fábrica é atualizado no deslocamento 0x10000. Se você make partition_table
, ele imprimirá um resumo da tabela de partições.
Para obter mais detalhes sobre tabelas de partição e como criar variações personalizadas, consulte o arquivo docs/partition-tables.rst
.
O alvo make flash
não apaga todo o conteúdo do flash. No entanto, às vezes é útil redefinir o dispositivo para um estado totalmente apagado, principalmente ao fazer alterações na tabela de partições ou atualizações de aplicativos OTA. Para apagar todo o flash, execute make erase_flash
.
Isso pode ser combinado com outros alvos, ou seja, make erase_flash flash
apagará tudo e, em seguida, atualizará novamente o novo aplicativo, bootloader e tabela de partição.
Documentação para a versão mais recente: http://esp-idf.readthedocs.io/. Esta documentação foi construída a partir do diretório docs deste repositório.
O fórum esp32.com é um lugar para fazer perguntas e encontrar recursos da comunidade.
Verifique a seção Problemas no github se você encontrar um bug ou tiver uma solicitação de recurso. Verifique os problemas existentes antes de abrir um novo.
Se você estiver interessado em contribuir para o ESP-IDF, consulte o Guia de Contribuições.