|
1、configUSE_PREEMPTION
1 使能抢占式调度器0 使能合作式调度器
2、configUSE_PORT_OPTIMISED_TASK_SELECTION
此配置用于优化优先级列表中要执行的最高优先级任务的算法。 对CM内核的移植文件,默认已经在文件portmacro.h文件中使能。
1) 通用方式——配置为 0:
·所有平台的移植文件都可以配置为 0,因为这是通用方式。
·纯 C 编写,比专用方式效率低。
·可用的优先级数量不限制。
2) 专用方式——配置为 1:
·部分平台支持。
·这些平台架构有专用的汇编指令,比如 CLZ(Count Leading Zeros)指令,通过这些指令可以加快算法执行速度。
·比通用方式高效。
·有最大优先级数限制,通常限制为32个
3、configUSE_TICKLESS_IDLE
1 使能 tickless 低功耗模式
0 禁用 tickless 低功耗模式
4、configCPU_CLOCK_HZ 定义CPU时钟主频
5、configTICK_RATE_HZ
定义系统时钟的节拍数,单位是Hz,如配置为1000则表示1ms
6、configMAX_PRIORITIES
定义允许用户使用的最大优先级数
7、configMINIMAL_STACK_SIZE
定义空闲任务的栈空间大小
8、configMAX_TASK_NAME_LEN 定义任务名的最大字符个数
9、configUSE_16_BIT_TICKS
系统时钟节拍计数使用 TickType_t 数据类型定义的。如果用户使能了宏定义configUSE_16_BIT_TICKS,那么 TickType_t 定义的就是 16 位无符号数,如果没有使能,那么 TickType_t 定义的就是 32 位无符号数。32位处理器此定义设置为0,16位和8位处理器此定义设置为1。16位机上此位也可以置0,但是会影响处理效率。
10、configIDLE_SHOULD_YIELD
此参数用于使能与空闲任务同优先级的任务,只有满足以下两个条件时,此参数才有效果:
1. 使能抢占式调度器。
2. 有创建与空闲任务同优先级的任务。
配置为1,就可以使能此特性了,实际应用中不建议用户使用此功能,将其配置为0即可。
11、configUSE_TASK_NOTIFICATIONS
1 使能任务间直接的消息传递,包含信号量,事件标志组和消息邮箱。
0 禁能此特性
12、configUSE_MUTEXES 使能互斥信号量
13、configUSE_RECURSIVE_MUTEXES 使能递归互斥信号量
14、configUSE_COUNTING_SEMAPHORES 使能计数信号量
15、configQUEUE_REGISTRY_SIZE 通过此定义来设置可以注册的信号量和消息队列个数
16、configUSE_QUEUE_SETS 使能消息队列
17、configUSE_TIME_SLICING 使能时间片调度(FreeRtos.h中默认打开)
18、configUSE_NEWLIB_REENTRANT 1表示每个任务创建的时候将分配 Newlib 的重入结构体。
19、configENABLE_BACKWARD_COMPATIBILITY
使能新版本对老版本的兼容特性,即向后兼容或者说向下兼容。
20、configNUM_THREAD_LOCAL_STORAGE_POINTERS
此配置用于定义线程局部指针变量的个数。
|
|