Interrupt Disable

impulz1 wrote on Wednesday, April 15, 2009:

Hi, i need help, What to happend if i dont create my own task,
If i understood how work a FreeRTOS than, if i dont create task, main calls function vTaskStartScheduler, this function create Idle task and than function DISABLE ALL INTERRUPTS, next function to be called is xPortStartScheduler, this function setups time interrupt generation with defined period, and than calls vPortStartFirstTask, function to RESTORE CONTEXT, this function must switchs context on Idle  task, and in idle task is called portYield - to generate software interrupt,

My question, INTERRUPTS ARE DISABLE, SWI is than only dummy function? And how is generated Tick clock from timer interrupt if interrupts are disabled??

I will be pleased for explanation :slight_smile:

edwards3 wrote on Wednesday, April 15, 2009:

First off there is no point in starting the scheduler if you have not created any tasks - unless you either are just using co-routines or all your tasks are created from the idle task.

Second off interrupt are enabled when the first task starts running.

impulz1 wrote on Wednesday, April 15, 2009:

I didnt create tasks, i just try if FreeRTOS works, idle task is task as other, and when runs idle task then must be enable interrupt but it is not enable because timer tick is not generated, in timer tick i add my own code for response, if procesor jumps in timer interrupt routine, but it not jumps in timer interrupt routine, i dont know why,