/* ************************************************************************************************************************ * uC/OS-III * The Real-Time Kernel * * (c) Copyright 2009-2011; Micrium, Inc.; Weston, FL * All rights reserved. Protected by international copyright laws. * * CONFIGURATION FILE * * File : OS_CFG.H * By : JJL 注释:~风中的叶~ * Version : V3.02.00 * * LICENSING TERMS: * --------------- * uC/OS-III is provided in source form for FREE short-term evaluation, for educational use or * for peaceful research. If you plan or intend to use uC/OS-III in a commercial application/ * product then, you need to contact Micrium to properly license uC/OS-III for its use in your * application/product. We provide ALL the source code for your convenience and to help you * experience uC/OS-III. The fact that the source is provided does NOT mean that you can use * it commercially without paying a licensing fee. * * Knowledge of the source code may NOT be used to develop a similar product. * * Please help us continue to provide the embedded community with the finest software available. * Your honesty is greatly appreciated. * * You can contact us at www.micrium.com, or by phone at +1 (954) 217-2036. ************************************************************************************************************************ */
#ifndef OS_CFG_H #define OS_CFG_H
/* ---------------------------- MISCELLANEOUS -------------------------- */ #define OS_CFG_APP_HOOKS_EN 1u /* Enable (1) or Disable (0) application specific hooks;HOOK功能的使能 */ #define OS_CFG_ARG_CHK_EN 1u /* Enable (1) or Disable (0) argument checking;参数检测使能(调试的时候允许)*/ #define OS_CFG_CALLED_FROM_ISR_CHK_EN 1u /* Enable (1) or Disable (0) check for called from ISR;是否允许在ISR中调用系统函数(除了POST)*/ #define OS_CFG_DBG_EN 1u /* Enable (1) debug code/variables ;debug功能允许使能(可以知道OS_TCB的大小等,调试的时候使能)*/ #define OS_CFG_ISR_POST_DEFERRED_EN 1u /* Enable (1) or Disable (0) Deferred ISR posts;使能则有短的中断延时,但是有长的ISR—to—task响应*/ #define OS_CFG_OBJ_TYPE_CHK_EN 1u /* Enable (1) or Disable (0) object type checking;对象类型检测(调试的时候允许)*/ #define OS_CFG_TS_EN 1u /* Enable (1) or Disable (0) time stamping;时间戳使能 */
#define OS_CFG_PEND_MULTI_EN 1u /* Enable (1) or Disable (0) code generation for multi-pend feature是否支持事件的多路等待功能*/
#define OS_CFG_PRIO_MAX 64u /* Defines the maximum number of task priorities (see OS_PRIO data type)任务优先级的最大数*/
#define OS_CFG_SCHED_LOCK_TIME_MEAS_EN 1u /* Include code to measure scheduler lock time包含测量调度锁定时间的代码 */ #define OS_CFG_SCHED_ROUND_ROBIN_EN 1u /* Include code for Round-Robin scheduling 包含轮转调度的代码 */ #define OS_CFG_STK_SIZE_MIN 64u /* Minimum allowable task stack size 最小允许的任务堆栈的大小 */
/* ----------------------------- EVENT FLAGS --------------------------- */ #define OS_CFG_FLAG_EN 1u /* Enable (1) or Disable (0) code generation for EVENT FLAGS使能事件标志的代码*/ #define OS_CFG_FLAG_DEL_EN 1u /* Include code for OSFlagDel()使能标志删除功能 */ #define OS_CFG_FLAG_MODE_CLR_EN 1u /* Include code for Wait on Clear EVENT FLAGS使能等待清除事件标志功能*/ #define OS_CFG_FLAG_PEND_ABORT_EN 1u /* Include code for OSFlagPendAbort()标志事件的等待终止功能 */
/* -------------------------- MEMORY MANAGEMENT ------------------------ */ #define OS_CFG_MEM_EN 1u /* Enable (1) or Disable (0) code generation for MEMORY MANAGER是否允许内存管理的功能*/
/* --------------------- MUTUAL EXCLUSION SEMAPHORES ------------------- */ #define OS_CFG_MUTEX_EN 1u /* Enable (1) or Disable (0) code generation for MUTEX互斥性信号量功能使能*/ #define OS_CFG_MUTEX_DEL_EN 1u /* Include code for OSMutexDel()互斥性信号量删除功能使能 */ #define OS_CFG_MUTEX_PEND_ABORT_EN 1u /* Include code for OSMutexPendAbort()互斥性信号量等待终止功能使能 */
/* --------------------------- MESSAGE QUEUES -------------------------- */ #define OS_CFG_Q_EN 1u /* Enable (1) or Disable (0) code generation for QUEUES消息队列功能使能 */ #define OS_CFG_Q_DEL_EN 1u /* Include code for OSQDel() 消息队列删除功能使能 */ #define OS_CFG_Q_FLUSH_EN 1u /* Include code for OSQFlush()消息队列刷新功能使能 */ #define OS_CFG_Q_PEND_ABORT_EN 1u /* Include code for OSQPendAbort()消息队列等待终止功能使能 */
/* ----------------------------- SEMAPHORES ---------------------------- */ #define OS_CFG_SEM_EN 1u /* Enable (1) or Disable (0) code generation for SEMAPHORES信号量功能使能*/ #define OS_CFG_SEM_DEL_EN 1u /* Include code for OSSemDel()信号量删除功能使能 */ #define OS_CFG_SEM_PEND_ABORT_EN 1u /* Include code for OSSemPendAbort()信号量等待终止功能使能 */ #define OS_CFG_SEM_SET_EN 1u /* Include code for OSSemSet()信号量置位功能使能 */
/* -------------------------- TASK MANAGEMENT -------------------------- */ #define OS_CFG_STAT_TASK_EN 1u /* Enable (1) or Disable(0) the statistics task统计功能使能 */ #define OS_CFG_STAT_TASK_STK_CHK_EN 1u /* Check task stacks from statistic task统计任务堆栈检测功能使能 */
#define OS_CFG_TASK_CHANGE_PRIO_EN 1u /* Include code for OSTaskChangePrio()改变任务优先级功能使能 */ #define OS_CFG_TASK_DEL_EN 1u /* Include code for OSTaskDel() 任务删除功能使能 */ #define OS_CFG_TASK_Q_EN 1u /* Include code for OSTaskQXXXX()任务消息队列功能使能 */ #define OS_CFG_TASK_Q_PEND_ABORT_EN 1u /* Include code for OSTaskQPendAbort()任务消息队列等待取消功能使能 */ #define OS_CFG_TASK_PROFILE_EN 1u /* Include variables in OS_TCB for profiling使能任务的详细情况功能,包括任务的切换次数,执行时间,相对于其他任务的CPU利用率*/ #define OS_CFG_TASK_REG_TBL_SIZE 1u /* Number of task specific registers任务特殊功能寄存器 */ #define OS_CFG_TASK_SEM_PEND_ABORT_EN 1u /* Include code for OSTaskSemPendAbort()任务信号量等待取消功能使能 */ #define OS_CFG_TASK_SUSPEND_EN 1u /* Include code for OSTaskSuspend() and OSTaskResume()任务暂时中止和恢复功能使能*/
/* -------------------------- TIME MANAGEMENT -------------------------- */ #define OS_CFG_TIME_DLY_HMSM_EN 1u /* Include code for OSTimeDlyHMSM()时间延时函数使能 */ #define OS_CFG_TIME_DLY_RESUME_EN 1u /* Include code for OSTimeDlyResume()时间延时取消功能使能 */
/* ------------------------- TIMER MANAGEMENT -------------------------- */ #define OS_CFG_TMR_EN 1u /* Enable (1) or Disable (0) code generation for TIMERS定时器功能使能 */ #define OS_CFG_TMR_DEL_EN 1u /* Enable (1) or Disable (0) code generation for OSTmrDel()定时器删除功能使能*/
#endif