LPCOpen Platform  v1.03
LPCOpen Platform for NXP LPC Microcontrollers
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
os_cfg.h
Go to the documentation of this file.
1 /*
2 ************************************************************************************************************************
3 * uC/OS-III
4 * The Real-Time Kernel
5 *
6 * (c) Copyright 2009-2012; Micrium, Inc.; Weston, FL
7 * All rights reserved. Protected by international copyright laws.
8 *
9 * CONFIGURATION FILE
10 *
11 * File : OS_CFG.H
12 * By : JJL
13 * Version : V3.03.00
14 *
15 * LICENSING TERMS:
16 * ---------------
17 * uC/OS-III is provided in source form for FREE short-term evaluation, for educational use or
18 * for peaceful research. If you plan or intend to use uC/OS-III in a commercial application/
19 * product then, you need to contact Micrium to properly license uC/OS-III for its use in your
20 * application/product. We provide ALL the source code for your convenience and to help you
21 * experience uC/OS-III. The fact that the source is provided does NOT mean that you can use
22 * it commercially without paying a licensing fee.
23 *
24 * Knowledge of the source code may NOT be used to develop a similar product.
25 *
26 * Please help us continue to provide the embedded community with the finest software available.
27 * Your honesty is greatly appreciated.
28 *
29 * You can contact us at www.micrium.com, or by phone at +1 (954) 217-2036.
30 ************************************************************************************************************************
31 */
32 
33 #ifndef OS_CFG_H
34 #define OS_CFG_H
35 
36 
37  /* ---------------------------- MISCELLANEOUS -------------------------- */
38 #define OS_CFG_APP_HOOKS_EN 1u /* Enable (1) or Disable (0) application specific hooks */
39 #define OS_CFG_ARG_CHK_EN 1u /* Enable (1) or Disable (0) argument checking */
40 #define OS_CFG_CALLED_FROM_ISR_CHK_EN 1u /* Enable (1) or Disable (0) check for called from ISR */
41 #define OS_CFG_DBG_EN 1u /* Enable (1) debug code/variables */
42 #define OS_CFG_ISR_POST_DEFERRED_EN 0u /* Enable (1) or Disable (0) Deferred ISR posts */
43 #define OS_CFG_OBJ_TYPE_CHK_EN 1u /* Enable (1) or Disable (0) object type checking */
44 #define OS_CFG_TS_EN 1u /* Enable (1) or Disable (0) time stamping */
45 
46 #define OS_CFG_PEND_MULTI_EN 1u /* Enable (1) or Disable (0) code generation for multi-pend feature */
47 
48 #define OS_CFG_PRIO_MAX 32u /* Defines the maximum number of task priorities (see OS_PRIO data type) */
49 
50 #define OS_CFG_SCHED_LOCK_TIME_MEAS_EN 1u /* Include code to measure scheduler lock time */
51 #define OS_CFG_SCHED_ROUND_ROBIN_EN 1u /* Include code for Round-Robin scheduling */
52 #define OS_CFG_STK_SIZE_MIN 64u /* Minimum allowable task stack size */
53 
54 
55  /* ----------------------------- EVENT FLAGS --------------------------- */
56 #define OS_CFG_FLAG_EN 1u /* Enable (1) or Disable (0) code generation for EVENT FLAGS */
57 #define OS_CFG_FLAG_DEL_EN 0u /* Include code for OSFlagDel() */
58 #define OS_CFG_FLAG_MODE_CLR_EN 0u /* Include code for Wait on Clear EVENT FLAGS */
59 #define OS_CFG_FLAG_PEND_ABORT_EN 0u /* Include code for OSFlagPendAbort() */
60 
61 
62  /* -------------------------- MEMORY MANAGEMENT ------------------------ */
63 #define OS_CFG_MEM_EN 1u /* Enable (1) or Disable (0) code generation for MEMORY MANAGER */
64 
65 
66  /* --------------------- MUTUAL EXCLUSION SEMAPHORES ------------------- */
67 #define OS_CFG_MUTEX_EN 1u /* Enable (1) or Disable (0) code generation for MUTEX */
68 #define OS_CFG_MUTEX_DEL_EN 0u /* Include code for OSMutexDel() */
69 #define OS_CFG_MUTEX_PEND_ABORT_EN 0u /* Include code for OSMutexPendAbort() */
70 
71 
72  /* --------------------------- MESSAGE QUEUES -------------------------- */
73 #define OS_CFG_Q_EN 1u /* Enable (1) or Disable (0) code generation for QUEUES */
74 #define OS_CFG_Q_DEL_EN 0u /* Include code for OSQDel() */
75 #define OS_CFG_Q_FLUSH_EN 0u /* Include code for OSQFlush() */
76 #define OS_CFG_Q_PEND_ABORT_EN 1u /* Include code for OSQPendAbort() */
77 
78 
79  /* ----------------------------- SEMAPHORES ---------------------------- */
80 #define OS_CFG_SEM_EN 1u /* Enable (1) or Disable (0) code generation for SEMAPHORES */
81 #define OS_CFG_SEM_DEL_EN 0u /* Include code for OSSemDel() */
82 #define OS_CFG_SEM_PEND_ABORT_EN 1u /* Include code for OSSemPendAbort() */
83 #define OS_CFG_SEM_SET_EN 1u /* Include code for OSSemSet() */
84 
85 
86  /* -------------------------- TASK MANAGEMENT -------------------------- */
87 #define OS_CFG_STAT_TASK_EN 1u /* Enable (1) or Disable(0) the statistics task */
88 #define OS_CFG_STAT_TASK_STK_CHK_EN 1u /* Check task stacks from statistic task */
89 
90 #define OS_CFG_TASK_CHANGE_PRIO_EN 1u /* Include code for OSTaskChangePrio() */
91 #define OS_CFG_TASK_DEL_EN 0u /* Include code for OSTaskDel() */
92 #define OS_CFG_TASK_Q_EN 1u /* Include code for OSTaskQXXXX() */
93 #define OS_CFG_TASK_Q_PEND_ABORT_EN 0u /* Include code for OSTaskQPendAbort() */
94 #define OS_CFG_TASK_PROFILE_EN 1u /* Include variables in OS_TCB for profiling */
95 #define OS_CFG_TASK_REG_TBL_SIZE 1u /* Number of task specific registers */
96 #define OS_CFG_TASK_SEM_PEND_ABORT_EN 1u /* Include code for OSTaskSemPendAbort() */
97 #define OS_CFG_TASK_SUSPEND_EN 1u /* Include code for OSTaskSuspend() and OSTaskResume() */
98 
99 
100  /* -------------------------- TIME MANAGEMENT -------------------------- */
101 #define OS_CFG_TIME_DLY_HMSM_EN 1u /* Include code for OSTimeDlyHMSM() */
102 #define OS_CFG_TIME_DLY_RESUME_EN 0u /* Include code for OSTimeDlyResume() */
103 
104 
105  /* ------------------- TASK LOCAL STORAGE MANAGEMENT ------------------- */
106 #define OS_CFG_TLS_TBL_SIZE 0u /* Include code for Task Local Storage (TLS) registers */
107 
108 
109  /* ------------------------- TIMER MANAGEMENT -------------------------- */
110 #define OS_CFG_TMR_EN 1u /* Enable (1) or Disable (0) code generation for TIMERS */
111 #define OS_CFG_TMR_DEL_EN 0u /* Enable (1) or Disable (0) code generation for OSTmrDel() */
112 
113 #endif