
OS_ERR err; (void)p_arg; MainTask(); while(DEF_TRUE) { GUI_Exec(); / / MainTask(); OSTimeDlyHMSM(0, 0, 1, 0, OS_OPT_TIME_HMSM_STRICT, &err); } 这是emwin的主界面代码 while(DEF_TRUE) { OSTaskSemPend(0, OS_OPT_PEND_BLOCKING,p_ts,&err); //Test(); GPIOG->ODR^=GPIO_Pin_13; OSTimeDlyHMSM(0, 0, 2, 0, OS_OPT_TIME_HMSM_STRICT, &err); } 这是等待任务的代码 case GUI_ID_ICONVIEW0: { switch (NCode) { case WM_NOTIFICATION_RELEASED: sel = ICONVIEW_GetSel(hItem); //浠?浣嶅熀鍑? switch (sel) { case 0: //相机 { OSTaskSemPost(&COM_TaskTCB, OS_OPT_POST_NONE,&err); } break; 这个是emwin回调函数的部分代码,下载之后直接进入硬件中断,如果没有任务等待这个信号就不会,实在不知道为什么会这样,请大家帮忙看看,是哪里没有设置什么吗?ucos iii是参照官方的历程移植的,谢谢 |