tasks

Posted by Braun on January 5, 2012
Hello,

I work in the
Now I want to perform some task to save energy.
The tasks have been created from a different task.
The craeter Task have the priority 2.He goes after he create the task in the state suspend.
The energy-saving tasks are first priority. I let them wake up with a RTC interrupt. After that, the task generator is placed in the ready state.

Energy save Task:

rtc_config();
rtc(RTC_COUNT_BETWEEN_WAKEUP);
EMU_EnterEM2(false);
vTaskResume( xHandle );

-- This will not run. Why?

other solution:
Energy save Task:
rtc_config();
RTC_Interrupt = 0;
rtc(RTC_COUNT_BETWEEN_WAKEUP);
do
{
EMU_EnterEM2(false);
}while(RTC_Interrupt == 0);
vTaskResume( xHandle );

this runs, because the Task is waiting

Does anyone have an explanation?

RE: tasks

Posted by Richard on January 5, 2012
Sorry, I'm not following your code or your intention. I'm guessing you are using an EFM32 part - in which case you might get something from the following contributed code and documentation:
http://interactive.freertos.org/entries/20291196-energy-optimized-port-of-freertos-6-for-efm32

Regards.