初学UCOS 加入了信号量 不正常现象:能通过按键发送信号量进入任务2,但只能执行一次,程序停止 按下t=3那个键后 程序也会停止了 求帮忙 谢谢
//任务1
//灯信号量控制DS0的亮灭.
void TaskLed(void *pdata)
{
INT8U err;
while(1)
{
OSSemPend(Sem, 0, &err);
LED0=!LED0;
OSTimeDlyHMSM(0,0,0,500);
}
}
//任务2
//按键.
void TaskLed1(void *pdata)
{
u8 t=0;
while(1)
{
LED1=!LED1;
t=KEY_Scan();//得到键值
switch(t)
{
case 1:
OSSemPost(Sem);
break;
case 2:
//
break;
case 3:
LED1=!LED1;
break;
}
OSTimeDlyHMSM(0,0,0,400);
}
} |