Introducción a Nuvoton NuMaker-IoT-M487
importante
Esta integración de referencia está alojada en el repositorio de Amazon-FreeRTOS, que está en desuso. Recomendamos empezar por aquí al crear un nuevo proyecto. Si ya tiene un proyecto FreeRTOS existente basado en el repositorio Amazon FreeRTOS, ahora obsoleto, consulte Guía de migración del repositorio Github de Amazon-FreeRTOS.
Este tutorial ofrece instrucciones para la introducción a la placa de desarrollo Nuvoton NuMaker-IoT-M487. El microcontrolador de la serie incluye módulos RJ45 Ethernet y Wi-Fi integrados. Si no tiene una Nuvoton NuMaker-IoT-M487, consulte el Catálogo de dispositivos de socios de AWS
Antes de comenzar, debe configurar AWS IoT y el software FreeRTOS para conectar la placa de desarrollo a la nube de AWS. Para obtener instrucciones, consulte Primeros pasos. En este tutorial, la ruta al directorio de descargas de FreeRTOS se denomina .freertos
Descripción general
Este tutorial le guiará a través de los siguientes pasos:
-
Instale el software en el equipo host para desarrollar y depurar las aplicaciones integradas de la placa de su microcontrolador.
-
Realice una compilación cruzada de una aplicación de demostración de FreeRTOS en una imagen binaria.
-
Cargue la imagen binaria de la aplicación en su placa y, a continuación, ejecute la aplicación.
Cómo configurar el entorno de desarrollo.
La edición Keil MDK Nuvoton está diseñada para el desarrollo y la depuración de aplicaciones para las placas Nuvoton M487. La versión de Keil MDK v5 Essential, Plus o Pro también debe funcionar para la MCU Nuvoton M487 (núcleo Cortex-M4). Puede descargar la edición Keil MDK Nuvoton con un descuento en el precio de las MCU de la serie Cortex-M4 de Nuvoton. Keil MDK solo es compatible con Windows.
Instalación de la herramienta de desarrollo para NuMaker-IoT-M487
-
Descargue Keil MDK Nuvoton Edition
desde el sitio web de Keil MDK. -
Instale Keil MDK en su equipo host con su licencia. Keil MDK incluye el IDE de Keil µVision, una cadena de herramientas de compilación C/C++ y el depurador de µVision.
Si tiene problemas durante la instalación, póngase en contacto con Nuvoton
para obtener ayuda. -
Instale Nu-Link_Keil_Driver_V3.06.7215r (o una versión más reciente), disponible en la página Herramienta de desarrollo de Nuvoton
.
Creación y ejecución del proyecto de demostración de FreeRTOS
Creación del proyecto de demostración de FreeRTOS
-
Abra el IDE de Keil µVision.
-
En el menú File (Archivo), elija Open (Abrir). En el cuadro de diálogo Open file (Abrir archivo), asegúrese de que el selector de tipo de archivo esté definido en Project Files (Archivos de proyecto).
-
Elija el proyecto de demostración de Wi-Fi o Ethernet que desea crear.
-
Para abrir el proyecto de demostración de wifi, elija el proyecto de destino
aws_demos.uvprojen el directorio.freertos\projects\nuvoton\numaker_iot_m487_wifi\uvision\aws_demos -
Para abrir el proyecto de demostración de Ethernet, elija el proyecto de destino
aws_demos_eth.uvprojen el directorio.freertos\projects\nuvoton\numaker_iot_m487_wifi\uvision\aws_demos_eth
-
-
Para asegurarse de que la configuración sea la correcta para instalar la placa, haga clic con el botón derecho en el proyecto
aws_demodel IDE y, a continuación, elija Options (Opciones). (Consulte Solución de problemas para obtener más detalles). -
En la pestaña Utilities (Utilidades), compruebe que Use Target Driver for Flash Programming (Utilizar el controlador de destino para la programación flash) esté seleccionado y que Nuvoton Nu-Link Debugger (Depurador de Nuvoton Nu-Link) esté definido como el controlador de destino.
-
En la pestaña Debug (Depurar), junto a Nuvoton Nu-Link Debugger (Depurador de Nuvoton Nu-Link), elija Settings (Configuración).
-
Compruebe que Chip Type (Tipo de chip) esté definido en M480.
-
En el panel de navegación Project (Proyecto) del IDE de Keil µVision, elija el proyecto
aws_demos. En el menú Project (Proyecto), elija Build Target (Compilar destino).
Puede utilizar el cliente de MQTT en la consola de AWS IoT para monitorizar los mensajes que envía el dispositivo a la nube de AWS.
Suscripción al tema de MQTT con el cliente de MQTT de AWS IoT
-
Inicie sesión en la consola de AWS IoT
. -
En el panel de navegación, seleccione Probar y, a continuación, seleccione el cliente de prueba MQTT para abrir el cliente MQTT.
-
En Tema de suscripción, escriba
y, a continuación, elija Suscribirse al tema.your-thing-name/example/topic
Ejecución del proyecto de demostración de FreeRTOS
-
Conecte la placa Numaker-IoT-M487 al equipo (ordenador) host.
-
Vuelva a compilar el proyecto.
-
En el IDE de Keil µVision, en el menú Flash, elija Download (Descargar).
-
En el menú Debug (Depurar), elija Start/Stop Debug Session (Iniciar/detener sesión de depuración).
-
Cuando el depurador se detiene en el punto de ruptura en
main(), abra el menú Run (Ejecutar) y, a continuación, elija Run (F5) (Ejecutar).Debería ver los mensajes de MQTT enviados por su dispositivo en el cliente de MQTT de la consola de AWS IoT.
Uso de CMake con FreeRTOS
También puede usar CMake para crear y ejecutar las aplicaciones de demostración de FreeRTOS o las aplicaciones que ha desarrollado con herramientas de depuración y editores de código de terceros.
Asegúrese de tener instalado el sistema de compilación CMake. Siga las instrucciones de Uso de CMake con FreeRTOS y, a continuación, siga los pasos de esta sección.
nota
Asegúrese de que la ruta a la ubicación del compilador (Keil) se encuentre en la variable del sistema Path, por ejemplo, C:\Keil_v5\ARM\ARMCC\bin.
También puede utilizar el cliente de MQTT en la consola de AWS IoT para monitorizar los mensajes que envía el dispositivo a la nube de AWS.
Suscripción al tema de MQTT con el cliente de MQTT de AWS IoT
-
Inicie sesión en la consola de AWS IoT
. -
En el panel de navegación, seleccione Probar y, a continuación, seleccione el cliente de prueba MQTT para abrir el cliente MQTT.
-
En Tema de suscripción, escriba
y, a continuación, elija Suscribirse al tema.your-thing-name/example/topic
Generación de archivos de creación a partir de archivos de origen y ejecución del proyecto de demostración
-
En la máquina host, abra el símbolo del sistema y vaya a la carpeta
freertos. -
Cree una carpeta para contener el archivo de compilación generado. Nos referiremos a esta carpeta como
BUILD_FOLDER. -
Genere los archivos de compilación para la demostración de Wi-Fi o Ethernet.
-
Para Wi-Fi:
Desplácese hasta el directorio que contiene los archivos de código fuente del proyecto de demostración de FreeRTOS. A continuación, genere los archivos de compilación ejecutando el siguiente comando.
cmake -DVENDOR=nuvoton -DBOARD=numaker_iot_m487_wifi -DCOMPILER=arm-keil -S . -BBUILD_FOLDER-G Ninja -
Para Ethernet:
Desplácese hasta el directorio que contiene los archivos de código fuente del proyecto de demostración de FreeRTOS. A continuación, genere los archivos de compilación ejecutando el siguiente comando.
cmake -DVENDOR=nuvoton -DBOARD=numaker_iot_m487_wifi -DCOMPILER=arm-keil -DAFR_ENABLE_ETH=1 -S . -BBUILD_FOLDER-G Ninja
-
-
Genere el binario para escribir en el M487 ejecutando el siguiente comando.
cmake --buildBUILD_FOLDEREn este momento, el archivo binario
aws_demos.bindebería encontrarse en la carpeta.BUILD_FOLDER/vendors/Nuvoton/boards/numaker_iot_m487_wifi -
Para configurar la placa para el modo flash, asegúrese de que el conmutador MSG (n.º 4 de ISW1 en ICE) esté activado. Cuando conecte la placa, se asignará una ventana (y una unidad). (Consulte Solución de problemas.)
-
Abra un emulador de terminal para ver los mensajes a través de UART. Siga las instrucciones de Instalación de un emulador de terminal.
-
Ejecute el proyecto de demostración copiando el binario generado en el dispositivo.
Si se ha suscrito al tema de MQTT con el cliente MQTT de AWS IoT, debe ver los mensajes MQTT enviados por su dispositivo en la consola de AWS IoT.
Solución de problemas
-
Si Windows no reconoce el dispositivo
VCOM, instale el controlador del puerto serie de Windows de NuMaker desde el enlace Nu-Link USB Driver v1.6. -
Si conecta su dispositivo a Keil MDK (el IDE) a través de Nu-Link, asegúrese de que el conmutador MSG (n.º 4 de ISW1 en ICE) esté desactivado, como se muestra.
Si tiene problemas para configurar su entorno de desarrollo o conectarse a la placa, póngase en contacto con Nuvoton
Depuración de proyectos de FreeRTOS en Keil µVision
Inicio de una sesión de depuración en Keil µVision
-
Abra Keil µVision.
-
Siga los pasos para crear el proyecto de demostración de FreeRTOS en Creación y ejecución del proyecto de demostración de FreeRTOS.
-
En el menú Debug (Depurar), elija Start/Stop Debug Session (Iniciar/detener sesión de depuración).
La ventana Call Stack+Locals (Pilas de llamadas + Variables locales aparece al iniciar una sesión de depuración. µVision instala la demostración en la placa, ejecuta la demostración y se detiene al inicio de la función
main(). -
Defina puntos de interrupción en el código fuente del proyecto y, a continuación, ejecute el código. El proyecto debería tener un aspecto similar al siguiente.
Solución de problemas de la configuración de depuración de µVision
Si tiene problemas al depurar una aplicación, compruebe que la configuración de depuración esté definida correctamente en Keil µVision.
Comprobación de que la configuración de depuración de µVision sea la correcta
-
Abra Keil µVision.
-
Haga clic con el botón derecho en el proyecto
aws_demodel IDE y, a continuación, elija Options (Opciones). -
En la pestaña Utilities (Utilidades), compruebe que Use Target Driver for Flash Programming (Utilizar el controlador de destino para la programación flash) esté seleccionado y que Nuvoton Nu-Link Debugger (Depurador de Nuvoton Nu-Link) esté definido como el controlador de destino.
-
En la pestaña Debug (Depurar), junto a Nuvoton Nu-Link Debugger (Depurador de Nuvoton Nu-Link), elija Settings (Configuración).
-
Compruebe que Chip Type (Tipo de chip) esté definido en M480.