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-2010; 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.01.1
14 *
15 * LICENSING TERMS:
16 * ---------------
17 * uC/OS-III is provided in source form to registered licensees ONLY. It is
18 * illegal to distribute this source code to any third party unless you receive
19 * written permission by an authorized Micrium representative. Knowledge of
20 * the source code may NOT be used to develop a similar product.
21 *
22 * Please help us continue to provide the Embedded community with the finest
23 * software available. Your honesty is greatly appreciated.
24 *
25 * You can contact us at www.micrium.com.
26 ************************************************************************************************************************
27 */
28 
29 #ifndef OS_CFG_H
30 #define OS_CFG_H
31 
32 
33  /* ---------------------------- MISCELLANEOUS -------------------------- */
34 #define OS_CFG_APP_HOOKS_EN 1u /* Enable (1) or Disable (0) application specific hooks */
35 #define OS_CFG_ARG_CHK_EN 1u /* Enable (1) or Disable (0) argument checking */
36 #define OS_CFG_CALLED_FROM_ISR_CHK_EN 1u /* Enable (1) or Disable (0) check for called from ISR */
37 #define OS_CFG_DBG_EN 1u /* Enable (1) debug code/variables */
38 #define OS_CFG_ISR_POST_DEFERRED_EN 0u /* Enable (1) or Disable (0) Deferred ISR posts */
39 #define OS_CFG_OBJ_TYPE_CHK_EN 1u /* Enable (1) or Disable (0) object type checking */
40 #define OS_CFG_TS_EN 1u /* Enable (1) or Disable (0) time stamping */
41 
42 #define OS_CFG_PEND_MULTI_EN 1u /* Enable (1) or Disable (0) code generation for multi-pend feature */
43 
44 #define OS_CFG_PRIO_MAX 32u /* Defines the maximum number of task priorities (see OS_PRIO data type) */
45 
46 #define OS_CFG_SCHED_LOCK_TIME_MEAS_EN 1u /* Include code to measure scheduler lock time */
47 #define OS_CFG_SCHED_ROUND_ROBIN_EN 1u /* Include code for Round-Robin scheduling */
48 #define OS_CFG_STK_SIZE_MIN 128u /* Minimum allowable task stack size */
49 
50 
51  /* ----------------------------- EVENT FLAGS --------------------------- */
52 #define OS_CFG_FLAG_EN 1u /* Enable (1) or Disable (0) code generation for EVENT FLAGS */
53 #define OS_CFG_FLAG_DEL_EN 0u /* Include code for OSFlagDel() */
54 #define OS_CFG_FLAG_MODE_CLR_EN 0u /* Include code for Wait on Clear EVENT FLAGS */
55 #define OS_CFG_FLAG_PEND_ABORT_EN 0u /* Include code for OSFlagPendAbort() */
56 
57 
58  /* -------------------------- MEMORY MANAGEMENT ------------------------ */
59 #define OS_CFG_MEM_EN 1u /* Enable (1) or Disable (0) code generation for MEMORY MANAGER */
60 
61 
62  /* --------------------- MUTUAL EXCLUSION SEMAPHORES ------------------- */
63 #define OS_CFG_MUTEX_EN 1u /* Enable (1) or Disable (0) code generation for MUTEX */
64 #define OS_CFG_MUTEX_DEL_EN 0u /* Include code for OSMutexDel() */
65 #define OS_CFG_MUTEX_PEND_ABORT_EN 0u /* Include code for OSMutexPendAbort() */
66 
67 
68  /* --------------------------- MESSAGE QUEUES -------------------------- */
69 #define OS_CFG_Q_EN 1u /* Enable (1) or Disable (0) code generation for QUEUES */
70 #define OS_CFG_Q_DEL_EN 1u /* Include code for OSQDel() */
71 #define OS_CFG_Q_FLUSH_EN 1u /* Include code for OSQFlush() */
72 #define OS_CFG_Q_PEND_ABORT_EN 0u /* Include code for OSQPendAbort() */
73 
74 
75  /* ----------------------------- SEMAPHORES ---------------------------- */
76 #define OS_CFG_SEM_EN 1u /* Enable (1) or Disable (0) code generation for SEMAPHORES */
77 #define OS_CFG_SEM_DEL_EN 1u /* Include code for OSSemDel() */
78 #define OS_CFG_SEM_PEND_ABORT_EN 1u /* Include code for OSSemPendAbort() */
79 #define OS_CFG_SEM_SET_EN 1u /* Include code for OSSemSet() */
80 
81 
82  /* -------------------------- TASK MANAGEMENT -------------------------- */
83 #define OS_CFG_STAT_TASK_EN 1u /* Enable (1) or Disable(0) the statistics task */
84 #define OS_CFG_STAT_TASK_STK_CHK_EN 1u /* Check task stacks from statistic task */
85 
86 #define OS_CFG_TASK_CHANGE_PRIO_EN 1u /* Include code for OSTaskChangePrio() */
87 #define OS_CFG_TASK_DEL_EN 0u /* Include code for OSTaskDel() */
88 #define OS_CFG_TASK_Q_EN 1u /* Include code for OSTaskQXXXX() */
89 #define OS_CFG_TASK_Q_PEND_ABORT_EN 0u /* Include code for OSTaskQPendAbort() */
90 #define OS_CFG_TASK_PROFILE_EN 1u /* Include variables in OS_TCB for profiling */
91 #define OS_CFG_TASK_REG_TBL_SIZE 1u /* Number of task specific registers */
92 #define OS_CFG_TASK_SEM_PEND_ABORT_EN 1u /* Include code for OSTaskSemPendAbort() */
93 #define OS_CFG_TASK_SUSPEND_EN 1u /* Include code for OSTaskSuspend() and OSTaskResume() */
94 
95 
96  /* -------------------------- TIME MANAGEMENT -------------------------- */
97 #define OS_CFG_TIME_DLY_HMSM_EN 1u /* Include code for OSTimeDlyHMSM() */
98 #define OS_CFG_TIME_DLY_RESUME_EN 0u /* Include code for OSTimeDlyResume() */
99 
100 
101  /* ------------------------- TIMER MANAGEMENT -------------------------- */
102 #define OS_CFG_TMR_EN 1u /* Enable (1) or Disable (0) code generation for TIMERS */
103 #define OS_CFG_TMR_DEL_EN 0u /* Enable (1) or Disable (0) code generation for OSTmrDel() */
104 
105 #endif