Conceitos básicos do Nordic nRF52840-DK - Gratuito RTOS

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á.

Conceitos básicos do Nordic nRF52840-DK

Importante

Essa integração de referência está hospedada no repositório Amazon-FreeRTOS, que está preterido. Recomendamos começar aqui ao criar um novo projeto. Se você já tem um projeto FreeRTOS existente baseado no repositório Amazon-FreeRTOS que está preterido, consulte o Guia de migração do repositório Github do Amazon FreeRTOS.

Este tutorial fornece instruções para começar a usar o Nordic nRF52840-DK. Se você não tiver o Nordic nRF52840-DK, acesse o catálogo do AWS Partner Device para comprar um com nossos parceiros.

Antes de começar, você precisa Configure o AWS IoT Amazon Cognito para Freertos Bluetooth Low Energy.

Para executar a demonstração de Bluetooth Low Energy do FreeRTOS, você também precisa de um dispositivo móvel Android ou iOS com recursos de Bluetooth e Wi-Fi.

nota

Se você estiver usando um dispositivo iOS, precisará do Xcode para criar o aplicativo móvel de demonstração. Se você estiver usando um dispositivo Android, poderá usar o Android Studio para criar o aplicativo móvel de demonstração.

Visão geral

Este tutorial contém instruções para as seguintes etapas iniciais:

  1. Conectar sua placa a uma máquina host.

  2. Instalar software na máquina host para desenvolver e depurar aplicativos incorporados para seu microcontrolador.

  3. Compilar um aplicativo de demonstração do FreeRTOS de forma cruzada para uma imagem binária.

  4. Carregar a imagem binária do aplicativo em sua placa e executar o aplicativo.

  5. Interagir com o aplicativo em execução na placa em uma conexão serial para fins de monitoramento e depuração.

Configuração do hardware Nordic

Conecte seu computador host à porta USB chamada de J2, localizada diretamente acima do compartimento da bateria de célula em forma de moeda na sua placa Nordic nRF52840.

Para obter mais informações sobre como configurar o Nordic nRF52840-DK, consulte o Guia do usuário do kit de desenvolvimento do nRF52840.

Configuração do ambiente de desenvolvimento

Download e instalação do Segger Embedded Studio

O FreeRTOS oferece suporte ao Segger Embedded Studio como um ambiente de desenvolvimento para o Nordic nRF52840-DK.

Para configurar seu ambiente, você precisa fazer download do Segger Embedded Studio e instalá-lo no seu computador host.

Para fazer download do Segger Embedded Studio e instalá-lo
  1. Vá para a página Downloads do Segger Embedded Studio e escolha a opção Embedded Studio para ARM do seu sistema operacional.

  2. Execute o instalador e siga as instruções para a conclusão.

Configuração do aplicativo de demonstração do SDK móvel de Bluetooth Low Energy do FreeRTOS

Para executar o projeto de demonstração do FreeRTOS no Bluetooth Low Energy, é necessário executar o aplicativo de demonstração do SDK móvel de Bluetooth Low Energy do FreeRTOS em um dispositivo móvel.

Como configurar o aplicativo de demonstração do SDK móvel de Bluetooth Low Energy do FreeRTOS
  1. Siga as instruções em SDKs móveis para dispositivos Bluetooth do FreeRTOS para fazer download e instalar o SDK para sua plataforma móvel em seu computador host.

  2. Siga as instruções em aplicação de demonstração do SDK móvel de Bluetooth Low Energy do FreeRTOS para configurar o aplicativo móvel de demonstração no dispositivo móvel.

Estabelecimento de uma conexão serial

O Segger Embedded Studio inclui um emulador de terminal que você pode usar para receber mensagens de log em uma conexão serial com sua placa.

Para estabelecer uma conexão serial com o Segger Embedded Studio
  1. Abra o Segger Embedded Studio.

  2. No menu superior, escolha Target (Destino), Connect J-Link (Conectar J-Link).

  3. No menu superior, escolha Tools (Ferramentas), Terminal Emulator (Emulador de terminal), Properties (Propriedades) e defina as propriedades de acordo com as instruções em Instalação de um emulador de terminal.

  4. No menu superior, escolha Tools (Ferramentas), Terminal Emulator (Emulador de terminal), Connect port (Porta Connect) (115200,N,8,1).

nota

O emulador de terminal de estúdio incorporado Segger não oferece suporte a uma capacidade de entrada. Para isso, use um emulador de terminal como PuTTy, Tera Term ou GNU Screen. Configure o terminal para conectar-se à sua placa por uma conexão serial de acordo com as instruções em Instalação de um emulador de terminal.

Faça download e configure os FreeRTOS

Depois de configurar o hardware e o ambiente, faça download do FreeRTOS.

Baixe o FreeRTOS

Para fazer download do FreeRTOS para o Nordic nRF52840-DK, acesse a página GitHub do FreeRTOS e clone o repositório. Consulte o arquivo README.md para obter instruções.

Importante
  • Neste tópico, o caminho para o diretório de download do FreeRTOS é chamado de freertos.

  • Caracteres de espaço no caminho freertos podem causar falhas na compilação. Ao clonar ou copiar o repositório, verifique se o caminho criado não contém caracteres de espaço.

  • O tamanho máximo de um caminho de arquivo no Microsoft Windows é 260 caracteres. Caminhos longos de diretório de download do FreeRTOS podem causar falhas de compilação.

  • O código-fonte pode conter links simbólicos, por isso se estiver usando o Windows para extrair o arquivo, talvez seja necessário:

    Dessa forma, o Windows pode criar links simbólicos adequadamente ao extrair o arquivamento. Caso contrário, os links simbólicos serão gravados como arquivos comuns que contêm os caminhos dos links simbólicos como texto ou estão vazios. Para obter mais informações, consulte a entrada no blog Symlinks no Windows 10!.

    Se você usa o Git no Windows, você deve habilitar o modo Desenvolvedor ou deve:

    • Definir core.symlinks como verdadeiro com o seguinte comando:

      git config --global core.symlinks true
    • Use um console com privilégios de administrador sempre que usar um comando git que grava no sistema (por exemplo, git pull, git clone, e git submodule update --init --recursive).

Configuração do projeto

Para executar a demonstração, você deve configurar seu projeto para funcionar com o AWS IoT. Para configurar seu projeto para funcionar com a AWS IoT, o dispositivo deve estar registrado como uma coisa da AWS IoT. Você deve ter registrado o dispositivo quando Configure o AWS IoT Amazon Cognito para Freertos Bluetooth Low Energy.

Para configurar o endpoint da AWS IoT
  1. Faça login no console do AWS IoT.

  2. No painel de navegação, selecione Settings (configurações).

    O endpoint da AWS IoT é exibido na caixa de texto Endpoint de dados de dispositivo. Deve ser semelhante a 1234567890123-ats.iot.us-east-1.amazonaws.com. Anote esse endpoint.

  3. No painel de navegação, escolha Manage (Gerenciar) e, depois, Things (Coisas). Anote o nome da coisa da AWS IoT para o seu dispositivo.

  4. Com o endpoint da AWS IoT e o nome da coisa da AWS IoT disponíveis, abra freertos/demos/include/aws_clientcredential.h no IDE e especifique os valores das seguintes constantes #define:

    • clientcredentialMQTT_BROKER_ENDPOINT Seu endpoint da AWS IoT

    • clientcredentialIOT_THING_NAME O nome da coisa da AWS IoT da sua placa

Para habilitar a demonstração
  1. Verifique se a demonstração Bluetooth Low Energy GATT está habilitada. Navegue até vendors/nordic/boards/nrf52840-dk/aws_demos/config_files/iot_ble_config.h e adicione #define IOT_BLE_ADD_CUSTOM_SERVICES ( 1 ) à lista de instruções define.

  2. Abra vendors/nordic/boards/nrf52840-dk/aws_demos/config_files/aws_demo_config.h e defina um CONFIG_OTA_MQTT_BLE_TRANSPORT_DEMO_ENABLED ou CONFIG_OTA_HTTP_BLE_TRANSPORT_DEMO_ENABLED como neste exemplo.

    /* To run a particular demo you need to define one of these. * Only one demo can be configured at a time * * CONFIG_BLE_GATT_SERVER_DEMO_ENABLED * CONFIG_MQTT_BLE_TRANSPORT_DEMO_ENABLED * CONFIG_SHADOW_BLE_TRANSPORT_DEMO_ENABLED * CONFIG_OTA_MQTT_BLE_TRANSPORT_DEMO_ENABLED * CONFIG_OTA_HTTP_BLE_TRANSPORT_DEMO_ENABLED * CONFIG_POSIX_DEMO_ENABLED * * These defines are used in iot_demo_runner.h for demo selection */ #define CONFIG_OTA_MQTT_BLE_TRANSPORT_DEMO_ENABLED
  3. Como o chip Nordic é fornecido com muito pouca RAM (250 KB), a configuração de BLE pode precisar ser alterada para permitir entradas de tabela GATT maiores em comparação com o tamanho de cada atributo. Dessa forma, você pode ajustar a quantidade de memória que o aplicativo recebe. Para fazer isso, substitua as definições dos seguintes atributos no arquivo freertos/vendors/nordic/boards/nrf52840-dk/aws_demos/config_files/sdk_config.h:

    • NRF_SDH_BLE_VS_UUID_COUNT

      O número de UUIDs específicos do fornecedor. Aumente essa contagem em 1 ao adicionar um novo UUID específico do fornecedor.

    • NRF_SDH_BLE_GATTS_ATTR_TAB_SIZE

      O tamanho da tabela de atributos em bytes. O tamanho deve ser um múltiplo de 4. Esse valor indica a quantidade definida de memória dedicada para a tabela de atributos (incluindo o tamanho da característica), portanto, isso variará de projeto para projeto. Se você exceder o tamanho da tabela de atributos, receberá um erro NRF_ERROR_NO_MEM. Se você modificar o NRF_SDH_BLE_GATTS_ATTR_TAB_SIZE, normalmente também deverá redefinir as configurações de RAM.

    (Para testes, a localização do arquivo é freertos/vendors/nordic/boards/nrf52840-dk/aws_tests/config_files/sdk_config.h.)

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

Depois de fazer download do FreeRTOS e configurar o projeto de demonstração, você poderá compilar e executar o projeto de demonstração na placa.

Importante

Se esta for a primeira vez que você está executando a demonstração nesta placa, você precisa atualizar uma bootloader à placa antes da execução da demonstração.

Para criar e atualizar a bootloader, siga as etapas abaixo, mas, em vez de usar o arquivo de projeto projects/nordic/nrf52840-dk/ses/aws_demos/aws_demos.emProject, use projects/nordic/nrf52840-dk/ses/aws_demos/bootloader/bootloader.emProject.

Como compilar e executar a demonstração de Bluetooth Low Energy do FreeRTOS no Segger Embedded Studio
  1. Abra o Segger Embedded Studio. No menu superior, escolha File (Arquivo), Open Solution (Abrir solução) e navegue até o arquivo do projeto projects/nordic/nrf52840-dk/ses/aws_demos/aws_demos.emProject

  2. Se você estiver usando o emulador de terminal Segger Embedded Studio, escolha Tools (Ferramentas) no menu superior e, depois, Terminal Emulator (Emulador de terminal), Terminal Emulator (Emulador de terminal) para exibir informações da sua conexão serial.

    Se você usa outra ferramenta de terminal, pode monitorar a saída dessa ferramenta a partir da sua conexão serial.

  3. Clique com o botão direito no projeto de demonstração aws_demos no Project Explorer (Explorador de projeto) e escolha Build (Compilar).

    nota

    Se esta é a primeira vez que você usa o Segger Embedded Studio, é possível que o aviso "Nenhuma licença para uso comercial" seja exibido. O Segger Embedded Studio pode ser usado gratuitamente para dispositivos semicondutores Nordic. Solicite uma licença gratuita e, durante a configuração, escolha Ativar a licença gratuita e siga as instruções.

  4. Escolha Debug (Depurar) e, depois, Go (Ir).

    Após a demonstração ser iniciada, ela aguarda para emparelhar com um dispositivo móvel em Bluetooth Low Energy.

  5. Siga as instruções do Aplicativo de demonstração do MQTT por Bluetooth Low Energy para concluir a demonstração com o aplicativo de demonstração do SDK móvel de Bluetooth Low Energy do FreeRTOS como o proxy MQTT móvel.

Solução de problemas

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.