这是手册上的例程
static void _cbWin(WM_MESSAGE *pMsg)
{
switch(pMsg->MsgId)
{
case WM_TIMER:
WM_RestartTimer(pMsg->Data.v,20);
printf("timerd\r\n");
break;
default:
WM_DefaultProc(pMsg);
break;
}
}
static void Demo(void)
{
WM_HWIN hwin;
WM_HTIMER htimer;
hwin = WM_CreateWindow(10,10,100,100,WM_CF_SHOW,_cbWin,0);
htimer = WM_CreateTimer(hwin,0,20,0);
}
int main(void)
{
Demo();
while(1)
{
WM_Exec();
}
}
我发现这样定时器是不能正常的,一次也无法 触发。
但是如果在while里面加个GUI_Delay(10);就正常,这是为什么呢?是什么没有移植好导致的?无系统的。
|