Tabla de contenido:

Configuración de FreeRTOS desde cero en STM32F407 Discovery Kit: 14 pasos
Configuración de FreeRTOS desde cero en STM32F407 Discovery Kit: 14 pasos

Video: Configuración de FreeRTOS desde cero en STM32F407 Discovery Kit: 14 pasos

Video: Configuración de FreeRTOS desde cero en STM32F407 Discovery Kit: 14 pasos
Video: Clase | FreeRTOS | 1ra parte 2024, Noviembre
Anonim
Configuración de FreeRTOS desde cero en STM32F407 Discovery Kit
Configuración de FreeRTOS desde cero en STM32F407 Discovery Kit

Elegir FreeRTOS como sistema operativo en tiempo real para su proyecto integrado es una excelente opción. FreeRTOS es verdaderamente gratuito y proporciona muchas funciones RTOS simples y efectivas. Pero configurar freeRTOS desde cero puede ser difícil o puedo decir un poco confuso, ya que requiere cierta personalización, como agregar archivos específicos de microcontroladores, configurar rutas de archivos de encabezado, etc. En este Instructable, lo guiaré sobre cómo configurar FreeRTOS en su kit STM32F407 Discovery en detalle utilizando Kiel uVision IDE.

Suministros

  • Puede encontrar más información sobre FreeRTOS en freertos.org
  • Guía de descarga de FreeRTOS Instrucciones de descarga del código fuente de RTOS
  • Detalles completos sobre el kit de descubrimiento STM32F407 Introducción al kit de descubrimiento STM32F407
  • Repositorio Github FreeRTOS en STM32F407 Discovery Kit

Paso 1: Abra Keil UVision IDE

Abra Keil UVision IDE
Abra Keil UVision IDE

Abra Keil uVision IDE. Haga clic en un proyecto y seleccione Nuevo proyecto de uVision … Luego seleccione su directorio de trabajo y proporcione el nombre de su proyecto preferido.

Paso 2: seleccione el dispositivo

Seleccione el dispositivo
Seleccione el dispositivo

Una vez que haya dado nombre al proyecto, en el siguiente paso debe agregar el dispositivo. Aquí estamos agregando el microcontrolador STM32F407VG de STMicroelectronics. Seleccione el STM32F407VG, luego haga clic en Aceptar.

Paso 3: administrar el entorno de tiempo de ejecución

Administrar el entorno de tiempo de ejecución
Administrar el entorno de tiempo de ejecución

El siguiente paso es seleccionar el componente de biblioteca / controlador en la pestaña Administrar entorno de tiempo de ejecución. Aquí seleccione todos los componentes como se muestra en la imagen de arriba. Una vez que haya marcado todos los campos correspondientes, haga clic en Resolver y luego en Aceptar.

Paso 4: Copie FreeRTOS en la carpeta de su proyecto

Copie FreeRTOS en la carpeta de su proyecto
Copie FreeRTOS en la carpeta de su proyecto

Ahora necesita copiar toda la carpeta FreeRTOS en la carpeta de su proyecto.

Paso 5: agregue archivos FreeRTOS al proyecto

Agregar archivos FreeRTOS al proyecto
Agregar archivos FreeRTOS al proyecto

Una vez que haya copiado la carpeta FreeRTOS dentro de la carpeta de su proyecto, debe agregar todos los archivos FreeRTOS necesarios a su proyecto.

  1. En Keil, seleccione Target1, haga clic con el botón derecho y seleccione Agregar nuevo grupo. Cambie el nombre de este grupo a FreeRTOS.
  2. Ahora haga clic en el grupo FreeRTOS, haga clic con el botón derecho y seleccione Agregar archivos existentes al grupo "FreeRTOS …"
  3. Agregue todos los archivos FreeRTOS como se muestra en la imagen de arriba.

La ruta para encontrar estos archivos en la carpeta FreeRTOS es:

  • Archivos: croutine, event_groups, lista, cola, stream_buffer, tareas y temporizadores. Ruta: (…. / FreeRTOSv10.2.1 / FreeRTOS / Source)
  • Archivos: heap_4 (hay 4 archivos de administración de memoria para agregar a cualquiera). Ruta: (…. / FreeRTOSv10.2.1 / FreeRTOS / Source / portable / MemMang)
  • Archivos: port.c (este es un archivo específico de MCU). Ruta: (… / FreeRTOSv10.2.1 / FreeRTOS / Source / portable / RVDS / ARM_CM4F)

Nota: la versión de FreeRTOS puede cambiar. Simplemente use la última versión disponible.

Paso 6: configurar la ruta de los archivos de encabezado de FreeRTOS

Configurar la ruta de los archivos de encabezado de FreeRTOS
Configurar la ruta de los archivos de encabezado de FreeRTOS

Una vez que haya agregado los archivos fuente de FreeRTOS, debe indicarle al compilador dónde se encuentran los archivos de encabezado respectivos. Por lo tanto, necesitamos configurar la opción del compilador.

Haga clic con el botón derecho en la opción Target1 para Target "Target1.." C / C ++ Incluir ruta. Asegúrese de incluir estas rutas:

  1. Incluir carpeta en FreeRTOS (… / FreeRTOSv10.2.1 / FreeRTOS / Source / include)
  2. Directorio RVDS (… / FreeRTOSv10.2.1 / FreeRTOS / Source / portable / RVDS / ARM_CM4F)

Nota: Si tiene archivos de encabezado, asegúrese de incluir la ruta de estos archivos de encabezado como se explicó anteriormente.

Paso 7: agregue el archivo "FreeRTOSConfig.h" al proyecto

Agregar
Agregar

FreeRTOS tiene un archivo de encabezado importante llamado FreeRTOSConfig.h. Este archivo contiene la personalización específica de la aplicación (en nuestro caso específico de Cortex M4F MCU). Para simplificar, he copiado nuestro archivo FreeRTOSConfig.h específico de MCU en el directorio RVDS. Y también en el paso 6, ya hemos agregado la ruta RVDS. Si lo está agregando usted mismo, debe agregar este archivo en su proyecto y también asegurarse de incluir la ruta de este archivo como se explica en el paso 6.

En caso de que desee agregar el archivo FreeRTOSConfig.h usted mismo en su directorio preferido, he incluido este archivo a continuación.

Para obtener más información, haga clic aquí FreeRTOSConfig.h

Paso 8: agregue el archivo "main.c" con la plantilla básica

Añade el
Añade el
  • Ahora cree un nuevo grupo de usuarios (lo he renombrado a "Aplicación de usuario").
  • Agregue un nuevo archivo C a este grupo (he agregado un archivo llamado main.c).
  • Este es el archivo donde existe la función main (). He incluido todas las funciones y encabezados mínimos requeridos en este archivo para que el proyecto se compile correctamente.

Puede encontrar el archivo main.c con la plantilla básica a continuación.

Paso 9: conecte su kit de descubrimiento STM32F407 a su PC / computadora portátil

Conecte su kit de descubrimiento STM32F407 a su PC / portátil
Conecte su kit de descubrimiento STM32F407 a su PC / portátil

Paso 10: seleccione el depurador ST-Link en la configuración del compilador

Seleccione el depurador ST-Link en la configuración del compilador
Seleccione el depurador ST-Link en la configuración del compilador

Haga clic con el botón derecho en Target1, luego haga clic en Option for Target "Target1..", luego navegue a la pestaña Debug y seleccione ST-Link-Debugger como se muestra en la imagen de arriba

Paso 11: configurar el depurador ST-Link

Configurar el depurador ST-Link
Configurar el depurador ST-Link

Después de seleccionar el depurador de ST-Link en el paso 10, haga clic en Configuración, luego seleccione Trazar y verifique todos los campos como se muestra en la imagen de arriba.

Paso 12: compile y cargue el código

Cree y cargue el código
Cree y cargue el código

Después de completar todos los pasos, cree el proyecto y asegúrese de que no haya errores en el código. Después de una compilación exitosa, cargue el código en su Discovery Kit.

Paso 13: Ir a la ventana de depuración y abrir el monitor serial

Ir a la ventana de depuración y abrir el monitor serial
Ir a la ventana de depuración y abrir el monitor serial

Después de cargar, vaya a depurar windowviewSerial WindowsDebug (printf) Viewer como se muestra en la imagen de arriba.

Paso 14: Ejecute el código para ver la salida en la ventana Debug Printf

Ejecute el código para ver la salida en la ventana Debug Printf
Ejecute el código para ver la salida en la ventana Debug Printf

El paso final es ejecutar el código como se muestra en la imagen para ver el resultado en la ventana de printf. Aquí en main.c he implementado 2 tareas simples llamadas task1 y task2. Ambas tareas tienen la misma prioridad y solo imprimen el nombre de la tarea. Debido a las mismas prioridades, puede ver que ambos se ejecutan e imprimen el nombre.

Recomendado: