Conceitos básicos do simulador de dispositivo do Windows - FreeRTOS

Conceitos básicos do simulador de dispositivo do Windows

Este tutorial fornece instruções para começar a usar o simulador de dispositivos do Windows com o FreeRTOS.

Antes de começar, você deve configurar o AWS IoT e seu download do FreeRTOS para conectar seu dispositivo à nuvem da AWS. Para obter instruções, consulte Primeiras etapas. Neste tutorial, o caminho para o diretório de download do FreeRTOS é chamado freertos.

O FreeRTOS é liberado como um arquivo zip que contém as bibliotecas e aplicações de exemplo para a plataforma especificada. Para executar os exemplos em uma máquina Windows, faça download das bibliotecas e dos exemplos migrados para executar no Windows. Esse conjunto de arquivos é conhecido como simulador do FreeRTOS para Windows.

nota

Este tutorial não pode ser executado com êxito em instâncias Windows do Amazon EC2.

Configuração do ambiente de desenvolvimento

  1. Instale a versão mais recente do Npcap. Selecione o "modo compatível com a API WinPcap" durante a instalação.

  2. Instale o Microsoft Visual Studio.

    As versões 2017 e 2019 do Visual Studio funcionam. Todas as edições dessas versões do Visual Studio são compatíveis (Community, Professional ou Enterprise).

    Além do IDE, instale o componente Desktop development with C++ (Desenvolvimento de desktop com C++).

    Instale a versão mais recente do SDK do Windows 10. Você pode escolher isso na seção Optional (Opcional) do componente Desktop development with C++ (Desenvolvimento de desktop com C++).

  3. Verifique se você tem uma conexão Ethernet fixa ativa.

  4. (Opcional) Se você quiser usar o sistema de compilação com base em CMake para criar seus projetos do FreeRTOS, instale a versão mais recente da CMake. O FreeRTOS exige a versão 3.13 ou posterior da CMake.

Monitoramento de mensagens MQTT na nuvem

Antes de executar o projeto de demonstração do FreeRTOS, você pode configurar o cliente MQTT no console do AWS IoT para monitorar as mensagens enviadas pelo dispositivo para a nuvem da AWS.

Para assinar o tópico MQTT com o cliente MQTT do AWS IoT
  1. Faça login no console do AWS IoT.

  2. No painel de navegação, escolha Teste e, em seguida, escolha cliente de teste MQTT para abrir o cliente MQTT.

  3. Em Tópico de inscrição, insira your-thing-name/example/topic e selecione Inscreva-se no tópico.

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.

Compilação e execução do projeto de demonstração do FreeRTOS

Você pode usar o Visual Studio ou CMake para compilar projetos do FreeRTOS.

Compilação e execução do projeto de demonstração do FreeRTOS com o IDE do Visual Studio

  1. Carregue o projeto no Visual Studio.

    No Visual Studio, no menu File (Arquivo), escolha Open (Abrir). Escolha File/Solution (Arquivo/solução), navegue até o arquivo projects/pc/windows/visual_studio/aws_demos/aws_demos.sln e escolha Open (Abrir).

  2. Defina um novo destino para o projeto de demonstração.

    O projeto de demonstração fornecido depende do SDK do Windows, mas ele não tem uma versão do SDK do Windows especificada. Por padrão, o IDE pode tentar compilar a demonstração com uma versão do SDK que não está presente em sua máquina. Para definir a versão do SDK do Windows, clique com o botão direito do mouse em aws_demos e escolha Retarget Projects (Definir novos destinos para os projetos). Isso abre a janela Review Solution Actions (Revisar ações de solução). Escolha uma versão do SDK do Windows que esteja presente em sua máquina (o valor inicial na lista suspensa está bom) e escolha OK.

  3. Crie e execute o projeto.

    No menu Build (Criar), escolha Build Solution (Criar solução) e certifique-se de que a solução seja criada sem erros ou avisos. Escolha Debug (Depurar), Start Debugging (Começar a depurar) para executar o projeto. Na primeira execução, será necessário selecionar uma interface de rede.

Criação e execução do projeto de demonstração do FreeRTOS com CMake

Recomendamos que você use a GUI do CMake em vez da ferramenta de linha de comando do CMake para compilar o projeto de demonstração do simulador do Windows.

Depois de instalar o CMake, abra a GUI do CMake. No Windows, ele pode ser encontrado no menu Iniciar, em CMake, CMake (cmake-gui).

  1. Defina o diretório de código-fonte do FreeRTOS.

    Na GUI, defina o diretório de código-fonte do FreeRTOS (freertos) como No qual está o código-fonte.

    Defina freertos/build como Where to build the binaries (Onde compilar os binários).

  2. Configure o projeto do CMake.

    Na GUI do CMake, escolha Add Entry (Adicionar entrada), na janela Add Cache Entry (Adicionar entrada de cache), defina os seguintes valores:

    Name

    AFR_BOARD

    Tipo

    STRING

    Valor

    pc.windows

    Descrição

    (Opcional)

  3. Selecione Configurar. Se o CMake solicitar que você crie o diretório de compilação, escolha Yes (Sim) e selecione um gerador em Specify the generator for this project (Especificar o gerador para esse projeto). Recomendamos usar o Visual Studio como gerador, mas o Ninja também é compatível. (Observe que, ao usar o Visual Studio 2019, a plataforma deve ser definida como Win32, em vez de sua configuração padrão.) Mantenha as outras opções de gerador inalteradas e escolha Concluir.

  4. Gere e abra o projeto CMake.

    Após configurar o projeto, a GUI do CMake mostra todas as opções disponíveis para o projeto gerado. Para os fins deste tutorial, você pode deixar as opções em seus valores padrão.

    Escolha Generate (Gerar) para criar uma solução do Visual Studio e escolha Open Project (Abrir projeto) para abrir o projeto no Visual Studio.

    No Visual Studio, clique com o botão direito do mouse no projeto aws_demos e escolha Set as StartUp Project (Definir como projeto de inicialização). Isso permite que você crie e execute o projeto. Na primeira execução, será necessário selecionar uma interface de rede.

Para obter mais informações sobre o uso do CMake com o FreeRTOS, consulte Uso da CMake com o FreeRTOS.

Configuração da interface de rede

Na primeira execução do projeto de demonstração, você deve selecionar a interface de rede a ser usada. O programa conta suas interfaces de rede. Encontre o número da interface Ethernet fixa. O resultado deve ser semelhante ao seguinte:

0 0 [None] FreeRTOS_IPInit 1 0 [None] vTaskStartScheduler 1. rpcap://\Device\NPF_{AD01B877-A0C1-4F33-8256-EE1F4480B70D} (Network adapter 'Intel(R) Ethernet Connection (4) I219-LM' on local host) 2. rpcap://\Device\NPF_{337F7AF9-2520-4667-8EFF-2B575A98B580} (Network adapter 'Microsoft' on local host) The interface that will be opened is set by "configNETWORK_INTERFACE_TO_USE", which should be defined in FreeRTOSConfig.h ERROR: configNETWORK_INTERFACE_TO_USE is set to 0, which is an invalid value. Please set configNETWORK_INTERFACE_TO_USE to one of the interface numbers listed above, then re-compile and re-start the application. Only Ethernet (as opposed to Wi-Fi) interfaces are supported.

Depois de identificar o número da interface Ethernet fixa, feche a janela da aplicação. No exemplo anterior, o número a ser usado é 1.

Abra FreeRTOSConfig.h e defina configNETWORK_INTERFACE_TO_USE como o número que corresponde à sua interface de rede fixa.

Importante

Somente interfaces Ethernet são compatíveis. Não há suporte para Wi-Fi.

Solução de problemas

Solução de problemas comuns no Windows

Você poderá encontrar o seguinte erro ao tentar criar o projeto de demonstração com o Visual Studio:

Error "The Windows SDK version X.Y was not found" when building the provided Visual Studio solution.

O projeto deve ser direcionado a uma versão do SDK do Windows presente no seu computador.

Para obter mais informações sobre soluções de problemas gerais sobre os conceitos básicos do FreeRTOS, consulte Solução de problemas de conceitos básicos.