Nozioni di base su Nordic nRF52840-DK - FreeRTOS

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Nozioni di base su Nordic nRF52840-DK

Importante

Questa integrazione di riferimento è ospitata nel repository Amazon-FreeRTOS che è obsoleto. Consigliamo di iniziare da qui quando si crea un nuovo progetto. Se hai già un progetto FreeRTOS esistente basato sull'ormai obsoleto repository Amazon-FreeRTOS, consulta ilGuida alla migrazione del repository Github di Amazon-FreeRTOS.

Questo tutorial fornisce istruzioni per iniziare a usare Nordic nRF52840-DK. Se non disponi del dispositivo Nordic nRF52840-DK, visita il catalogo dei dispositiviAWS partner per acquistarne uno dal nostro partner.

Prima di iniziare, è necessario Configurazione AWS IoT e Amazon Cognito per FreerTOS Bluetooth Low Energy.

Per eseguire la demo FreeRTOS Bluetooth Low Energy, è necessario anche un dispositivo mobile iOS o Android con funzionalità Bluetooth e Wi-Fi.

Nota

Se utilizzi un dispositivo iOS, è richiesto Xcode per compilare l'applicazione demo per dispositivi mobili. Se utilizzi un dispositivo Android, puoi utilizzare Android Studio per compilare l'applicazione demo per dispositivi mobili.

Panoramica

Questo tutorial contiene le istruzioni per i seguenti passaggi iniziali:

  1. Connessione della scheda a un computer host.

  2. Installazione di software sul computer host per lo sviluppo e il debug di applicazioni integrate per la scheda a microcontroller.

  3. Compilazione incrociata di un'applicazione demo FreeRTOS con un'immagine binaria.

  4. Caricamento dell'immagine binaria dell'applicazione sulla scheda in uso e successiva esecuzione dell'applicazione.

  5. Interazione con l'applicazione in esecuzione sulla scheda attraverso una connessione seriale, per scopi di monitoraggio e debug.

Configurazione dell'hardware Nordic

Collega il computer host alla porta USB etichettata J2, situata direttamente sopra il supporto per batteria a bottone sulla scheda Nordic nRF52840.

Per ulteriori informazioni sulla configurazione di Nordic nRF52840-DK, consulta il documento nRF52840 Development Kit User Guide.

Configurazione dell'ambiente di sviluppo

Scaricare e installare Segger Embedded Studio

FreeRTOS supporta Segger Embedded Studio come ambiente di sviluppo per il Nordic nRF52840-DK.

Per configurare l'ambiente, è necessario scaricare e installare Segger Embedded Studio sul computer host.

Per scaricare e installare Segger Embedded Studio
  1. Vai alla pagina Segger Embedded Studio Downloads e scegli l'opzione Embedded Studio for ARM per il sistema operativo in uso.

  2. Eseguire il programma di installazione e seguire le istruzioni per completare l'operazione.

Configura l'applicazione demo FreeRTOS Bluetooth Low Energy Mobile SDK

Per eseguire il progetto demo FreeRTOS su Bluetooth Low Energy, devi eseguire l'applicazione demo FreeRTOS Bluetooth Low Energy Mobile SDK sul tuo dispositivo mobile.

Per configurare l'applicazione demo FreeRTOS Bluetooth Low Energy Mobile SDK
  1. Seguire le istruzioni in SDK mobili per dispositivi Bluetooth FreerTOS per scaricare e installare l'SDK per la piattaforma mobile sul computer host.

  2. Seguire le istruzioni in Applicazione dimostrativa FreerTOS Bluetooth Low Energy Mobile SDK per configurare l'applicazione demo mobile sul dispositivo mobile.

Stabilire una connessione seriale

Segger Embedded Studio include un emulatore di terminale che puoi utilizzare per ricevere i messaggi di log su una connessione seriale sulla scheda.

Per stabilire una connessione seriale con Segger Embedded Studio
  1. Aprire Segger Embedded Studio.

  2. Dal menu in alto, scegli Target (Destinazione), Connect J-Link (Connetti J-Link).

  3. Dal menu in alto, scegli Tools (Strumenti), Terminal Emulator (Emulatore di terminale), Properties (Proprietà) e imposta le proprietà come indicato in Installazione di un emulatore di terminale.

  4. Dal menu in alto, scegli Tools (Strumenti), Terminal Emulator (Emulatore di terminale), Connect porta (115200,N,8,1) (Connetti porta (115200,N,8,1)).

Nota

L'emulatore di terminale Segger Embedded Studio non supporta una funzionalità di input. Per questo, usa un emulatore di terminale come PuTTY, Tera Term o GNU Screen. Configura il terminale per la connessione alla scheda tramite una connessione seriale come indicato in Installazione di un emulatore di terminale.

Scaricare e configurare FreeRTOS

Dopo aver configurato l'hardware e l'ambiente, puoi scaricare FreeRTOS.

Scarica FreeRTOS

Per scaricare FreeRTOS per Nordic nRF52840-DK, vai alla GitHub pagina FreeRTOS e clona il repository. Consultare il file README.md per le istruzioni.

Importante
  • In questo argomento, il percorso della directory di download di FreeRTOS viene definito comefreertos.

  • Gli spazi contenuti nel percorso freertos possono causare errori di compilazione. Quando si clona o si copia il repository, assicurarsi che il percorso creato non contenga spazi.

  • La lunghezza massima di un percorso di file su Microsoft Windows è di 260 caratteri. I lunghi percorsi della directory di download di FreeRTOS possono causare errori di compilazione.

  • Poiché il codice sorgente può contenere collegamenti simbolici, se utilizzi Windows per estrarre l'archivio, potresti dover:

    In questo modo, Windows può creare correttamente collegamenti simbolici quando estrae l'archivio. Altrimenti, i collegamenti simbolici verranno scritti come file normali che contengono i percorsi dei collegamenti simbolici come testo o sono vuoti. Per ulteriori informazioni, consulta il post del blog Symlinks in Windows 10! .

    Se usi Git in Windows, devi abilitare la modalità sviluppatore oppure devi:

    • core.symlinksImposta su true con il seguente comando:

      git config --global core.symlinks true
    • Usa una console con privilegi di amministratore ogni volta che usi un comando git che scrive nel sistema (ad esempiogit pull,git clone, egit submodule update --init --recursive).

Configurare il progetto

Per abilitare la demo, è necessario configurare il progetto con cui lavorareAWS IoT. Per configurare il progetto per l'utilizzo con AWS IoT, il dispositivo deve essere registrato come oggetto AWS IoT. È necessario aver registrato il dispositivo in fase di Configurazione AWS IoT e Amazon Cognito per FreerTOS Bluetooth Low Energy.

Per configurare l'endpoint AWS IoT
  1. Accedi alla console AWS IoT.

  2. Nel pannello di navigazione scegli Settings (Impostazioni).

    L'AWS IoTendpoint viene visualizzato nella casella di testo Device data endpoint. L'URL dovrebbe essere del tipo 1234567890123-ats.iot.us-east-1.amazonaws.com. Prendere nota di questo endpoint.

  3. Nel riquadro di navigazione scegliere Manage (Gestisci), quindi Things (Oggetti). Prendere nota del nome dell'oggetto AWS IoT per il dispositivo.

  4. Con l'endpoint AWS IoT e il nome dell'oggetto AWS IoT a disposizione, aprire freertos/demos/include/aws_clientcredential.h nell'IDE e specificare i valori per le seguenti costanti #define:

    • clientcredentialMQTT_BROKER_ENDPOINT L'endpoint AWS IoT

    • clientcredentialIOT_THING_NAME Il nome dell'oggetto AWS IoT della scheda

Per abilitare la demo
  1. Assicurarsi che la demo GATT Bluetooth Low Energy sia abilitata. Passare a vendors/nordic/boards/nrf52840-dk/aws_demos/config_files/iot_ble_config.h e aggiungere #define IOT_BLE_ADD_CUSTOM_SERVICES ( 1 ) all'elenco delle istruzioni "define".

  2. Aprivendors/nordic/boards/nrf52840-dk/aws_demos/config_files/aws_demo_config.h e definisci unoCONFIG_OTA_MQTT_BLE_TRANSPORT_DEMO_ENABLED oCONFIG_OTA_HTTP_BLE_TRANSPORT_DEMO_ENABLED come in questo esempio.

    /* 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. Poiché il chip Nordic è dotato di poca RAM (250 KB), potrebbe essere necessario modificare la configurazione BLE per consentire voci di tabella GATT più grandi rispetto alle dimensioni di ciascun attributo. In questo modo è possibile regolare la quantità di memoria ottenuta dall'applicazione. A tale scopo, sovrascrivere le definizioni dei seguenti attributi nel file freertos/vendors/nordic/boards/nrf52840-dk/aws_demos/config_files/sdk_config.h:

    • NRF_SDH_BLE_VS_UUID_COUNT

      Il numero di UUID specifici del fornitore. Aumenta questo numero di 1 quando aggiungi un nuovo UUID specifico del fornitore.

    • NRF_SDH_BLE_GATTS_ATTR_TAB_SIZE

      Dimensione della tabella degli attributi in byte. La dimensione deve essere un multiplo di 4. Questo valore indica la quantità di memoria impostata dedicata alla tabella degli attributi (inclusa la dimensione caratteristica), quindi varierà da progetto a progetto. Se superi la dimensione della tabella degli attributi, riceverai un errore NRF_ERROR_NO_MEM. Se si modifica NRF_SDH_BLE_GATTS_ATTR_TAB_SIZE in genere è necessario riconfigurare anche le impostazioni della RAM.

    Per i test, il percorso del file è freertos/vendors/nordic/boards/nrf52840-dk/aws_tests/config_files/sdk_config.h.

Crea ed esegui il progetto demo FreeRTOS

Dopo aver scaricato FreeRTOS e configurato il tuo progetto demo, sei pronto per creare ed eseguire il progetto demo sulla tua scheda.

Importante

Se è la prima volta che esegui la demo sulla scheda, devi eseguire il flashing di un bootloader sulla scheda prima di poter eseguire la demo.

Per compilare ed effettuare il flashing del bootloader, segui le istruzioni riportate di seguito e anziché utilizzare il file di progetto projects/nordic/nrf52840-dk/ses/aws_demos/aws_demos.emProject usa projects/nordic/nrf52840-dk/ses/aws_demos/bootloader/bootloader.emProject.

Per creare ed eseguire la demo FreeRTOS Bluetooth Low Energy di Segger Embedded Studio
  1. Aprire Segger Embedded Studio. Nel menu in alto, scegliere File, Open Solution (Apri soluzione), quindi individuare il file di progetto projects/nordic/nrf52840-dk/ses/aws_demos/aws_demos.emProject

  2. Se stai usando l'emulatore di terminale Segger Embedded Studio, scegli Tools (Strumenti) dal menu in alto, quindi scegli Terminal Emulator (Emulatore di terminale), Terminal Emulator (Emulatore di terminale) per visualizzare le informazioni della connessione seriale.

    Se stai usando un altro strumento di terminale, è possibile monitorarlo per l'output dalla connessione seriale.

  3. Fare clic con il pulsante destro del mouse sul progetto demo aws_demos in Project Explorer (Esplora progetti) e scegliere Build (Crea).

    Nota

    Se è la prima volta che utilizzi Segger Embedded Studio, è possibile che venga visualizzato un avviso "No license for commercial use" (Nessuna licenza per uso commerciale). Segger Embedded Studio può essere utilizzato gratuitamente per dispositivi a semiconduttore Nordic. Richiedi una licenza gratuita, quindi, durante la configurazione, scegli Attiva la tua licenza gratuita e segui le istruzioni.

  4. Scegliere Debug, quindi selezionare Go (Avvia).

    Dopo l'avvio della demo, viene eseguito l'accoppiamento con un dispositivo mobile in Bluetooth Low Energy.

  5. Segui le istruzioni dell'applicazione demo MQTT over Bluetooth Low Energy per completare la demo con l'applicazione demo FreeRTOS Bluetooth Low Energy Mobile SDK come proxy MQTT mobile.

Risoluzione dei problemi

Per informazioni generali sulla risoluzione dei problemi relativi a Getting Started with FreeRTOS, consultaNozioni di base sulla risoluzione dei problemi.