一,FreeRTOS系统简介
1,FreeRTOS操作系统提供功能包括:任务管理、时间管理、信号量、消息队列、内存管理、记录功能等,可基本知足较小系统的须要。
2,FreeRTOS 系统内核支持优先级调度算法,每一个任务可根据重要程度的不一样被赋予必定的优先级,CPU 老是让处于就绪态的、优先级最高的任务先运行。FreeRT0S 内核同时支持轮换调度算法,系统容许不一样的任务使用相同的优先级,在没有更高优先级任务就绪的状况下,同一优先级的任务共享CPU 的使用时间。FreeRTOS 的内核可根据用户须要设置为可剥夺型内核或不可剥夺型内核。
3,当FreeRTOS 被设置为可剥夺型内核时,处于就绪态的高优先级任务能剥夺低优先级任务的CPU 使用权,这样可保证系统知足实时性的要求;当FreeRTOS 被设置为不可剥夺型内核时,处于就绪态的高优先级任务只有等当前运行任务主动释放CPU 的使用权后才能得到运行,这样可提升CPU 的运行效率FreeRTOS 对系统任务的数量没有限制。
二,定义各种变量类型
#define portCHAR char
#define portFLOAT float
#define portDOUBLE double
#define portLONG long
#define portSHORT short
#define portSTACK_TYPE unsigned portLONG
#define portBASE_TYPE long
任务处理头文件函数只有一个:task.h