

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Introducción al Xilinx Avnet MicroZed Industrial IoT Kit
<a name="getting_started_xilinx"></a>

**importante**  <a name="deprecation-message"></a>
Esta integración de referencia está alojada en el repositorio de Amazon-FreeRTOS, que está en desuso. Recomendamos [empezar por aquí](freertos-getting-started-modular.md) 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](github-repo-migration.md).

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](https://devices.amazonaws.com/detail/a3G0L00000AANtqUAH/MicroZed-IIoT-Bundle-with-Amazon-FreeRTOS).

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](freertos-prereqs.md). En este tutorial, la ruta al directorio de descargas de FreeRTOS se denomina `freertos`.

## Descripción general
<a name="xilinx-overview"></a>

Este tutorial contiene instrucciones para los siguientes pasos de introducción:

1. Conexión de su placa a un equipo host.

1. Instalación de software en el equipo host para desarrollar y depurar las aplicaciones integradas de la placa de su microcontrolador.

1. Compilación cruzada de una aplicación de demostración de FreeRTOS en una imagen binaria.

1. 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
<a name="xilinx-setup-hardware"></a>

El siguiente diagrama puede resultar útil al configurar el hardware MicroZed:

![\[Se destacan la placa de microcontrolador AVnet con LED Power Good, LED de usuario y botón pulsador, acceso JTAG, host Ethernet y USB 10/100/1000, ranura microSD, USB-UART, LED listo, botón de reinicio y puentes MODO de arranque.\]](http://docs.aws.amazon.com/es_es/freertos/latest/userguide/images/microzed.png)


**Configuración de la placa MicroZed**

1. Conecte el equipo al puerto USB-UART en su placa MicroZed.

1. Conecte el equipo al puerto de acceso JTAG en su placa MicroZed.

1. 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.
<a name="xilinx-setup-env"></a>

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
<a name="install-xsdk"></a>

Para instalar el software Xilinx, necesita una cuenta gratuita de Xilinx.

**Descarga de XSDK**

1. Vaya a la página de descarga de [Software Development Kit Standalone WebInstall Client](https://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/embedded-design-tools/2019-1.html).

1. Elija la opción apropiada para su sistema operativo.

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

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

1. Guarde el archivo `Xilinx_SDK_version_os`.

**Instalación de XSDK**

1. Abra el archivo `Xilinx_SDK_version_os`.

1. 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)**.

1. 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](https://www.xilinx.com/support/documentation/boards_and_kits/install/ug1033-cp210x-usb-uart-install.pdf).

Para obtener más información acerca del XSDK, consulte [Getting Started with Xilinx SDK](https://www.xilinx.com/html_docs/xilinx2018_2/SDK_Doc/index.html) en el sitio web de Xilink.

## Monitorización de mensajes de MQTT en la nube
<a name="xilinx-monitor-mqtt"></a>

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**

1. Inicie sesión en la [consola de AWS IoT](https://console.aws.amazon.com/iotv2/).

1. En el panel de navegación, seleccione **Probar** y, a continuación, seleccione el **cliente de prueba MQTT** para abrir el cliente MQTT.

1. En **Tema de suscripción**, escriba ***your-thing-name*/example/topic** y, a continuación, elija **Suscribirse al tema**.

## Creación y ejecución del proyecto de demostración de FreeRTOS
<a name="xilinx-build-and-run-example"></a>

### Apertura de la demostración de FreeRTOS en el IDE de XSDK
<a name="xilinx-freertos-import-project"></a>

1. Lance el IDE de XSDK con el directorio del espacio de trabajo establecido en `freertos/projects/xilinx/microzed/xsdk`. 

1. Cierre la página de bienvenida. En el menú, elija **Project (Proyecto)** y desactive **Build Automatically (Compilar automáticamente)**.

1. En el menú, elija **File (Archivos)** y, a continuación, elija **Import (Importar)**.

1. En la página **Select (Seleccionar)**, expanda **General**, elija **Existing Projects into Workspace (Proyectos existentes en Workspace)** y, a continuación, elija **Next (Siguiente)**.

1. En la página **Importar proyectos**, elija **Seleccionar directorio raíz** y escriba el directorio raíz del proyecto de demostración: `freertos/projects/xilinx/microzed/xsdk/aws_demos`. Para examinar el directorio, haga clic en **Browse (Examinar)**. 

   Despué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.

1. Con todos los proyectos seleccionados, elija **Finish (Finalizar)**. 

1. Si no ve los proyectos `aws_bsp`, `fsbl` y `MicroZed_hw_platform_0` en el panel de proyectos, repita los pasos anteriores empezando por el número 3 pero con el directorio raíz establecido en `freertos/vendors/xilinx` e importe `aws_bsp`, `fsbl` y `MicroZed_hw_platform_0`.

1. En el menú, elija **Window (Ventana)** y, a continuación, elija **Preferences (Preferencias)**.

1. En el panel de navegación, expanda **Run/Debug (Ejecutar/Depurar)**, elija **String Substitution (Sustitución de cadenas)** y, elija **New (Nueva)**. 

1. En **New String Substitution Variable (Nueva variable de sustitución de cadena)**, en **Name (Nombre)**, escriba **AFR\$1ROOT**. En **Valor**, escriba la ruta raíz de `freertos/projects/xilinx/microzed/xsdk/aws_demos`. Seleccione **OK (Aceptar)** y, a continuación, elija **OK (Aceptar)** para guardar la variable y cerrar **Preferences (Preferencias)**.

### Creación del proyecto de demostración de FreeRTOS
<a name="xilinx-freertos-build-project"></a>

1. En el IDE de XSDK, desde el menú, elija **Project (Proyecto)** y, a continuación, elija **Clean (Limpiar)**. 

1. 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
<a name="xilinx-build-boot-image"></a>

1. En el IDE de XSDK, haga clic con el botón derecho en **aws\$1demos** y, a continuación, seleccione **Create Boot Image (Crear imagen de arranque)**. 

1. En **Create Boot Image (Crear imagen de arranque)**, elija **Create new BIF file (Crear nuevo archivo BIF)**.

1. Junto a **Output BIF file path (Ruta de archivo BIF de salida)**, elija **Browse (Examinar)** y, a continuación, elija `aws_demos.bif` ubicado en `<freertos>/vendors/xilinx/microzed/aws_demos/aws_demos.bif`.

1. Elija **Agregar**. 

1. 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 en `vendors/xilinx/fsbl/Debug/fsbl.elf`.

1. Para **Partition type (Tipo de partición)**, elija **bootloader** y, a continuación, elija **OK (Aceptar)**.

1. 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.bif` existente y generar el archivo `BOOT.bin` en `projects/xilinx/microzed/xsdk/aws_demos/BOOT.bin`.

### Depuración de JTAG
<a name="xilinx-jtag"></a>

1. Establezca los puentes del modo de arranque de la placa MicroZed en el modo de arranque JTAG.  
![\[Ajustes de los conectores y puentes del cabezal de la placa de circuito.\]](http://docs.aws.amazon.com/es_es/freertos/latest/userguide/images/xilinx-jtag.png)

1. 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:  
![\[Placa de evaluación FreeRTOS con opciones de conectividad.\]](http://docs.aws.amazon.com/es_es/freertos/latest/userguide/images/xilinx-jtag-full-board.png)

1. En el IDE del XSDK, haga clic con el botón derecho en **aws\$1demos**, 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))**.

1. 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 archivo `main.c` antes de recompilar las imágenes y el archivo `BOOT.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](#xilinx-build-boot-image) y [Ejecución del proyecto de demostración de FreeRTOS](#xilinx-run).

### Ejecución del proyecto de demostración de FreeRTOS
<a name="xilinx-run"></a>

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](#xilinx-setup-hardware). Asegúrese de que ha conectado la placa MicroZed en el equipo.

#### Arranque del proyecto de FreeRTOS desde una tarjeta MicroSD
<a name="xilinx-build-boot-sd"></a>

Formatee la tarjeta MicroSD, que se proporciona con Xilinx MicroZed Industrial IoT Kit.

1. Copie el archivo `BOOT.bin` en la tarjeta MicroSD.

1. Inserte la tarjeta en la ranura de la tarjeta MicroSD directamente debajo del puerto USB-UART.

1. Establezca los puentes del modo de arranque de MicroZed en el modo de arranque SD.  
![\[Tarjeta SD con tres ranuras denominadas JP1, JP2 y JP3 y un soporte de batería tipo pila de botón.\]](http://docs.aws.amazon.com/es_es/freertos/latest/userguide/images/xilinx-sd.png)

1. 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
<a name="xilinx-build-boot-qspi"></a>

1. Establezca los puentes del modo de arranque de la placa MicroZed en el modo de arranque JTAG.  
![\[Ajustes de los conectores y puentes del cabezal de la placa de circuito.\]](http://docs.aws.amazon.com/es_es/freertos/latest/userguide/images/xilinx-jtag.png)

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

1. En el IDE del XSDK, desde el menú, elija **Xilinx** y, a continuación, elija **Program Flash (Programar flash)**. 

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

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

1. En **Offset (Desplazamiento)**, escriba **0x0**.

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

1. Elija **Program (Programar)** para programar la placa.

1. Una vez que la programación de QSPI se haya completado, retire el cable USB-UART para apagar la placa.

1. Establezca los puentes del modo de arranque de la placa MicroZed en el modo de arranque QSPI.

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

1. 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
<a name="xilinx-troubleshooting"></a>

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](#xilinx-freertos-build-project).

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](gsg-troubleshooting.md).