上面的表格都是FreeRTOS内提供的源码,而在CubeMX生成的工程中我们只需要配置下面的东西就可以完成配置任务的目的。
Task Name 任务的名字
Priority是这个任务的优先级(CMSIS-V1版本支持7个优先级,而CMSIS-V2版本支持56个优先级,在此处我选择V2版本,因为V1版本不支持事件组的CubeMX配置,V2才支持)
Stack Size这里分配128words 也就是128x32 bits也就是512B(其实空闲任务可以分配更少的RAM空间,但是由于)
Entry Function任务函数,其实这个参数没啥用,和任务名字差不多
Code Generation Option定义函数的强弱,也没啥用
Parameter 一般都是NULL,也没啥用
Allocation Dynamic 是动态分配内存,交给操作系统分配,Static是自己手动分配,一般选择Dynamic
配置完成后选择OK就行了
································································································································
自动生成的代码长下面这样
最后我们只需要在任务函数里面加入我们需要的功能就可以了
如果我们不想让一个任务运行,把这个任务挂起就行了,相应的,也存在恢复函数(如果在中断中恢复就需要FromISR)