Hi,
I am new to BIOS/SYS 6. The example: "SYS/BIOS/Typical" for C6678 EVM board has a dynamic created task. The generated .c code is:
........
/*
* ======== taskFxn ========
*/
Void taskFxn(UArg a0, UArg a1)
{
System_printf("enter taskFxn()\n");
Task_sleep(10);
System_printf("exit taskFxn()\n");
}
/*
* ======== main ========
*/
Void main()
{
Task_Handle task;
Error_Block eb;
System_printf("enter main()\n");
Error_init(&eb);
task = Task_create(taskFxn, NULL, &eb);
if (task == NULL) {
System_printf("Task_create() failed!\n");
BIOS_exit(0);
}
BIOS_start();
/* enable interrupts and start SYS/BIOS */
}
...............
Ths task generates "enter task" and "exit task" once.
Now I want to add an idle task by inserting:
................
void cIdle(void);
void cIdle(void)
{
return;
}
...............
I find that the cidle does run by setting breakpoint at the last "}", but taskFxn still runs one time.
I suppose that task taskFxn has high priority than idle, it will run continuously by back to idle, run taskFxn, back to idle etc... I know that this task has no blocked, ready, run flags and branches. I think it still runs at a higher priority than idle(). What is wrong in the experiment?
Thanks