📄 timertest3.c
字号:
void windDemo(void)
{
semHighId=semBCreate(SEM_Q_PRIORITY,SEM_FULL);
semLowId=semBCreate(SEM_Q_PRIORITY,SEM_FULL);
wdHighId=wdCreate();
wdLowId=wdCreate();
windDemoId=taskIdSelf();
FOREVER
{
highPriId=taskSpawn("tHighPri",100,VX_SUPERVISOR_MODE,4000
,(FUNCPTR)taskHighPri,0,0,0,0,0,0,0,0,0,0);
lowPriId=taskSpawn("tLowPri",150,VX_SUPERVISOR_MODE,4000,(
FUNCPTR)taskLowPri,0,0,0,0,0,0,0,0,0,0);
taskSuspend(0);
}
}
LOCAL void taskHighPri(void)
{
for(;;)
{
printf("This is from taskHighPri Task!\n");
wdStart (wdHighId, 0.05*sysClkRateGet(),
(FUNCPTR) HighCollectRoutine, (int) wdHighId);
semTake (semHighId, WAIT_FOREVER);
}
}
LOCAL void taskLowPri(void)
{
for(;;)
{
printf("This is from taskLowPri Task !\n");
wdStart (wdLowId, sysClkRateGet(),
(FUNCPTR) LowCollectRoutine, (int) wdLowId);
semTake (semLowId, WAIT_FOREVER);
}
}
void HighCollectRoutine(WDOG_ID myWdId)
{
wdStart (myWdId, 0.05*sysClkRateGet(), (FUNCPTR)
HighCollectRoutine, (int) myWdId);
semGive(semHighId);
}
void LowCollectRoutine(WDOG_ID myWdId)
{
wdStart (myWdId, sysClkRateGet(), (FUNCPTR)
LowCollectRoutine, (int) myWdId);
semGive(semLowId);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -