新手上路
- 积分
- 44
- 金钱
- 44
- 注册时间
- 2019-1-15
- 在线时间
- 9 小时
|
我创建了三个任务,逐级嵌套,但是发生程序移植不能进入最后一个任务中 |-----任务A
|
开始任务----- |
| |--------任务C
|-----任务B---|
|--------任务D
其中任务D是由外部中断触发的才会执行的,请问为啥程序一直在任务A里面,其中任务A和任务B的优先级为6,任务C的优先级为4,任务D的优先级为5,开始任务优先级
为3,开始执行完之后就删除开始开始:
void start_task(void *pvParameters)
{
taskENTER_CRITICAL(); //进入临界区
xTaskCreate((TaskFunction_t)task_A,.........);
xTaskCreate((TaskFunction_t)task_B,...................);
vTaskDelete(StartTask_Handler); //删除开始任务
taskEXIT_CRITICAL(); //退出临界区
}
void task_A(void *pvParameters)
{
while(1)
{
}
}
void task_B(void *pvParameters)
{
xTaskCreate((TaskFunction_t)task_C,.........);
xTaskCreate((TaskFunction_t)task_D,...................);
}
|
|