17 #if !defined(TINYOS_ENABLE_SEM) || TINYOS_ENABLE_SEM == 1 24 void tSemInit (
tSem *sem, uint32_t startCount, uint32_t maxCount) {
29 sem->
count = startCount;
31 sem->
count = (startCount > maxCount) ? maxCount : startCount;
uint32_t tEventRemoveAll(tEvent *event, void *msg, uint32_t result)
void tSemInit(tSem *sem, uint32_t startCount, uint32_t maxCount)
tTaskCritical_t tTaskEnterCritical(void)
void tSemGetInfo(tSem *sem, tSemInfo *info)
uint32_t tSemDestroy(tSem *sem)
uint32_t tSemWait(tSem *sem, uint32_t waitTicks)
uint32_t tEventWaitCount(tEvent *event)
void tTaskSched(void)
任务调度接口。通过它来选择下一个具体的任务,然后切换至该任务运行。
uint32_t tSemNoWaitGet(tSem *sem)
void tEventInit(tEvent *event, tEventType type)
void tTaskExitCritical(tTaskCritical_t status)
void tEventWait(tEvent *event, tTask *task, void *msg, uint32_t state, uint32_t timeout)
void tSemNotify(tSem *sem)
tTask * currentTask
当前任务:记录当前是哪个任务正在运行
tTask * tEventWakeUp(tEvent *event, void *msg, uint32_t result)