/*Event Pend*/
u16_t OSEventPend(u8_t rTaskPrio)
{
u16_t rTaskEvent;
rTaskEvent = OSTCB[rTaskPrio].rEvent;
OSTCB[rTaskPrio].rEvent &= ~rTaskEvent;
return(rTaskEvent);
}
/*Post event*/
void OSEventPost(u8_t rTaskPrio,u16_t rTaskEvent)
{
OSTCB[rTaskPrio].rEvent |= (1<<rTaskEvent);
}
以上代码是网上针对51单片机上的小型RTOS的摘取的,我也跑过,可以运行的,不过没有深入,于是看了看,这两段代码的大概意思是事件的释放和申请,不过还是有些不理解啊。。请大侠们指点啊!谢谢!
|