27,375
社区成员
发帖
与我相关
我的任务
分享
__task void Task_RtdsRead(void)
{
while(1)
{
if(os_evt_wait_or(RtdsReadEventNum,OS_5MS) == OS_R_EVT)
{
}
else //超时进入
{
if (//通讯完成)
{
os_mut_release(RtdsComMut); //释放Rtds通讯
}
if(os_mut_wait(RtdsComMut,OS_5MS)==OS_R_MUT); //获取Rtds通讯,读操作与写操作互斥
{
//Do Something
}
}
}
}
__task void Task_RtdsWrite(void)
{
while(1)
{
if(os_evt_wait_or(RtdsWriteEventNum,0xFFFF) == OS_R_EVT) //写操作处理
{
os_mut_wait(RtdsComMut,0xFFFF); //获取Rtds通讯,读操作与写操作互斥
//Do something
}
if(//通讯完成)
{
os_mut_release(RtdsComMut); //释放Rtds通讯
}
}
}