Using FreeRTOS on STM32F7508-DISCOVERY

Compatible versions

Qt Quick Ultralite for FreeRTOS has been tested with FreeRTOS v10.0.1, which is the officially supported version for STM32F7508I-DISCOVERY.

For a list of supported platforms and FreeRTOS versions, see supported architectures, platforms and FreeRTOS versions.

Providing FreeRTOS symbols and libraries for Qt Quick Ultralite

If you are using app_common in your project, provide a path to FreeRTOS sources for Qt Quick Ultralite by setting the STM32F7_FREERTOS_DIR environment variable. The directory must contain at least the following:

  • include directory containing FreeRTOS header files
  • portable directory
  • MemMang directory under portable. This directory should contain memory manager implementations for FreeRTOS.
  • heap_4.c file under portable/MemMang. This is the memory allocator implementation, which Qt Quick Ultralite uses by default (Automotive demo uses heap_5.c). If you cannot provide heap_4.c or want to use your own implementation, change the used implementation by setting FREERTOS_HEAP_POLICY target property. See changing heap policies.
  • port.c file under portable/GCC/ARM_CM7/r0p1.
  • event_groups.c
  • list.c
  • queue.c
  • tasks.c
  • timers.c

app_common provides FreeRTOSConfig.h, which is configured to work with Qt Quick Ultralite examples and demos. If you want to provide your own FreeRTOSConfig.h, you can do so by using the FREERTOS_CONFIG_DIR target property. See using custom FreeRTOSConfig.h.

If you are not using app_common in your project, you do not need to set the STM32F7_FREERTOS_DIR environment variable. However, you must provide the following headers and functions for Qt Quick Ultralite (that is, these headers must be in your project):

  • FreeRTOS.h
  • task.h
  • portable.h
  • memory.h
  • void xPortSysTickHandler(void)
  • void *pvPortMalloc(size_t xSize)
  • void vPortFree(void *pv)

See building application without app_common for instructions on how to setup your project without app_common.

Flashing FreeRTOS projects

The flashing process is the same for projects using FreeRTOS. See STM32F7508 Discovery Kit Setup Instructions for detailed flashing instructions.

Available under certain Qt licenses.
Find out more.