Introducción al Xilinx Avnet MicroZed Industrial IoT Kit
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 Xilinx Avnet MicroZed Industrial IoT Kit Si no tiene el kit de Xilinx Avnet MicroZed Industrial IoT, consulte el Catálogo de dispositivos de socios de AWS para adquirir uno de nuestro socio
Antes de comenzar, debe configurar AWS IoT y la descarga de FreeRTOS para conectar el dispositivo 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 contiene instrucciones para los siguientes pasos de introducción:
-
Conexión de su placa a un equipo host.
-
Instalación de software en el equipo host para desarrollar y depurar las aplicaciones integradas de la placa de su microcontrolador.
-
Compilación cruzada de una aplicación de demostración de FreeRTOS en una imagen binaria.
-
Carga de la imagen binaria de la aplicación en su placa y, a continuación, ejecución de la aplicación.
Configuración de hardware MicroZed
El siguiente diagrama puede resultar útil al configurar el hardware MicroZed:
Configuración de la placa MicroZed
-
Conecte el equipo al puerto USB-UART en su placa MicroZed.
-
Conecte el equipo al puerto de acceso JTAG en su placa MicroZed.
-
Conecte un router o un puerto Ethernet conectado a Internet al puerto Ethernet y USB-Host de su placa MicroZed.
Cómo configurar el entorno de desarrollo.
Para realizar configuraciones de FreeRTOS para el kit de MicroZed, debe utilizar el Kit de desarrollo de software de Xilinx (XSDK). XSDK es compatible con Windows y Linux.
Descargar e instalar XSDK
Para instalar el software Xilinx, necesita una cuenta gratuita de Xilinx.
Descarga de XSDK
-
Vaya a la página de descarga de Software Development Kit Standalone WebInstall Client
. -
Elija la opción apropiada para su sistema operativo.
-
Se le dirigirá a la página de inicio de sesión de Xilinx.
Si tiene una cuenta con Xilinx, introduzca sus credenciales de inicio de sesión y elija Iniciar sesión.
Si no tiene una cuenta de, elija Create your account (Crear cuenta). Después de registrarse, debería recibir un correo electrónico con un enlace para activar su cuenta de Xilinx.
-
En la página Name and Address Verification (Verificación de nombre y dirección), escriba su información y elija Next (Siguiente). La descarga debe estar lista para iniciarse.
-
Guarde el archivo
Xilinx_SDK_.version_os
Instalación de XSDK
-
Abra el archivo
Xilinx_SDK_.version_os -
En Select Edition to Install (Seleccionar edición que instalar), elija Xilinx Software Development Kit (XSDK) (Kit de desarrollo de software de Xilinx (XSDK)) y, a continuación, haga clic en Next (Siguiente).
-
En la página siguiente del asistente de instalación, en Installation Options (Opciones de instalación), seleccione Install Cable Drivers (Instalar controladores de cable) y haga clic en Next (Siguiente).
Si su equipo no detecta la conexión del USB-UART de MicroZed, instale manualmente los controladores CP210x de USB a VCP de puente UART. Para obtener instrucciones, consulte Silicon Labs CP210x USB-to-UART Installation Guide
Para obtener más información acerca del XSDK, consulte Getting Started with Xilinx SDK
Monitorización de mensajes de MQTT en la nube
Antes de ejecutar el proyecto de demostración de FreeRTOS, puede configurar 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
Creación y ejecución del proyecto de demostración de FreeRTOS
Apertura de la demostración de FreeRTOS en el IDE de XSDK
-
Lance el IDE de XSDK con el directorio del espacio de trabajo establecido en
.freertos/projects/xilinx/microzed/xsdk -
Cierre la página de bienvenida. En el menú, elija Project (Proyecto) y desactive Build Automatically (Compilar automáticamente).
-
En el menú, elija File (Archivos) y, a continuación, elija Import (Importar).
-
En la página Select (Seleccionar), expanda General, elija Existing Projects into Workspace (Proyectos existentes en Workspace) y, a continuación, elija Next (Siguiente).
-
En la página Importar proyectos, elija Seleccionar directorio raíz y escriba el directorio raíz del proyecto de demostración:
. Para examinar el directorio, haga clic en Browse (Examinar).freertos/projects/xilinx/microzed/xsdk/aws_demosDespués de especificar un directorio raíz, los proyectos de dicho directorio aparecen en la página Import Projects (Importar proyectos). Todos los proyectos disponibles se seleccionan de forma predeterminada.
nota
Si ve una advertencia en la parte superior de la página Import Projects (Importar proyectos) ("Algunos proyectos no se puede importar, porque ya existen en el espacio de trabajo") puede ignorarla.
-
Con todos los proyectos seleccionados, elija Finish (Finalizar).
-
Si no ve los proyectos
aws_bsp,fsblyMicroZed_hw_platform_0en el panel de proyectos, repita los pasos anteriores empezando por el número 3 pero con el directorio raíz establecido ene importefreertos/vendors/xilinxaws_bsp,fsblyMicroZed_hw_platform_0. -
En el menú, elija Window (Ventana) y, a continuación, elija Preferences (Preferencias).
-
En el panel de navegación, expanda Run/Debug (Ejecutar/Depurar), elija String Substitution (Sustitución de cadenas) y, elija New (Nueva).
-
En New String Substitution Variable (Nueva variable de sustitución de cadena), en Name (Nombre), escriba
AFR_ROOT. En Valor, escriba la ruta raíz de. Seleccione OK (Aceptar) y, a continuación, elija OK (Aceptar) para guardar la variable y cerrar Preferences (Preferencias).freertos/projects/xilinx/microzed/xsdk/aws_demos
Creación del proyecto de demostración de FreeRTOS
-
En el IDE de XSDK, desde el menú, elija Project (Proyecto) y, a continuación, elija Clean (Limpiar).
-
En Clean (Limpiar), deje las opciones en los valores predeterminados y, a continuación, elija OK (Aceptar). XSDK limpia y compila todos los proyectos y, a continuación, genera los archivos
.elf.nota
Para compilar todos los proyectos sin limpiarlos, elija Project (Proyecto) y, a continuación, elija Build All (Compilar todo).
Para compilar proyectos individuales, seleccione el proyecto que desea compilar, elija Project (Proyecto) y, a continuación, elija Build Project (Compilar proyecto).
Generación de la imagen de arranque del proyecto de demostración de FreeRTOS
-
En el IDE de XSDK, haga clic con el botón derecho en aws_demos y, a continuación, seleccione Create Boot Image (Crear imagen de arranque).
-
En Create Boot Image (Crear imagen de arranque), elija Create new BIF file (Crear nuevo archivo BIF).
-
Junto a Output BIF file path (Ruta de archivo BIF de salida), elija Browse (Examinar) y, a continuación, elija
aws_demos.bifubicado en.<freertos>/vendors/xilinx/microzed/aws_demos/aws_demos.bif -
Elija Agregar.
-
En Add new boot image partition (Añadir nueva partición de imagen de inicio), junto a File path (Ruta de archivo), haga clic en Browse (Examinar) y elija
fsbl.elf, situado envendors/xilinx/fsbl/Debug/fsbl.elf. -
Para Partition type (Tipo de partición), elija bootloader y, a continuación, elija OK (Aceptar).
-
En Create Boot Image (Crear imagen de arranque), elija Create Image (Crear imagen). En Override Files (Anular archivos), elija OK (Aceptar) para sobrescribir el archivo
aws_demos.bifexistente y generar el archivoBOOT.binenprojects/xilinx/microzed/xsdk/aws_demos/BOOT.bin.
Depuración de JTAG
-
Establezca los puentes del modo de arranque de la placa MicroZed en el modo de arranque JTAG.
-
Inserte su tarjeta MicroSD en la ranura para tarjeta MicroSD ubicado directamente en el puerto USB-UART.
nota
Antes de depurar, asegúrese de hacer una copia de seguridad de cualquier contenido que tiene en la tarjeta MicroSD.
La placa debe ser similar a la siguiente:
-
En el IDE del XSDK, haga clic con el botón derecho en aws_demos, elija Debug As (Depurar como) y, a continuación, elija 1 Launch on System Hardware (System Debugger) (1 Lanzar en hardware del sistema (Depurador del sistema)).
-
Cuando el depurador se detiene en el punto de ruptura en
main(), en el menú, elija Run (Ejecutar) y, a continuación, elija Resume (Reanudar).nota
La primera vez que ejecute la aplicación, se importa un nuevo par de certificado-clave en la memoria no volátil. Para ejecuciones posteriores, puede marcar como comentario
vDevModeKeyProvisioning()en el archivomain.cantes de recompilar las imágenes y el archivoBOOT.bin. Esto impide que la copia de los certificados y la clave se almacenen en cada ejecución.
Puede elegir arrancar su placa MicroZed desde una tarjeta MicroSD o desde la memoria flash QSPI para ejecutar el proyecto de demostración de FreeRTOS. Para obtener instrucciones, consulte Generación de la imagen de arranque del proyecto de demostración de FreeRTOS y Ejecución del proyecto de demostración de FreeRTOS.
Ejecución del proyecto de demostración de FreeRTOS
Para ejecutar el proyecto de demostración de FreeRTOS, puede elegir arrancar su placa MicroZed desde una tarjeta MicroSD o desde la memoria flash QSPI.
A medida que configura su placa MicroZed para ejecutar el proyecto de demostración de FreeRTOS, consulte el diagrama en Configuración de hardware MicroZed. Asegúrese de que ha conectado la placa MicroZed en el equipo.
Arranque del proyecto de FreeRTOS desde una tarjeta MicroSD
Formatee la tarjeta MicroSD, que se proporciona con Xilinx MicroZed Industrial IoT Kit.
-
Copie el archivo
BOOT.binen la tarjeta MicroSD. -
Inserte la tarjeta en la ranura de la tarjeta MicroSD directamente debajo del puerto USB-UART.
-
Establezca los puentes del modo de arranque de MicroZed en el modo de arranque SD.
-
Pulse el botón RST para restablecer el dispositivo y comenzar a arrancar la aplicación. También puede desenchufar el cable USB-UART del puerto USB-UART y, a continuación, volver a insertar el cable.
Arranque del proyecto de demostración de FreeRTOS desde la memoria flash QSPI
-
Establezca los puentes del modo de arranque de la placa MicroZed en el modo de arranque JTAG.
-
Compruebe que el equipo se encuentra conectado a los puertos de acceso USB-UART y JTAG. El indicador LED verde de alimentación correcta debe iluminarse.
-
En el IDE del XSDK, desde el menú, elija Xilinx y, a continuación, elija Program Flash (Programar flash).
-
En Program Flash Memory (Programar memoria flash), la plataforma de hardware debe completarse de forma automática. Para Connection (Conexión), elija el servidor de hardware MicroZed para conectar la placa con su equipo host.
nota
Si está utilizando el cable Xilinx Smart Lync JTAG, debe crear un servidor de hardware en el IDE de XSDK. Elija New (Nuevo) y, a continuación, defina su servidor.
-
En Image File (Archivo de imagen), escriba la ruta del directorio a su archivo de imagen
BOOT.bin. Elija Browse (Examinar) para examinar el archivo en su lugar. -
En Offset (Desplazamiento), escriba
0x0. -
En FSBL File (Archivo FSBL), escriba la ruta del directorio a su archivo
fsbl.elf. Elija Browse (Examinar) para examinar el archivo en su lugar. -
Elija Program (Programar) para programar la placa.
-
Una vez que la programación de QSPI se haya completado, retire el cable USB-UART para apagar la placa.
-
Establezca los puentes del modo de arranque de la placa MicroZed en el modo de arranque QSPI.
-
Inserte su tarjeta en la ranura para tarjeta MicroSD ubicada directamente en el puerto USB-UART.
nota
Asegúrese de hacer una copia de seguridad de cualquier contenido que tenga en la tarjeta MicroSD.
-
Pulse el botón RST para restablecer el dispositivo y comenzar a arrancar la aplicación. También puede desenchufar el cable USB-UART del puerto USB-UART y, a continuación, volver a insertar el cable.
Solución de problemas
Si detecta errores de compilación relacionados con rutas incorrectas, pruebe a limpiar y recompilar el proyecto, como se describe en Creación del proyecto de demostración de FreeRTOS.
Si utiliza Windows, asegúrese de que utiliza barras diagonales al establecer la sustitución en la cadena de variables del IDE del XSDK de Windows.
Si necesita información general de solución de problemas que pueden surgir al empezar a trabajar con FreeRTOS, consulte Introducción a solución de problemas.