electronix79
/
CoOS_mbed
CooCox 1.1.4 on mbed with simple blinky example
CoOS/kernel/OsFlag.h@0:7f6d87f66362, 2011-07-29 (annotated)
- Committer:
- electronix79
- Date:
- Fri Jul 29 03:01:03 2011 +0000
- Revision:
- 0:7f6d87f66362
CooCox 1.1.4
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
electronix79 | 0:7f6d87f66362 | 1 | /** |
electronix79 | 0:7f6d87f66362 | 2 | ******************************************************************************* |
electronix79 | 0:7f6d87f66362 | 3 | * @file OsFlag.h |
electronix79 | 0:7f6d87f66362 | 4 | * @version V1.1.4 |
electronix79 | 0:7f6d87f66362 | 5 | * @date 2011.04.20 |
electronix79 | 0:7f6d87f66362 | 6 | * @brief Evnet flag management header file |
electronix79 | 0:7f6d87f66362 | 7 | * @details This file including some defines and declares about flag management. |
electronix79 | 0:7f6d87f66362 | 8 | ******************************************************************************* |
electronix79 | 0:7f6d87f66362 | 9 | * @copy |
electronix79 | 0:7f6d87f66362 | 10 | * |
electronix79 | 0:7f6d87f66362 | 11 | * INTERNAL FILE,DON'T PUBLIC. |
electronix79 | 0:7f6d87f66362 | 12 | * |
electronix79 | 0:7f6d87f66362 | 13 | * <h2><center>© COPYRIGHT 2009 CooCox </center></h2> |
electronix79 | 0:7f6d87f66362 | 14 | ******************************************************************************* |
electronix79 | 0:7f6d87f66362 | 15 | */ |
electronix79 | 0:7f6d87f66362 | 16 | |
electronix79 | 0:7f6d87f66362 | 17 | |
electronix79 | 0:7f6d87f66362 | 18 | #ifndef _FLAG_H |
electronix79 | 0:7f6d87f66362 | 19 | #define _FLAG_H |
electronix79 | 0:7f6d87f66362 | 20 | |
electronix79 | 0:7f6d87f66362 | 21 | /** |
electronix79 | 0:7f6d87f66362 | 22 | * @struct FlagNode flag.h |
electronix79 | 0:7f6d87f66362 | 23 | * @brief Flag node struct |
electronix79 | 0:7f6d87f66362 | 24 | * @details |
electronix79 | 0:7f6d87f66362 | 25 | */ |
electronix79 | 0:7f6d87f66362 | 26 | typedef struct FlagNode |
electronix79 | 0:7f6d87f66362 | 27 | { |
electronix79 | 0:7f6d87f66362 | 28 | struct FlagNode* nextNode; /*!< A pointer to next flag node */ |
electronix79 | 0:7f6d87f66362 | 29 | struct FlagNode* prevNode; /*!< A pointer to prev flag node */ |
electronix79 | 0:7f6d87f66362 | 30 | U32 waitFlags; /*!< Flag value */ |
electronix79 | 0:7f6d87f66362 | 31 | P_OSTCB waitTask; /*!< A pointer to task waitting flag */ |
electronix79 | 0:7f6d87f66362 | 32 | U8 waitType; /*!< Wait type */ |
electronix79 | 0:7f6d87f66362 | 33 | }FLAG_NODE,*P_FLAG_NODE; |
electronix79 | 0:7f6d87f66362 | 34 | |
electronix79 | 0:7f6d87f66362 | 35 | |
electronix79 | 0:7f6d87f66362 | 36 | /** |
electronix79 | 0:7f6d87f66362 | 37 | * @struct Flag flag.h |
electronix79 | 0:7f6d87f66362 | 38 | * @brief Flag control block |
electronix79 | 0:7f6d87f66362 | 39 | * @details This struct use to mange event flag. |
electronix79 | 0:7f6d87f66362 | 40 | */ |
electronix79 | 0:7f6d87f66362 | 41 | typedef struct Flag |
electronix79 | 0:7f6d87f66362 | 42 | { |
electronix79 | 0:7f6d87f66362 | 43 | U32 flagRdy; /*!< Ready flag */ |
electronix79 | 0:7f6d87f66362 | 44 | U32 resetOpt; /*!< Reset option */ |
electronix79 | 0:7f6d87f66362 | 45 | U32 flagActive; /*!< Active flag */ |
electronix79 | 0:7f6d87f66362 | 46 | P_FLAG_NODE headNode; /*!< Head node */ |
electronix79 | 0:7f6d87f66362 | 47 | P_FLAG_NODE tailNode; /*!< Tail node */ |
electronix79 | 0:7f6d87f66362 | 48 | }FCB,*P_FCB; |
electronix79 | 0:7f6d87f66362 | 49 | |
electronix79 | 0:7f6d87f66362 | 50 | |
electronix79 | 0:7f6d87f66362 | 51 | /*---------------------------- Variable declare ------------------------------*/ |
electronix79 | 0:7f6d87f66362 | 52 | extern FCB FlagCrl; |
electronix79 | 0:7f6d87f66362 | 53 | |
electronix79 | 0:7f6d87f66362 | 54 | /*---------------------------- Function declare ------------------------------*/ |
electronix79 | 0:7f6d87f66362 | 55 | extern void RemoveLinkNode(P_FLAG_NODE pnode); |
electronix79 | 0:7f6d87f66362 | 56 | #endif |
electronix79 | 0:7f6d87f66362 | 57 |