nuc990 发表于 2025-3-31 21:31

咨询UCOS III任务堆栈大小问题


//IAP任务
      OSTaskCreate((OS_TCB   *)&AppTaskIapTCB,                           
               (CPU_CHAR   *)"Iap_Update_Task",                           
               (OS_TASK_PTR ) Iap_Update_Task,                              
               (void       *) 0,                                       
               (OS_PRIO   ) APP_TASK_IAP_PRIO,                        
               (CPU_STK    *)&AppTaskIapStk,                        
               (CPU_STK_SIZE) APP_TASK_IAP_STK_SIZE / 10,               
               (CPU_STK_SIZE) APP_TASK_IAP_STK_SIZE,                     
               (OS_MSG_QTY) 50u,                                       
               (OS_TICK   ) 0u,                                       
               (void       *) 0,                                          
               (OS_OPT      )(OS_OPT_TASK_STK_CHK | OS_OPT_TASK_STK_CLR),
               (OS_ERR   *)&err);
                                 
                OSTaskDel ( & AppTaskStartTCB, & err );               


上面代码的APP_TASK_IAP_STK_SIZE 设置为256,在下面代码的APP_TASK_LED_STK_SIZE设置为128
staticCPU_STKAppTaskIapStk;

结果整个UCOS运行不起来,删掉该任务创建函数UCOS运行正常,这是为什么?堆栈数组的定义的尺寸大小要和任务创建时候设置的任务堆栈空间大小一样吗?

页: [1]
查看完整版本: 咨询UCOS III任务堆栈大小问题