Criar um aplicativo de alto nível
Importante
Esta é a documentação do Azure Sphere (Legado). O Azure Sphere (Legado) será desativado em 27 de setembro de 2027 e os usuários devem migrar para o Azure Sphere (Integrado) até esse momento. Use o seletor de versão localizado acima do sumário para exibir a documentação do Azure Sphere (Integrado).
A maneira mais fácil de criar um novo aplicativo de alto nível é começar com o modelo em branco da extensão do Visual Studio Code Azure Sphere e ajustar a configuração ao seu projeto seguindo estas etapas:
Inicie o Visual Studio Code. Selecione Exibir>paleta de comandos e digite Azure Sphere: Gerar novo projeto.
Escolha HL Blank no menu Modelos.
Em seguida, o Visual Studio Code exibe uma janela do Explorador de Arquivos. Navegue até a pasta onde deseja colocar o aplicativo em branco e especifique um nome para seu projeto, por exemplo, NewHLApp. Visual Studio Code cria a pasta NewHLApp em seu local selecionado e gera os arquivos de compilação para o aplicativo em branco. Deverá ver mensagens do CMake.
Abra o arquivo CMakeLists.txt e especifique a pasta que contém definições para o hardware que você está usando. Por padrão, o aplicativo HL Blank não contém definições de hardware. Você pode encontrar definições de hardware de exemplo no repositório de Exemplos do Azure Sphere ou criar uma conforme descrito em Definições de hardware.
A seguir mostra como adicionar as definições de hardware de exemplo para o Seeed Azure Sphere MT3620 Development Kit:
azsphere_target_hardware_definition(${PROJECT_NAME} TARGET_DIRECTORY "HardwareDefinitions/mt3620_rdb" TARGET_DEFINITION "sample_appliance.json")
Esta linha deve ser inserida antes do início
azsphere_target_add_image_package
do comando final.
Você também pode criar um novo aplicativo de alto nível a partir de qualquer um dos exemplos de alto nível do Azure Sphere:
Clone o repositório de amostras, se ainda não o tiver feito. Copie uma das pastas de aplicativos de alto nível e renomeie-a para seu projeto.
No arquivo CMakeLists.txt, altere o nome do projeto para o nome da nova pasta. Por exemplo:
PROJECT(NewHLApp C)
A maneira mais fácil de criar um novo aplicativo de alto nível é começar com o modelo em branco da extensão do Visual Studio Azure Sphere e ajustar a configuração ao seu projeto seguindo estas etapas:
Inicie o Visual Studio e selecione Criar um novo projeto.
Digite
Azure Sphere
na caixa de pesquisa Procurar modelos. Selecione Azure Sphere HLCore Blank na lista retornada e, em seguida, selecione Next.Especifique um nome de projeto (por exemplo, NewHLApp), um local de arquivo de projeto e um nome de solução (que pode ser o mesmo que o nome do projeto) e selecione Criar. Visual Studio cria a pasta NewHLpp em seu local selecionado e gera os arquivos de compilação para o aplicativo em branco. Deverá ver mensagens do CMake.
Abra o arquivo CMakeLists.txt e especifique a pasta que contém definições para o hardware que você está usando. Por padrão, o aplicativo HL Blank não contém definições de hardware. Você pode encontrar definições de hardware de exemplo no repositório de Exemplos do Azure Sphere ou criar uma conforme descrito em Definições de hardware.
A seguir mostra como adicionar as definições de hardware de exemplo para o Seeed Azure Sphere MT3620 Development Kit:
azsphere_target_hardware_definition(${PROJECT_NAME} TARGET_DIRECTORY "HardwareDefinitions/mt3620_rdb" TARGET_DEFINITION "sample_appliance.json")
Esta linha deve ser inserida antes do início
azsphere_target_add_image_package
do comando final.
Você também pode criar um novo aplicativo de alto nível a partir de qualquer um dos exemplos de alto nível do Azure Sphere:
Clone o repositório de amostras, se ainda não o tiver feito. Copie uma das pastas de aplicativos de alto nível e renomeie-a para seu projeto.
No arquivo CMakeLists.txt, altere o nome do projeto para o nome da nova pasta. Por exemplo:
PROJECT(NewHLApp C)
A maneira mais fácil de criar um novo aplicativo de alto nível é começar com qualquer um dos exemplos de alto nível do Azure Sphere:
Clone o repositório de amostras, se ainda não o tiver feito. Copie uma das pastas de aplicativos de alto nível e renomeie-a para seu projeto.
No arquivo CMakeLists.txt, altere o nome do projeto para o nome da nova pasta. Por exemplo:
PROJECT(NewHLApp C)
Estrutura básica de arquivos de um aplicativo de alto nível
Não importa como você cria seu aplicativo, todos os aplicativos do Azure Sphere compartilham os seguintes arquivos principais:
- Código-fonte do aplicativo em um ou mais arquivos. Atualmente, apenas o código-fonte da linguagem C é suportado.
- CMake arquivos de compilação. CMakeLists.txt é necessário. O CMake, juntamente com o utilitário de compilação leve ninja, é usado para controlar o processo de compilação do aplicativo Azure Sphere.
- Um arquivo de manifesto do aplicativo que descreve os recursos disponíveis para o aplicativo.
Os aplicativos de alto nível normalmente terão pelo menos três outros arquivos:
- Um arquivo applibs-versions.h para especificar os níveis de versão de várias APIs do Azure Sphere
- Dois arquivos de definição de hardware (uma versão editável no formato JSON e um arquivo de inclusão em linguagem C gerado a partir dele) que fornecem uma maneira conveniente de se referir aos componentes de hardware em seu código. Com um conjunto consistente de arquivos de definição de hardware, você pode escrever código-fonte independente de hardware e, em seguida, criar imagens de aplicativos para hardware específico simplesmente redirecionando o arquivo de definição de hardware apropriado em seu arquivo CMakeLists.txt.
Escreva o seu código
- Escreva o código do seu aplicativo usando os exemplos de aplicativo de alto nível do Azure Sphere como guias. Os tópicos a seguir descrevem cenários de implementação específicos:
- Usar periféricos em um aplicativo de alto nível
- Ligar a serviços Web
- Use wolfSSL para conexões TLS
- Gerenciar certificados
- Compreender o uso da memória
- Adiar atualizações de dispositivos
- Gerencie o tempo e use o relógio em tempo real
- Usar o armazenamento do dispositivo
- Comunique-se com um aplicativo capaz de trabalhar em tempo real
- Gerenciar o estado de desligamento
- Definir perfis de alimentação
- Executar descoberta de serviço
- No ficheiro CMakeLists.txt:
- Especificar a revisão das ferramentas do SDK do Azure Sphere
- Especificar conjunto de APIs de destino
- Especificar o hardware de destino
- No ficheiro app_manifest.json:
- Defina
Name
como nome do projeto. - Adicione todos os recursos específicos do aplicativo que seu código exige, como recursos de hardware ou conexões. Se o aplicativo de alto nível se comunicar com um RTApp, adicione o ID do componente do aplicativo de alto nível ao
AllowedApplicationConnections
recurso.
- Defina
Se você quiser implantar seu aplicativo de alto nível junto com um aplicativo de parceiro com capacidade em tempo real, adicione a ID do componente do parceiro ao campo partnerComponents da seção de configurações do arquivo launch.vs.json (Visual Studio) ou .vscode/launch.json (Visual Studio Code):
"partnerComponents": [ "25025d2c-66da-4448-bae1-ac26fcdd3627" ]