liutao850924 发表于 2010-12-27 18:44:47

DSP上移植的uCOS/II的OSTaskSuspend()和OSTaskResume()怎么用

DSP上移植的uCOS/II的OSTaskSuspend()和OSTaskResume()怎么用啊?哪位能讲述一下,就是任务结束时将自己挂起,在别的任务中将它解挂?

liutao850924 发表于 2010-12-28 16:47:07

void Task1(void *data)               //优先级为12
{
    for (;;)
{   
   num++;
    if(num==20)
    {
      num==0;
      OSTaskResume(10);

   }      
      OSTimeDly(4);   
    }
}


void Task (void *data)             //优先级为10
{   
    for (;;) {      
   
      num1++;

   OSTaskSuspend(10);                     
   
      
    }
}

//******************************************************************

void Task2(void *data)          ////优先级为13
{   
    for (;;)
    {   
      num2++;
      OSTimeDly(1);      
    }
}


//////////////////////////////////////////////////////////////////
可能前面说的不太明白,

现在的问题是任务 Task 的挂起没有问题,在任务Task1 中的解挂在第一次也没有问题,但当第二次解挂时就会结束程序运行,希望对这个熟悉的能告知一下,在这先谢谢了!
./emotion/em002.gif
页: [1]
查看完整版本: DSP上移植的uCOS/II的OSTaskSuspend()和OSTaskResume()怎么用