0% found this document useful (0 votes)
33 views

C/OS-II: V2.51 Quick Reference Chart

This document provides an overview of the data structures and functions related to semaphores, mutexes, event flags, message queues, mailboxes, memory management, tasks, and time management in the μC/OS-II real-time kernel. It includes function prototypes and descriptions of the options and data structures used by each object and function.

Uploaded by

Aljaž Srebrnič
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
33 views

C/OS-II: V2.51 Quick Reference Chart

This document provides an overview of the data structures and functions related to semaphores, mutexes, event flags, message queues, mailboxes, memory management, tasks, and time management in the μC/OS-II real-time kernel. It includes function prototypes and descriptions of the options and data structures used by each object and function.

Uploaded by

Aljaž Srebrnič
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 1

INT16U OSSemAccept(OS_EVENT *pevent);

OS_EVENT *OSSemCreate(INT16U cnt); OSSemDel() opt: OS_SEM_DATA:


OS_EVENT *OSSemDel(OS_EVENT *pevent, INT8U opt, INT8U *err); OS_DEL_NO_PEND INT16U OSCnt;
Semaphores void OSSemPend(OS_EVENT *pevent, INT16U timeout, INT8U *err); OS_DEL_ALWAYS INT8U OSEventTbl[];
INT8U OSSemPost(OS_EVENT *pevent); INT8U OSEventGrp;
INT8U OSSemQuery(OS_EVENT *pevent, OS_SEM_DATA *pdata);
INT8U OSMutexAccept(OS_EVENT *pevent, INT8U *err); OSMutexDel() opt: OS_MUTEX_DATA:
Mutual OS_EVENT *OSMutexCreate(INT8U prio, INT8U *err); OS_DEL_NO_PEND INT8U OSEventTbl[];
OS_EVENT *OSMutexDel (OS_EVENT *pevent, INT8U opt, INT8U *err); OS_DEL_ALWAYS INT8U OSEventGrp;
Exclusion void OSMutexPend(OS_EVENT *pevent, INT16U timeout, INT8U *err); INT8U OSValue;
Semaphores INT8U OSMutexPost(OS_EVENT *pevent); INT8U OSOwnerPrio;
INT8U OSMutexQuery(OS_EVENT *pevent, OS_MUTEX_DATA *pdata); INT8U OSMutexPIP;

OS_FLAGS OSFlagAccept(OS_FLAG_GRP *pgrp, OS_FLAGS flags, INT8U wait_type, INT8U *err);


Event OS_FLAG_GRP *OSFlagCreate(OS_FLAGS flags, INT8U *err);
OS_FLAG_GRP *OSFlagDel(OS_FLAG_GRP *pgrp, INT8U opt, INT8U *err);
Flags OS_FLAGS OSFlagPend(OS_FLAG_GRP *pgrp, OS_FLAGS flags, INT8U wait_type, INT16U timeout, INT8U *err);
OS_FLAGS OSFlagPost(OS_FLAG_GRP *pgrp, OS_FLAGS flags, INT8U operation, INT8U *err);
OS_FLAGS OSFlagQuery(OS_FLAG_GRP *pgrp, INT8U *err); OSFlagDel() opt: wait_type:
OS_DEL_NO_PEND OS_FLAG_WAIT_CLR_ALL
void *OSMboxAccept(OS_EVENT *pevent);
OS_DEL_ALWAYS OS_FLAG_WAIT_CLR_AND
OS_EVENT *OSMboxCreate(void *msg); OS_FLAG_WAIT_CLR_ANY
Message OS_EVENT *OSMboxDel(OS_EVENT *pevent, INT8U opt, INT8U *err);
OS_FLAG_WAIT_CLR_OR
void *OSMboxPend(OS_EVENT *pevent, INT16U timeout, INT8U *err);
Mailboxes INT8U OSMboxPost(OS_EVENT *pevent, void *msg); operation:
OS_FLAG_WAIT_SET_ALL
OS_FLAG_CLR OS_FLAG_WAIT_SET_AND
INT8U OSMboxPostOpt(OS_EVENT *pevent, void *msg, INT8U opt);
OS_FLAG_SET OS_FLAG_WAIT_SET_ANY
INT8U OSMboxQuery(OS_EVENT *pevent, OS_MBOX_DATA *pdata); OS_FLAG_WAIT_SET_OR
OSMboxDel() opt: OSMboxPostOpt() opt: OS_MBOX_DATA:
OS_DEL_NO_PEND OS_POST_OPT_NONE void *OSMsg; + OS_FLAG_CONSUME
OS_DEL_ALWAYS OS_POST_OPT_BROADCAST INT8U OSEventTbl[];
INT8U OSEventGrp; OSQDel() opt: OS_Q_DATA:
OS_DEL_NO_PEND void *OSMsg;
void *OSQAccept(OS_EVENT *pevent); OS_DEL_ALWAYS INT16U OSNMsgs;
OS_EVENT *OSQCreate(void **start, INT16U size); INT16U OSQSize;
OS_EVENT *OSQDel(OS_EVENT *pevent, INT8U opt, INT8U *err); OSQPostOpt() opt: INT8U OSEventTbl[];
INT8U OSQFlush(OS_EVENT *pevent); OS_POST_OPT_NONE INT8U OSEventGrp;
Message void *OSQPend(OS_EVENT *pevent, INT16U timeout, INT8U *err); OS_POST_OPT_BROADCAST
INT8U OSQPost(OS_EVENT *pevent, void *msg); OS_POST_OPT_FRONT
Queues
INT8U OSQPostFront(OS_EVENT *pevent, void *msg);
INT8U OSQPostOpt(OS_EVENT *pevent, void *msg, INT8U opt); OS_MEM_DATA:
INT8U OSQQuery(OS_EVENT *pevent, OS_Q_DATA *pdata); void *OSAddr;
void *OSFreeList;
OS_MEM *OSMemCreate(void *addr, INT32U nblks, INT32U blksize, INT8U *err); INT32U OSBlkSize;
Memory void *OSMemGet(OS_MEM *pmem, INT8U *err); INT32U OSNBlks;
INT32U OSNFree;
Management INT8U OSMemPut(OS_MEM *pmem, void *pblk);
INT32U OSNUsed;
INT8U OSMemQuery(OS_MEM *pmem, OS_MEM_DATA *pdata);

µC/OS-II
The Real-Time Kernel
V2.51 Quick Reference Chart
OS_TCB:
INT8U OSTaskChangePrio(INT8U oldprio, INT8U newprio); OS_STK *OSTCBStkPtr;
INT8U OSTaskCreate(void (*task)(void *pd), void *pdata, OS_STK *ptos, INT8U prio); void *OSTCBExtPtr;
INT8U OSTaskCreateExt(void (*task)(void *pd), OS_STK *OSTCBStkBottom;
void *pdata, INT32U OSTCBStkSize;
OS_STK *ptos, INT16U OSTCBOpt;
INT8U prio, INT16U OSTCBId;
OS_TCB *OSTCBNext;
INT16U id, OS_TCB *OSTCBPrev;
OS_STK *pbos,
Task INT32U stk_size,
OSTaskCreateExt() opt: OS_EVENT
void
*OSTCBEventPtr;
*OSTCBMsg;
OS_TASK_OPT_STK_CHK
Management void *pext, OS_TASK_OPT_STK_CLR OS_FLAG_NODE *OSTCBFlagNode;
INT16U opt); OS_FLAGS OSTCBFlagsRdy;
OS_TASK_OPT_SAVE_FP
INT16U OSTCBDly;
INT8U OSTaskDel(INT8U prio);
INT8U OSTCBStat;
INT8U OSTaskDelReq(INT8U prio); INT8U OSTCBPrio;
INT8U OSTaskResume(INT8U prio); INT8U OSTCBX;
INT8U OSTaskSuspend(INT8U prio); INT8U OSTCBY;
INT8U OSTaskStkChk(INT8U prio, OS_STK_DATA *pdata); OS_STK_DATA: INT8U OSTCBBitX;
INT32U OSFree; INT8U OSTCBBitY;
INT8U OSTaskQuery(INT8U prio, OS_TCB *pdata);
INT32U OSUsed; BOOLEAN OSTCBDelReq;

void OSTimeDly(INT16U ticks); NOTE:


INT8U OSTimeDlyHMSM(INT8U hr, INT8U min, INT8U sec, INT16U ms); ORANGE is for CREATE functions
Time INT8U OSTimeDlyResume(INT8U prio); RED is for DELETE functions
Management INT32U OSTimeGet(void); BLUE is for Commonly used functions
void OSTimeSet(INT32U ticks); GREEN is for Comments

void
void
void
OSInit(void);
OSIntEnter(void);
OSIntExit(void);
Micriµm, Inc.
void OSSchedLock(void);
949 Crestview Circle
Miscellaneous void OSSchedUnlock(void); Weston, FL 33327
void OSStart(void); USA
void OSStatInit(void);
INT16U OSVersion(void); www.Micrium.com

You might also like