基于STM32的FreeROTS实时操作系统1

本开发是基于STM32CUBEIDE1.4.0
与STM32CUBEMX相同FreeRTOS的组件在:
基于STM32的FreeROTS实时操作系统1在Interface中选择CMSIS_V1,选择这个界面适合STM32的开发,接下来选择合适的任务进行设置。
基于STM32的FreeROTS实时操作系统1对与这么多的选项,我们只需要关注,Task name ,Priority,Entry Function;
其中对于Task Name 和 Entry Function 的名字最好相同。

基于STM32的FreeROTS实时操作系统11)。为任务定义一个ThreadID。这个变量将存储创建后任务的唯一ID。所有的操作都需要这个ID osThreadId Task3Handle;
2)。为任务定义入口函数。这是该任务的主要功能。你的程序将在里面写。请记住,自由RTOS中的任务不是设计来处理任何返回值的。所以入口函数应该总是有一个无限循环,你的整个程序都应该在其中编写。
所有关于FreeRTOS的初始化都存放在freertos.c的文件中。
基于STM32的FreeROTS实时操作系统1如果你将程序写在main.c的while循环中,这里面的程序就不会被执行,因程序在对程序初始化时,程序就在你设定的任务中不停的循环,不会再次调到main函数中执行。
基于STM32的FreeROTS实时操作系统1如果你想创建一个新的任务,不需要到工程界面中添加相应的任务,只需要在freertos.c文件中模仿IDE生成的函数,再更改一下函数名即可。
如果你想自定义任务的执行顺序,那么可以对每个任务的优先级进行设置,
基于STM32的FreeROTS实时操作系统1