本文是笔者在学习 正点原子官方 的《【正点原子】手把手教你学FreeRTOS实时系统》系列视频时整理的笔记。
视频讲解清晰透彻,非常感谢UP主的无私奉献!原课程链接如下:
👉 B站视频链接:【正点原子】手把手教你学FreeRTOS实时系统_哔哩哔哩_bilibili
1、配置静态宏
FreeRTOS_Config.h
因为要使用静态方式,所以将宏configSUPPORT_STATIC_ALLOCATION配置为1
2、定义空闲任务和定时任务的任务堆栈及TCB
FreeRTOS_demo.h
编译之后发现有两个错误,查找之后得知只提供了接口,需要人为去实现定义。
ppxIdleTaskTCBBuffer:空闲任务的任务控制块,需要手动分配内存给它,用来保存任务的特征和信息。
ppxIdleTaskStackBuffer:空闲任务的栈内存
pulIdleTaskStackSize:空闲任务的栈大小
3、实现两个接口函数
4、定义函数入口参数
5、编写任务函数
需要注意的是静态用的是xTaskCreateStatic函数,并返回句柄,方便删除。