Hi,
I am learning TI provided full ethercat example which comes with the am3359 ICE board. I see in the "tiescappl.c" (TI ESC Application) there is a task named "task1" which is created in the "main()" function. And in "task1", three tasks are created(with different priority levels:) PdiTask, Sync0Task and LEDtask, see the following
Task_Params_init(&taskParams);
taskParams.priority = 6;
taskParams.stackSize = 1512;
pdiTask = Task_create (PDItask, &taskParams, NULL);
Task_Params_init(&taskParams);
taskParams.priority = 8;
taskParams.stackSize = 1512;
sync0Task = Task_create (Sync0task, &taskParams, NULL);
Task_Params_init(&taskParams);
taskParams.priority = 4;
taskParams.stackSize = 1512;
ledTaskHndl = Task_create (LEDtask, &taskParams, NULL);
However, when I debug the full ethercat application using the CCS, I found only LEDtask is running, but none of the other two tasks with higher priority level (than LEDtask) preempts the LEDtask. It seem unreasonable (and I do not know why) that the Sync0Task with highest priority level does not run immediately after creation (even not entering its Task function)?
Thank you for any answer!
Tao