前言
官网:www.freertos.org
任务如何创建、优先级如何分配、内部 IPC 通信机制如何使用
野火教程笔记
1.写一个freertos
2.freertos应用开发
移植
到官网下载源码后,将src,include、MemMang文件夹移植到我们需要的工程中我们需要的文件以及文件夹如下所示:
freertos //新建freertos文件夹放在工程中
├── include //include文件夹
├── port
│ ├── MemMang
│ │ └── heap_4.c
│ └── RVDS
│ └── ARM_CM3
│ ├── port.c
│ └── portmacro.h
└── src //src文件夹
新建工程,添加文件如图所示:
钩子函数
freertos空闲任务钩子函数的应用:
空闲任务钩子是一个函数,这个函数由用户来实现。
FreeRTOS规定了函数的名字和参数:void vApplicationIdleHook(void ),这个函数在每个空闲任务周期都会被调用。
对于已经删除的RTOS任务,空闲任务可以释放分配给它们的堆栈内存。因此必须保证空闲任务可以被CPU执行。
使用空闲钩子函数设置CPU进入省电模式是很常见的。
不可以调用会引起空闲任务阻塞的API函数。