使用Stm32CubeMX+FreeRTOS的组合

使用STM32CubeMX来生成带MiddleWare的FreeRTOS的代码 ,可以在STM32CubeMX中使能FreeRTOS,如下图

使用Stm32CubeMX+FreeRTOS的组合_第1张图片

在以下位置配置FreeRTOS的Configure和Task内容

使用Stm32CubeMX+FreeRTOS的组合_第2张图片

这样的方式比直接移植FreeRTOS要方便很多。

比如配置了两个Task,defaultTask和LEDFlashTask。

使用Stm32CubeMX+FreeRTOS的组合_第3张图片

在生成的IAR工程的main.c内,就会自动加入如下的代码

 /* Create the thread(s) */
  /* definition and creation of defaultTask */
  osThreadDef(defaultTask, StartDefaultTask, osPriorityNormal, 0, 128);
  defaultTaskHandle = osThreadCreate(osThread(defaultTask), NULL);

  /* definition and creation of LEDFlashTask */
  osThreadDef(LEDFlashTask, StartLEDFlashTask, osPriorityLow, 0, 128);
  LEDFlashTaskHandle = osThreadCreate(osThread(LEDFlashTask), NULL);

  /* USER CODE BEGIN RTOS_THREADS */
  /* add threads, ... */
  /* USER CODE END RTOS_THREADS */

  /* USER CODE BEGIN RTOS_QUEUES */
  /* add queues, ... */
  /* USER CODE END RTOS_QUEUES */



你可能感兴趣的:(STM32CubeMX)