emwin 发布信号量给ucos的其他任务失败,进入硬件中断
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是参照官方的历程移植的,谢谢
不会的帮顶
页:
[1]