LPCOpen Platform  v1.03
LPCOpen Platform for NXP LPC Microcontrollers
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
os_type.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 * File : OS_TYPE.H
10 * By : JJL
11 * Version : V3.03.00
12 *
13 * LICENSING TERMS:
14 * ---------------
15 * uC/OS-III is provided in source form for FREE short-term evaluation, for educational use or
16 * for peaceful research. If you plan or intend to use uC/OS-III in a commercial application/
17 * product then, you need to contact Micrium to properly license uC/OS-III for its use in your
18 * application/product. We provide ALL the source code for your convenience and to help you
19 * experience uC/OS-III. The fact that the source is provided does NOT mean that you can use
20 * it commercially without paying a licensing fee.
21 *
22 * Knowledge of the source code may NOT be used to develop a similar product.
23 *
24 * Please help us continue to provide the embedded community with the finest software available.
25 * Your honesty is greatly appreciated.
26 *
27 * You can contact us at www.micrium.com, or by phone at +1 (954) 217-2036.
28 ************************************************************************************************************************
29 */
30 
31 #ifndef OS_TYPE_H
32 #define OS_TYPE_H
33 
34 #ifdef VSC_INCLUDE_H_FILE_NAMES
35 const CPU_CHAR *os_type__h = "$Id: $";
36 #endif
37 
38 /*
39 ************************************************************************************************************************
40 * INCLUDE HEADER FILES
41 ************************************************************************************************************************
42 */
43 
44  /* Description # Bits */
45  /* <recommended> */
46  /* ----------------------------------------------------------- */
47 
48 typedef CPU_INT16U OS_CPU_USAGE; /* CPU Usage 0..10000 <16>/32 */
49 
50 typedef CPU_INT32U OS_CTR; /* Counter, 32 */
51 
52 typedef CPU_INT32U OS_CTX_SW_CTR; /* Counter of context switches, 32 */
53 
54 typedef CPU_INT32U OS_CYCLES; /* CPU clock cycles, <32>/64 */
55 
56 typedef CPU_INT32U OS_FLAGS; /* Event flags, 8/16/<32> */
57 
58 typedef CPU_INT32U OS_IDLE_CTR; /* Holds the number of times the idle task runs, <32>/64 */
59 
60 typedef CPU_INT16U OS_MEM_QTY; /* Number of memory blocks, <16>/32 */
61 typedef CPU_INT16U OS_MEM_SIZE; /* Size in bytes of a memory block, <16>/32 */
62 
63 typedef CPU_INT16U OS_MSG_QTY; /* Number of OS_MSGs in the msg pool, <16>/32 */
64 typedef CPU_INT16U OS_MSG_SIZE; /* Size of messages in number of bytes, <16>/32 */
65 
66 typedef CPU_INT08U OS_NESTING_CTR; /* Interrupt and scheduler nesting, <8>/16/32 */
67 
68 typedef CPU_INT16U OS_OBJ_QTY; /* Number of kernel objects counter, <16>/32 */
69 typedef CPU_INT32U OS_OBJ_TYPE; /* Special flag to determine object type, 32 */
70 
71 typedef CPU_INT16U OS_OPT; /* Holds function options <16>/32 */
72 
73 typedef CPU_INT08U OS_PRIO; /* Priority of a task, <8>/16/32 */
74 
75 typedef CPU_INT16U OS_QTY; /* Quantity <16>/32 */
76 
77 typedef CPU_INT32U OS_RATE_HZ; /* Rate in Hertz 32 */
78 
79 typedef CPU_INT32U OS_REG; /* Task register 8/16/<32> */
80 typedef CPU_INT08U OS_REG_ID; /* Index to task register <8>/16/32 */
81 
82 typedef CPU_INT32U OS_SEM_CTR; /* Semaphore value 16/<32> */
83 
84 typedef CPU_INT08U OS_STATE; /* State variable <8>/16/32 */
85 
86 typedef CPU_INT08U OS_STATUS; /* Status <8>/16/32 */
87 
88 typedef CPU_INT32U OS_TICK; /* Clock tick counter <32>/64 */
89 typedef CPU_INT16U OS_TICK_SPOKE_IX; /* Tick wheel spoke position 8/<16>/32 */
90 
91 typedef CPU_INT16U OS_TMR_SPOKE_IX; /* Timer wheel spoke position 8/<16>/32 */
92 
93 #endif