返回> 网站首页
ucos2循环等待超时方法
yoours2021-01-28 11:49:09
简介一边听听音乐,一边写写文章。
1. 定义信号量变量
OS_EVENT *SemSignal;
2. 创建信号量
SemSignal = OSSemCreate(1);
3. 发送信号量 - 在符合需求的地方调用
OSSemPost(SemSignal);
4. 循环等待超时
// 计算等待时间
DWORD ticks = OS_TICKS_PER_SEC * (dwTimeout + 500uL / OS_TICKS_PER_SEC) / 1000uL;
// 循环等待超时
do{
// to do something
OSSemPend(SemSignal, ticks, &err);
}while(err!=OS_ERR_TIMEOUT);
文章评论
2321人参与,0条评论