新手上路
- 积分
- 35
- 金钱
- 35
- 注册时间
- 2019-11-30
- 在线时间
- 9 小时
|
楼主 |
发表于 2019-12-25 08:28:02
|
显示全部楼层
void key_task(void *pcParameters)
{
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");
break;
case KEY2_PRES:
vTaskSuspend(Task2Task_Handler);//挂起任务2
break;
}
vTaskDelay(10);
}
}
//任务1 任务函数
void task1_task(void *pvParameters)
{
u8 task1_num=0;
while(1)
{
task1_num++;//任务1执行次数加1,注意task1_num加到255的时候会清零!!
LED0=!LED0;
printf("任务1已经执行:%d次\r\n",task1_num);
// if(task1_num==5)
// {
// vTaskDelete(Task2Task_Handler);//任务1执行5次删除任务2
// printf("任务1删除了任务2!\r\n");
// }
// if(task1_num==255)
// {
// task1_num=0;
// }
vTaskDelay(1000);
}
}
//任务2 任务函数
void task2_task(void *pvParameters)
{
u8 task2_num=0;
while(1)
{
task2_num++;
LED1=!LED1;
printf("任务2已经开始执行:%d次\r\n",task2_num);
vTaskDelay(1000);
}
}
没啊,都有了 |
|