| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 |
- /*
- ************************************************************************************************************************
- * 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 0u //使能/禁用钩子函数
- #define OS_CFG_ARG_CHK_EN 1u //使能/禁用参数检测
- #define OS_CFG_CALLED_FROM_ISR_CHK_EN 1u //使能/禁用检测中断中非法调用功能
- #define OS_CFG_DBG_EN 1u //使能/禁用调试代码和变量
- #define OS_CFG_ISR_POST_DEFERRED_EN 1u //使能/禁用中断延迟发布
- #define OS_CFG_OBJ_TYPE_CHK_EN 1u //使能/禁用对象类型检测
- #define OS_CFG_TS_EN 1u //使能/禁用时间戳
- /* ---------------------------- MISCELLANEOUS -------------------------- */
- #define OS_CFG_PEND_MULTI_EN 1u /* Enable (1) or Disable (0) code generation for multi-pend feature */
- #define OS_CFG_PRIO_MAX 64u /* 定义优先级的最大值 (see OS_PRIO data type) */
- #define OS_CFG_SCHED_LOCK_TIME_MEAS_EN 0u /* Include code to measure scheduler lock time */
- #define OS_CFG_SCHED_ROUND_ROBIN_EN 1u //使能/禁用时间片轮转调度
- #define OS_CFG_STK_SIZE_MIN 64u /* Minimum allowable task stack size */
- /* ----------------------------- EVENT FLAGS --------------------------- */
- #define OS_CFG_FLAG_EN 0u //使能/禁用事件标志组
- #define OS_CFG_FLAG_DEL_EN 0u //使能/禁用 OSFlagDel() 函数
- #define OS_CFG_FLAG_MODE_CLR_EN 0u //使能/禁用标志位清0触发模式
- #define OS_CFG_FLAG_PEND_ABORT_EN 0u //使能/禁用 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 0u //使能或禁用互斥信号量
- #define OS_CFG_MUTEX_DEL_EN 0u //使能或禁用 OSMutexDel() 函数
- #define OS_CFG_MUTEX_PEND_ABORT_EN 0u //使能或禁用 OSMutexPendAbort() 函数
- /* --------------------------- MESSAGE QUEUES -------------------------- */
- #define OS_CFG_Q_EN 1u //使能/禁用消息队列
- #define OS_CFG_Q_DEL_EN 0u //使能或禁用 OSQDel() 函数
- #define OS_CFG_Q_FLUSH_EN 0u //使能或禁用 OSQFlush() 函数
- #define OS_CFG_Q_PEND_ABORT_EN 0u //使能或禁用 OSQPendAbort() 函数
- /* ----------------------------- SEMAPHORES ---------------------------- */
- #define OS_CFG_SEM_EN 1u //使能或禁用多值信号量
- #define OS_CFG_SEM_DEL_EN 0u //使能或禁用 OSSemDel() 函数
- #define OS_CFG_SEM_PEND_ABORT_EN 0u //使能或禁用 OSSemPendAbort() 函数
- #define OS_CFG_SEM_SET_EN 0u //使能或禁用 OSSemSet() 函数
- /* -------------------------- TASK MANAGEMENT -------------------------- */
- #define OS_CFG_STAT_TASK_EN 1u /* 使能或禁用 OS_StatTask() 统计任务函数 */
- #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 */
- #define OS_CFG_TASK_REG_TBL_SIZE 1u //任务寄存器个数
- #define OS_CFG_TASK_SEM_PEND_ABORT_EN 1u /* Include code for OSTaskSemPendAbort() */
- #define OS_CFG_TASK_SUSPEND_EN 1u //使能/禁用函数 OSTaskSuspend() 和 OSTaskResume()
- /* -------------------------- TIME MANAGEMENT -------------------------- */
- #define OS_CFG_TIME_DLY_HMSM_EN 1u //使能/禁用 OSTimeDlyHMSM() 函数
- #define OS_CFG_TIME_DLY_RESUME_EN 0u //使能/禁用 OSTimeDlyResume() 函数
- /* ------------------------- TIMER MANAGEMENT -------------------------- */
- #define OS_CFG_TMR_EN 1u //使能/禁用软件定时器
- #define OS_CFG_TMR_DEL_EN 1u //使能/禁用 OSTmrDel() 函数
- #endif
|