25 #define  OS_VERSION              252                        41 #define  OS_PRIO_SELF           0xFF                        43 #if OS_TASK_STAT_EN > 0    44 #define  OS_N_SYS_TASKS            2                        46 #define  OS_N_SYS_TASKS            1                        49 #define  OS_STAT_PRIO       (OS_LOWEST_PRIO - 1)            50 #define  OS_IDLE_PRIO       (OS_LOWEST_PRIO)                52 #define  OS_EVENT_TBL_SIZE ((OS_LOWEST_PRIO) / 8 + 1)       53 #define  OS_RDY_TBL_SIZE   ((OS_LOWEST_PRIO) / 8 + 1)       55 #define  OS_TASK_IDLE_ID       65535                        56 #define  OS_TASK_STAT_ID       65534                        58 #define  OS_EVENT_EN       (((OS_Q_EN > 0) && (OS_MAX_QS > 0)) || (OS_MBOX_EN > 0) || (OS_SEM_EN > 0) || (OS_MUTEX_EN > 0))     66 #define  OS_STAT_RDY            0x00            67 #define  OS_STAT_SEM            0x01            68 #define  OS_STAT_MBOX           0x02            69 #define  OS_STAT_Q              0x04            70 #define  OS_STAT_SUSPEND        0x08            71 #define  OS_STAT_MUTEX          0x10            72 #define  OS_STAT_FLAG           0x20            79 #define  OS_EVENT_TYPE_UNUSED      0        80 #define  OS_EVENT_TYPE_MBOX        1        81 #define  OS_EVENT_TYPE_Q           2        82 #define  OS_EVENT_TYPE_SEM         3        83 #define  OS_EVENT_TYPE_MUTEX       4        84 #define  OS_EVENT_TYPE_FLAG        5        91 #define  OS_FLAG_WAIT_CLR_ALL      0            92 #define  OS_FLAG_WAIT_CLR_AND      0            94 #define  OS_FLAG_WAIT_CLR_ANY      1            95 #define  OS_FLAG_WAIT_CLR_OR       1            97 #define  OS_FLAG_WAIT_SET_ALL      2            98 #define  OS_FLAG_WAIT_SET_AND      2           100 #define  OS_FLAG_WAIT_SET_ANY      3           101 #define  OS_FLAG_WAIT_SET_OR       3           104 #define  OS_FLAG_CONSUME        0x80           107 #define  OS_FLAG_CLR               0       108 #define  OS_FLAG_SET               1       115 #define  OS_DEL_NO_PEND            0       116 #define  OS_DEL_ALWAYS             1       125 #define  OS_POST_OPT_NONE       0x00           126 #define  OS_POST_OPT_BROADCAST  0x01           127 #define  OS_POST_OPT_FRONT      0x02           134 #define  OS_TASK_OPT_STK_CHK  0x0001           135 #define  OS_TASK_OPT_STK_CLR  0x0002           136 #define  OS_TASK_OPT_SAVE_FP  0x0004           145 #define OS_ERR_EVENT_TYPE         1        146 #define OS_ERR_PEND_ISR           2        147 #define OS_ERR_POST_NULL_PTR      3        148 #define OS_ERR_PEVENT_NULL        4        149 #define OS_ERR_POST_ISR           5        150 #define OS_ERR_QUERY_ISR          6        151 #define OS_ERR_INVALID_OPT        7        152 #define OS_ERR_TASK_WAITING       8        154 #define OS_TIMEOUT               10        155 #define OS_TASK_NOT_EXIST        11        157 #define OS_MBOX_FULL             20        161 #define OS_PRIO_EXIST            40        162 #define OS_PRIO_ERR              41        163 #define OS_PRIO_INVALID          42        165 #define OS_SEM_OVF               50        167 #define OS_TASK_DEL_ERR          60        168 #define OS_TASK_DEL_IDLE         61        169 #define OS_TASK_DEL_REQ          62        170 #define OS_TASK_DEL_ISR          63        172 #define OS_NO_MORE_TCB           70        174 #define OS_TIME_NOT_DLY          80        175 #define OS_TIME_INVALID_MINUTES  81        176 #define OS_TIME_INVALID_SECONDS  82        177 #define OS_TIME_INVALID_MILLI    83        178 #define OS_TIME_ZERO_DLY         84        180 #define OS_TASK_SUSPEND_PRIO     90        181 #define OS_TASK_SUSPEND_IDLE     91        183 #define OS_TASK_RESUME_PRIO     100        184 #define OS_TASK_NOT_SUSPENDED   101        186 #define OS_MEM_INVALID_PART     110        187 #define OS_MEM_INVALID_BLKS     111        188 #define OS_MEM_INVALID_SIZE     112        189 #define OS_MEM_NO_FREE_BLKS     113        190 #define OS_MEM_FULL             114        191 #define OS_MEM_INVALID_PBLK     115        192 #define OS_MEM_INVALID_PMEM     116        193 #define OS_MEM_INVALID_PDATA    117        194 #define OS_MEM_INVALID_ADDR     118        196 #define OS_ERR_NOT_MUTEX_OWNER  120        198 #define OS_TASK_OPT_ERR         130        200 #define OS_ERR_DEL_ISR          140        201 #define OS_ERR_CREATE_ISR       141        203 #define OS_FLAG_INVALID_PGRP    150        204 #define OS_FLAG_ERR_WAIT_TYPE   151        205 #define OS_FLAG_ERR_NOT_RDY     152        206 #define OS_FLAG_INVALID_OPT     153        207 #define OS_FLAG_GRP_DEPLETED    154        216 #if (OS_EVENT_EN > 0) && (OS_MAX_EVENTS > 0)   233 #if (OS_VERSION >= 251) && (OS_FLAG_EN > 0) && (OS_MAX_FLAGS > 0)   236     void         *OSFlagWaitList;           
   243     void         *OSFlagNodeNext;           
   244     void         *OSFlagNodePrev;           
   246     void         *OSFlagNodeFlagGrp;        
   248     INT8U         OSFlagNodeWaitType;       
   277 #if (OS_MEM_EN > 0) && (OS_MAX_MEM_PART > 0)   321 typedef struct os_q {                   
   361 #if OS_TASK_CREATE_EXT_EN > 0   378 #if OS_TASK_CREATE_EXT_EN > 0   389 #if ((OS_Q_EN > 0) && (OS_MAX_QS > 0)) || (OS_MBOX_EN > 0) || (OS_SEM_EN > 0) || (OS_MUTEX_EN > 0)   390     OS_EVENT      *OSTCBEventPtr;      
   393 #if ((OS_Q_EN > 0) && (OS_MAX_QS > 0)) || (OS_MBOX_EN > 0)   397 #if (OS_VERSION >= 251) && (OS_FLAG_EN > 0) && (OS_MAX_FLAGS > 0)   398 #if OS_TASK_DEL_EN > 0   399     OS_FLAG_NODE  *OSTCBFlagNode;      
   413 #if OS_TASK_DEL_EN > 0   427 #if (OS_EVENT_EN > 0) && (OS_MAX_EVENTS > 0)   428 OS_EXT  OS_EVENT         *OSEventFreeList;          
   432 #if (OS_VERSION >= 251) && (OS_FLAG_EN > 0) && (OS_MAX_FLAGS > 0)   434 OS_EXT  OS_FLAG_GRP      *OSFlagFreeList;           
   437 #if OS_TASK_STAT_EN > 0   438 OS_EXT  
INT8S             OSCPUUsage;               
   439 OS_EXT  
INT32U            OSIdleCtrMax;             
   440 OS_EXT  
INT32U            OSIdleCtrRun;             
   472 #if (OS_MEM_EN > 0) && (OS_MAX_MEM_PART > 0)   473 OS_EXT  OS_MEM           *OSMemFreeList;            
   477 #if (OS_Q_EN > 0) && (OS_MAX_QS > 0)   478 OS_EXT  OS_Q             *OSQFreeList;              
   482 #if OS_TIME_GET_SET_EN > 0   483 OS_EXT  
volatile  INT32U  OSTime;                   
   505 #if (OS_VERSION >= 251) && (OS_FLAG_EN > 0) && (OS_MAX_FLAGS > 0)   507 #if OS_FLAG_ACCEPT_EN > 0   513 #if OS_FLAG_DEL_EN > 0   514 OS_FLAG_GRP  *OSFlagDel(OS_FLAG_GRP *pgrp, 
INT8U opt, 
INT8U *err);
   520 #if OS_FLAG_QUERY_EN > 0   533 #if OS_MBOX_ACCEPT_EN > 0   539 #if OS_MBOX_DEL_EN > 0   545 #if OS_MBOX_POST_EN > 0   549 #if OS_MBOX_POST_OPT_EN > 0   553 #if OS_MBOX_QUERY_EN > 0   564 #if (OS_MEM_EN > 0) && (OS_MAX_MEM_PART > 0)   567 void         *OSMemGet(OS_MEM *pmem, 
INT8U *err);
   568 INT8U         OSMemPut(OS_MEM *pmem, 
void *pblk);
   570 #if OS_MEM_QUERY_EN > 0   571 INT8U         OSMemQuery(OS_MEM *pmem, OS_MEM_DATA *pdata);
   584 #if OS_MUTEX_ACCEPT_EN > 0   585 INT8U         OSMutexAccept(OS_EVENT *pevent, 
INT8U *err);
   588 OS_EVENT     *OSMutexCreate(
INT8U prio, 
INT8U *err);
   590 #if OS_MUTEX_DEL_EN > 0   591 OS_EVENT     *OSMutexDel(OS_EVENT *pevent, 
INT8U opt, 
INT8U *err);
   594 void          OSMutexPend(OS_EVENT *pevent, 
INT16U timeout, 
INT8U *err);
   595 INT8U         OSMutexPost(OS_EVENT *pevent);
   597 #if OS_MUTEX_QUERY_EN > 0   598 INT8U         OSMutexQuery(OS_EVENT *pevent, OS_MUTEX_DATA *pdata);
   610 #if (OS_Q_EN > 0) && (OS_MAX_QS > 0)   612 #if OS_Q_ACCEPT_EN > 0   613 void         *OSQAccept(OS_EVENT *pevent);
   616 OS_EVENT     *OSQCreate(
void **start, 
INT16U size);
   619 OS_EVENT     *OSQDel(OS_EVENT *pevent, 
INT8U opt, 
INT8U *err);
   622 #if OS_Q_FLUSH_EN > 0   623 INT8U         OSQFlush(OS_EVENT *pevent);
   626 void         *OSQPend(OS_EVENT *pevent, 
INT16U timeout, 
INT8U *err);
   629 INT8U         OSQPost(OS_EVENT *pevent, 
void *msg);
   632 #if OS_Q_POST_FRONT_EN > 0   633 INT8U         OSQPostFront(OS_EVENT *pevent, 
void *msg);
   636 #if OS_Q_POST_OPT_EN > 0   637 INT8U         OSQPostOpt(OS_EVENT *pevent, 
void *msg, 
INT8U opt);
   640 #if OS_Q_QUERY_EN > 0   641 INT8U         OSQQuery(OS_EVENT *pevent, OS_Q_DATA *pdata);
   654 #if OS_SEM_ACCEPT_EN > 0   655 INT16U        OSSemAccept(OS_EVENT *pevent);
   658 OS_EVENT     *OSSemCreate(
INT16U cnt);
   660 #if OS_SEM_DEL_EN > 0   661 OS_EVENT     *OSSemDel(OS_EVENT *pevent, 
INT8U opt, 
INT8U *err);
   664 void          OSSemPend(OS_EVENT *pevent, 
INT16U timeout, 
INT8U *err);
   665 INT8U         OSSemPost(OS_EVENT *pevent);
   667 #if OS_SEM_QUERY_EN > 0   668 INT8U         OSSemQuery(OS_EVENT *pevent, OS_SEM_DATA *pdata);
   679 #if OS_TASK_CHANGE_PRIO_EN > 0   683 #if OS_TASK_CREATE_EN > 0   684 INT8U         OSTaskCreate(
void (*task)(
void *pd), 
void *pdata, 
OS_STK *ptos, 
INT8U prio);
   687 #if OS_TASK_CREATE_EXT_EN > 0   688 INT8U         OSTaskCreateExt(
void  (*task)(
void *pd),
   699 #if OS_TASK_DEL_EN > 0   704 #if OS_TASK_SUSPEND_EN > 0   709 #if OS_TASK_CREATE_EXT_EN > 0   710 INT8U         OSTaskStkChk(
INT8U prio, OS_STK_DATA *pdata);
   713 #if OS_TASK_QUERY_EN > 0   726 #if OS_TIME_DLY_HMSM_EN > 0   730 #if OS_TIME_DLY_RESUME_EN > 0   734 #if OS_TIME_GET_SET_EN > 0   736 void          OSTimeSet(
INT32U ticks);
   752 #if OS_SCHED_LOCK_EN > 0   753 void          OSSchedLock(
void);
   754 void          OSSchedUnlock(
void);
   771 #if OS_TASK_DEL_EN > 0   775 #if ((OS_Q_EN > 0) && (OS_MAX_QS > 0)) || (OS_MBOX_EN > 0) || (OS_SEM_EN > 0) || (OS_MUTEX_EN > 0)   776 INT8U         OS_EventTaskRdy(OS_EVENT *pevent, 
void *msg, 
INT8U msk);
   777 void          OS_EventTaskWait(OS_EVENT *pevent);
   778 void          OS_EventTO(OS_EVENT *pevent);
   779 void          OS_EventWaitListInit(OS_EVENT *pevent);
   782 #if (OS_VERSION >= 251) && (OS_FLAG_EN > 0) && (OS_MAX_FLAGS > 0)   783 void          OS_FlagInit(
void);
   784 void          OS_FlagUnlink(OS_FLAG_NODE *pnode);
   787 #if (OS_MEM_EN > 0) && (OS_MAX_MEM_PART > 0)   788 void          OS_MemInit(
void);
   799 #if OS_TASK_STAT_EN > 0   800 void          OS_TaskStat(
void *data);
   813 #if OS_VERSION >= 204   825 #if OS_VERSION >= 251   833 #if OS_VERSION >= 204   846 #ifndef OS_ISR_PROTO_EXT   848 void          OSTickISR(
void);
   871 #error  "OS_CFG.H, Missing OS_FLAG_EN: Enable (1) or Disable (0) code generation for Event Flags"   874     #error  "OS_CFG.H, Missing OS_MAX_FLAGS: Max. number of Event Flag Groups in your application"   876         #if     OS_MAX_FLAGS == 0   877         #error  "OS_CFG.H, OS_MAX_FLAGS must be > 0"   879         #if     OS_MAX_FLAGS > 255   880         #error  "OS_CFG.H, OS_MAX_FLAGS must be <= 255"   884     #ifndef OS_FLAG_WAIT_CLR_EN   885     #error  "OS_CFG.H, Missing OS_FLAG_WAIT_CLR_EN: Include code for Wait on Clear EVENT FLAGS"   888     #ifndef OS_FLAG_ACCEPT_EN   889     #error  "OS_CFG.H, Missing OS_FLAG_ACCEPT_EN: Include code for OSFlagAccept()"   892     #ifndef OS_FLAG_DEL_EN   893     #error  "OS_CFG.H, Missing OS_FLAG_DEL_EN: Include code for OSFlagDel()"   896     #ifndef OS_FLAG_QUERY_EN   897     #error  "OS_CFG.H, Missing OS_FLAG_QUERY_EN: Include code for OSFlagQuery()"   908 #error  "OS_CFG.H, Missing OS_MBOX_EN: Enable (1) or Disable (0) code generation for MAILBOXES"   910     #ifndef OS_MBOX_ACCEPT_EN   911     #error  "OS_CFG.H, Missing OS_MBOX_ACCEPT_EN: Include code for OSMboxAccept()"   914     #ifndef OS_MBOX_DEL_EN   915     #error  "OS_CFG.H, Missing OS_MBOX_DEL_EN: Include code for OSMboxDel()"   918     #ifndef OS_MBOX_POST_EN   919     #error  "OS_CFG.H, Missing OS_MBOX_POST_EN: Include code for OSMboxPost()"   922     #ifndef OS_MBOX_POST_OPT_EN   923     #error  "OS_CFG.H, Missing OS_MBOX_POST_OPT_EN: Include code for OSMboxPostOpt()"   926     #ifndef OS_MBOX_QUERY_EN   927     #error  "OS_CFG.H, Missing OS_MBOX_QUERY_EN: Include code for OSMboxQuery()"   938 #error  "OS_CFG.H, Missing OS_MEM_EN: Enable (1) or Disable (0) code generation for MEMORY MANAGER"   940     #ifndef OS_MAX_MEM_PART   941     #error  "OS_CFG.H, Missing OS_MAX_MEM_PART: Max. number of memory partitions"   943         #if     OS_MAX_MEM_PART == 0   944         #error  "OS_CFG.H, OS_MAX_MEM_PART must be > 0"   946         #if     OS_MAX_MEM_PART > 255   947         #error  "OS_CFG.H, OS_MAX_MEM_PART must be <= 255"   951     #ifndef OS_MEM_QUERY_EN   952     #error  "OS_CFG.H, Missing OS_MEM_QUERY_EN: Include code for OSMemQuery()"   963 #error  "OS_CFG.H, Missing OS_MUTEX_EN: Enable (1) or Disable (0) code generation for MUTEX"   965     #ifndef OS_MUTEX_ACCEPT_EN   966     #error  "OS_CFG.H, Missing OS_MUTEX_ACCEPT_EN: Include code for OSMutexAccept()"   969     #ifndef OS_MUTEX_DEL_EN   970     #error  "OS_CFG.H, Missing OS_MUTEX_DEL_EN: Include code for OSMutexDel()"   973     #ifndef OS_MUTEX_QUERY_EN   974     #error  "OS_CFG.H, Missing OS_MUTEX_QUERY_EN: Include code for OSMutexQuery()"   985 #error  "OS_CFG.H, Missing OS_Q_EN: Enable (1) or Disable (0) code generation for QUEUES"   988     #error  "OS_CFG.H, Missing OS_MAX_QS: Max. number of queue control blocks"   991         #error  "OS_CFG.H, OS_MAX_QS must be > 0"   994         #error  "OS_CFG.H, OS_MAX_QS must be <= 255"   998     #ifndef OS_Q_ACCEPT_EN   999     #error  "OS_CFG.H, Missing OS_Q_ACCEPT_EN: Include code for OSQAccept()"  1003     #error  "OS_CFG.H, Missing OS_Q_DEL_EN: Include code for OSQDel()"  1006     #ifndef OS_Q_FLUSH_EN  1007     #error  "OS_CFG.H, Missing OS_Q_FLUSH_EN: Include code for OSQFlush()"  1010     #ifndef OS_Q_POST_EN  1011     #error  "OS_CFG.H, Missing OS_Q_POST_EN: Include code for OSQPost()"  1014     #ifndef OS_Q_POST_FRONT_EN  1015     #error  "OS_CFG.H, Missing OS_Q_POST_FRONT_EN: Include code for OSQPostFront()"  1018     #ifndef OS_Q_POST_OPT_EN  1019     #error  "OS_CFG.H, Missing OS_Q_POST_OPT_EN: Include code for OSQPostOpt()"  1022     #ifndef OS_Q_QUERY_EN  1023     #error  "OS_CFG.H, Missing OS_Q_QUERY_EN: Include code for OSQQuery()"  1034 #error  "OS_CFG.H, Missing OS_SEM_EN: Enable (1) or Disable (0) code generation for SEMAPHORES"  1036     #ifndef OS_SEM_ACCEPT_EN  1037     #error  "OS_CFG.H, Missing OS_SEM_ACCEPT_EN: Include code for OSSemAccept()"  1040     #ifndef OS_SEM_DEL_EN  1041     #error  "OS_CFG.H, Missing OS_SEM_DEL_EN: Include code for OSSemDel()"  1044     #ifndef OS_SEM_QUERY_EN  1045     #error  "OS_CFG.H, Missing OS_SEM_QUERY_EN: Include code for OSSemQuery()"  1055 #ifndef OS_MAX_TASKS  1056 #error  "OS_CFG.H, Missing OS_MAX_TASKS: Max. number of tasks in your application"  1058     #if     OS_MAX_TASKS == 0  1059     #error  "OS_CFG.H,         OS_MAX_TASKS must be >= 2"  1061     #if     OS_MAX_TASKS > 63  1062     #error  "OS_CFG.H,         OS_MAX_TASKS must be <= 63"  1066 #ifndef OS_TASK_IDLE_STK_SIZE  1067 #error  "OS_CFG.H, Missing OS_TASK_IDLE_STK_SIZE: Idle task stack size"  1070 #ifndef OS_TASK_STAT_EN  1071 #error  "OS_CFG.H, Missing OS_TASK_STAT_EN: Enable (1) or Disable(0) the statistics task"  1074 #ifndef OS_TASK_STAT_STK_SIZE  1075 #error  "OS_CFG.H, Missing OS_TASK_STAT_STK_SIZE: Statistics task stack size"  1078 #ifndef OS_TASK_CHANGE_PRIO_EN  1079 #error  "OS_CFG.H, Missing OS_TASK_CHANGE_PRIO_EN: Include code for OSTaskChangePrio()"  1082 #ifndef OS_TASK_CREATE_EN  1083 #error  "OS_CFG.H, Missing OS_TASK_CREATE_EN: Include code for OSTaskCreate()"  1086 #ifndef OS_TASK_CREATE_EXT_EN  1087 #error  "OS_CFG.H, Missing OS_TASK_CREATE_EXT_EN: Include code for OSTaskCreateExt()"  1090 #ifndef OS_TASK_DEL_EN  1091 #error  "OS_CFG.H, Missing OS_TASK_DEL_EN: Include code for OSTaskDel()"  1094 #ifndef OS_TASK_SUSPEND_EN  1095 #error  "OS_CFG.H, Missing OS_TASK_SUSPEND_EN: Include code for OSTaskSuspend() and OSTaskResume()"  1098 #ifndef OS_TASK_QUERY_EN  1099 #error  "OS_CFG.H, Missing OS_TASK_QUERY_EN: Include code for OSTaskQuery()"  1108 #ifndef OS_TICKS_PER_SEC  1109 #error  "OS_CFG.H, Missing OS_TICKS_PER_SEC: Sets the number of ticks in one second"  1112 #ifndef OS_TIME_DLY_HMSM_EN  1113 #error  "OS_CFG.H, Missing OS_TIME_DLY_HMSM_EN: Include code for OSTimeDlyHMSM()"  1116 #ifndef OS_TIME_DLY_RESUME_EN  1117 #error  "OS_CFG.H, Missing OS_TIME_DLY_RESUME_EN: Include code for OSTimeDlyResume()"  1120 #ifndef OS_TIME_GET_SET_EN  1121 #error  "OS_CFG.H, Missing OS_TIME_GET_SET_EN: Include code for OSTimeGet() and OSTimeSet()"  1130 #ifndef OS_MAX_EVENTS  1131 #error  "OS_CFG.H, Missing OS_MAX_EVENTS: Max. number of event control blocks in your application"  1133     #if     OS_MAX_EVENTS == 0  1134     #error  "OS_CFG.H, OS_MAX_EVENTS must be > 0"  1136     #if     OS_MAX_EVENTS > 255  1137     #error  "OS_CFG.H, OS_MAX_EVENTS must be <= 255"  1141 #ifndef OS_LOWEST_PRIO  1142 #error  "OS_CFG.H, Missing OS_LOWEST_PRIO: Defines the lowest priority that can be assigned"  1145 #ifndef OS_ARG_CHK_EN  1146 #error  "OS_CFG.H, Missing OS_ARG_CHK_EN: Enable (1) or Disable (0) argument checking"  1149 #ifndef OS_CPU_HOOKS_EN  1150 #error  "OS_CFG.H, Missing OS_CPU_HOOKS_EN: uC/OS-II hooks are found in the processor port files when 1"  1153 #ifndef OS_SCHED_LOCK_EN  1154 #error  "OS_CFG.H, Missing OS_SCHED_LOCK_EN: Include code for OSSchedLock() and OSSchedUnlock()" OS_EXT INT8U OSIntNesting
Definition: UCOS_II.H:445
struct os_tcb * OSTCBPrev
Definition: UCOS_II.H:387
unsigned char INT8U
Definition: OS_CPU.H:38
INT8U OSTCBStat
Definition: UCOS_II.H:405
void OSStatInit(void)
STATISTICS INITIALIZATION. 
OS_EXT INT8U OSRdyTbl[OS_RDY_TBL_SIZE]
Definition: UCOS_II.H:454
#define OS_MAX_QS
Definition: OS_CFG.H:42
OS_EXT INT32U OSCtxSwCtr
Definition: UCOS_II.H:425
#define OS_MAX_EVENTS
Definition: OS_CFG.H:28
OS_EXT OS_TCB OSTCBTbl[OS_MAX_TASKS+OS_N_SYS_TASKS]
Definition: UCOS_II.H:470
void OSTaskDelHook(OS_TCB *ptcb)
TASK DELETION HOOK   This function is called when a task is deleted. 
Definition: OS_CPU_C.C:146
void OSInitHookEnd(void)
OS INITIALIZATION HOOK   This This function is called by OSInit() at the end of OSInit(). 
Definition: OS_CPU_C.C:314
#define OS_TASK_IDLE_STK_SIZE
Definition: OS_CFG.H:53
OS_STK * OSTaskStkInit(void(*task)(void *pd), void *pdata, OS_STK *ptos, INT16U opt)
INITIALIZE A TASK'S STACK   This function is called by either OSTaskCreate() or OSTaskCreateExt() to ...
Definition: OS_CPU_C.C:69
void OSInitHookBegin(void)
OS INITIALIZATION HOOK   This function is called by OSInit() at the beginning of OSInit(). 
Definition: OS_CPU_C.C:291
INT8U OSMboxPost(OS_EVENT *pevent, void *msg)
POST MESSAGE TO A MAILBOX. 
Definition: OS_MBOX.C:381
INT8U OSMboxPostOpt(OS_EVENT *pevent, void *msg, INT8U opt)
POST MESSAGE TO A MAILBOX. 
Definition: OS_MBOX.C:458
INT16U OS_FLAGS
Definition: OS_CFG.H:131
OS_EXT OS_STK OSTaskIdleStk[OS_TASK_IDLE_STK_SIZE]
Definition: UCOS_II.H:462
void OSIntEnter(void)
ENTER ISR. 
Definition: OS_CORE.C:161
INT8U OS_TCBInit(INT8U prio, OS_STK *ptos, OS_STK *pbos, INT16U id, INT32U stk_size, void *pext, INT16U opt)
INITIALIZE TCB. 
Definition: OS_CORE.C:1131
void OS_Sched(void)
SCHEDULER   This function is called by other uC/OS-II services to determine whether a new...
Definition: OS_CORE.C:939
void OS_TaskIdle(void *data)
IDLE TASK. 
Definition: OS_CORE.C:986
INT16U OSVersion(void)
GET VERSION. 
Definition: OS_CORE.C:472
OS_EXT volatile INT32U OSIdleCtr
Definition: UCOS_II.H:460
OS_EXT OS_TCB * OSTCBHighRdy
Definition: UCOS_II.H:467
#define OS_EVENT_TBL_SIZE
Definition: UCOS_II.H:52
void OSTaskIdleHook(void)
IDLE TASK HOOK This function is called by OS_TaskIdle() which is executed whenever no other task is r...
Definition: OS_CPU_C.C:269
INT8U OSTCBPrio
Definition: UCOS_II.H:406
void * OSMboxPend(OS_EVENT *pevent, INT16U timeout, INT8U *err)
PEND ON MAILBOX FOR A MESSAGE. 
Definition: OS_MBOX.C:293
OS_EVENT * OSMboxDel(OS_EVENT *pevent, INT8U opt, INT8U *err)
DELETE A MAIBOX. 
Definition: OS_MBOX.C:180
OS_EXT OS_TCB * OSTCBCur
Definition: UCOS_II.H:465
INT8U OSTCBY
Definition: UCOS_II.H:409
OS_EVENT * OSMboxCreate(void *msg)
CREATE A MESSAGE MAILBOX. 
Definition: OS_MBOX.C:109
OS_EXT BOOLEAN OSRunning
Definition: UCOS_II.H:456
INT8U OS_STK
Definition: OS_CPU.H:52
void OSTCBInitHook(OS_TCB *ptcb)
TICK HOOK. 
Definition: OS_CPU_C.C:243
Definition: UCOS_II.H:375
OS_EXT OS_TCB * OSTCBPrioTbl[OS_LOWEST_PRIO+1]
Definition: UCOS_II.H:469
rom INT8U const OSMapTbl[]
Definition: OS_CORE.C:30
void OSTaskStatHook(void)
STATISTIC TASK HOOK   This function is called every second by uC/OS-II's statistics task...
Definition: OS_CPU_C.C:196
void OSIntCtxSw(void)
PERFORM A CONTEXT SWITCH (From an ISR) 
Definition: OS_CPU_C.C:817
OS_STK * OSTCBStkPtr
Definition: UCOS_II.H:376
rom INT8U const OSUnMapTbl[]
Definition: OS_CORE.C:43
void OSCtxSw(void)
Switch the context by calling the function directly, since there are no software interrupts in a PIC1...
Definition: OS_CPU_C.C:495
INT8U OSTCBX
Definition: UCOS_II.H:408
#define OS_RDY_TBL_SIZE
Definition: UCOS_II.H:53
void * OSMboxAccept(OS_EVENT *pevent)
ACCEPT MESSAGE FROM MAILBOX. 
Definition: OS_MBOX.C:55
void OSTimeTick(void)
PROCESS SYSTEM TICK. 
Definition: OS_CORE.C:415
INT8U OSTCBBitX
Definition: UCOS_II.H:410
#define OS_MAX_TASKS
Definition: OS_CFG.H:47
unsigned char BOOLEAN
Definition: OS_CPU.H:37
#define OS_MAX_FLAGS
Definition: OS_CFG.H:32
unsigned long INT32U
Definition: OS_CPU.H:42
OS_EXT INT8U OSIntExitY
Definition: UCOS_II.H:446
OS_EXT OS_TCB * OSTCBList
Definition: UCOS_II.H:468
OS_EXT INT8U OSTaskCtr
Definition: UCOS_II.H:458
void OSTimeDly(INT16U ticks)
DELAY TASK 'n' TICKS (n from 0 to 65535) param ticks. 
Definition: OS_TIME.C:50
INT8U OSTCBBitY
Definition: UCOS_II.H:411
void OSIntExit(void)
EXIT ISR. 
Definition: OS_CORE.C:194
void OSTaskCreateHook(OS_TCB *ptcb)
TASK CREATION HOOK   This function is called when a task is created. 
Definition: OS_CPU_C.C:121
OS_EXT INT8U OSPrioHighRdy
Definition: UCOS_II.H:451
void OSTaskSwHook(void)
TASK SWITCH HOOK   This function is called when a task switch is performed. This allows you to perfor...
Definition: OS_CPU_C.C:173
INT16U OSTCBDly
Definition: UCOS_II.H:404
#define OS_LOWEST_PRIO
Definition: OS_CFG.H:50
OS_EXT INT8U OSPrioCur
Definition: UCOS_II.H:450
struct os_tcb * OSTCBNext
Definition: UCOS_II.H:386
#define OS_MAX_MEM_PART
Definition: OS_CFG.H:37
INT8U OSMboxQuery(OS_EVENT *pevent, OS_MBOX_DATA *pdata)
QUERY A MESSAGE MAILBOX. 
Definition: OS_MBOX.C:530
void OSInit(void)
INITIALIZATION. 
Definition: OS_CORE.C:95
OS_EXT INT8U OSLockNesting
Definition: UCOS_II.H:448
OS_EXT OS_TCB * OSTCBFreeList
Definition: UCOS_II.H:466
signed char INT8S
Definition: OS_CPU.H:39
#define OS_N_SYS_TASKS
Definition: UCOS_II.H:46
unsigned int INT16U
Definition: OS_CPU.H:40
void OSTimeTickHook(void)
TICK HOOK   This function is called every tick. 
Definition: OS_CPU_C.C:218
#define OS_TASK_STAT_STK_SIZE
Definition: OS_CFG.H:56
OS_EXT INT8U OSRdyGrp
Definition: UCOS_II.H:453
void OSStart(void)
START MULTITASKING. 
Definition: OS_CORE.C:333
void OSStartHighRdy(void)
START HIGHEST PRIORITY TASK. 
Definition: OS_CPU_C.C:377