Course Code: freertos
Duration: 14 hours
Prerequisites:

  • Familiaridad con los sistemas integrados
  • Experiencia básica con programación C

Overview:

FreeRTOS es un núcleo de sistema operativo en tiempo real (RTOS) multiplataforma para dispositivos integrados como microcontroladores y microprocesadores pequeños.

En esta capacitación en vivo dirigida por un instructor, los participantes aprenderán a programar usando FreeRTOS mientras avanzan en el desarrollo de un proyecto RTOS simple usando un microcontrolador.

Al final de esta capacitación, los participantes podrán:

  • Comprender los conceptos básicos de los sistemas operativos en tiempo real
  • Conozca el entorno de FreeRTOS
  • Aprenda cómo codificar con FreeRTOS
  • Interfaz de una aplicación FreeRTOS a periféricos de hardware

Formato del curso

  • Conferencia de parte, discusión en parte, ejercicios y práctica práctica

Nota

  • Se espera que los participantes proporcionen su propio hardware para este curso (cualquier placa STM32).

Course Outline:

Introducción

Comprender los sistemas operativos en tiempo real (RTOS)

Aprendiendo el concepto de multitarea en sistemas embebidos

Descripción general del núcleo de FreeRTOS

Descripción general de la placa MCU STM32

Configuración del entorno de desarrollo

  • Descargar e instalar todo el software requerido
  • Configuración del Firmware y Hardware STM32

Comprender la gestión de tareas en RTOS

  • Comprender la memoria de la pila y el tamaño de la pila de tareas
  • Creando tus primeras tareas
  • Usando los parámetros de la tarea
  • Implementando Prioridades de Tarea
  • Explorando estados de tareas
  • Implementando retrasos
  • Uso del gancho de tareas desocupadas
  • Eliminando Tareas

Comunicación entre tareas

  • Administrar Colas
    • Descripción general de colas
    • Usando una cola
  • Gestión de interrupciones (semáforos)
    • Descripción general de interrupciones y semáforos
    • Escribir un controlador de interrupciones en FreeRTOS
    • Uso de semáforos para sincronizar tareas con interrupciones
    • Hacer cola dentro de una rutina de servicio de interrupción

Administrar recursos

  • Usando Mutexes
  • Usando semáforos binarios
  • Usando contando semáforos

Administrar la memoria y el tiempo

Aprendiendo los aspectos internos de FreeRTOS

  • Herramientas de depuración y rendimiento
  • Kernel Internals

Crear una tabla parpadeante con FreeRTOS

  • Aprendiendo los pines GPIO en STM32
  • Uso de tareas para hacer parpadear un LED integrado
  • Encender / apagar el LED usando cola
  • Encender / apagar el LED usando interrupciones

Solución de problemas

Comentarios finales