005_FreeRTOS任务挂起和恢复

(一)

(二)使用,参数是任务句柄

//key任务函数
void key_task(void *pvParameters)
{
    u8 key;
    while(1)
    {
        key=KEY_Scan(0);
        switch(key)
        {
            case WKUP_PRES:
                vTaskSuspend(Task1Task_Handler);//挂起任务1
                printf("挂起任务1的运行!\r\n");
                break;
            case KEY1_PRES:
                vTaskResume(Task1Task_Handler);    //恢复任务1
                printf("恢复任务1的运行!\r\n");
            case KEY2_PRES:
                vTaskSuspend(Task2Task_Handler);//挂起任务2
                printf("挂起任务2的运行!\r\n");
                break;
        }
        vTaskDelay(10);            //延时10ms 
    }
}

 

猜你喜欢

转载自www.cnblogs.com/luxiaoguogege/p/10197309.html