FreeRTOS Support Archive
The FreeRTOS support forum is used to obtain active support directly from Real
Time Engineers Ltd. In return for using our top quality software and services for
free, we request you play fair and do your bit to help others too! Sign up
to receive notifications of new support topics then help where you can.
This is a read only archive of threads posted to the FreeRTOS support forum.
The archive is updated every week, so will not always contain the very latest posts.
Use these archive pages to search previous posts. Use the Live FreeRTOS Forum
link to reply to a post, or start a new support thread.
[FreeRTOS Home] [Live FreeRTOS Forum] [FAQ] [Archive Top] [October 2011 Threads] low power mode transition with freeRTOSPosted by pavel on October 28, 2011 Hello I work with STM32 CortexM3 and I want to go to low power mode (sleep mode) My idea is as follows: 1) Stop all peripherals except those that I want to be woke up from. 2) call vTaskSuspendAll() 3) call WFI that stops the core 4) after wakeup, check the wakeup reason 5) and call vTaskResumeAll() 6) Now the OS is running as normal and I proceed with peripheral initialization I wonder if the described steps are sufficient and if I didn't miss something important on the OS site.
Thank you very much for any reply
RE: low power mode transition with freeRTOSPosted by Richard on October 29, 2011 It really depends on what you want the kernel to be doing while you are in sleep mode.
To keep track of time, and therefore to unblock tasks at the right time, you need to keep the tick interrupt running (see the exception below, about a tickless version of FreeRTOS). That means the tick interrupt will periodically bring the Cortex-M3 out of sleep mode, which can limit the power saving. There are ticks you can do, like reducing the tick frequency by a factor (say 10 for example) then calling the increment tick function 10 times each time the tick brings the CPU out of sleep.
For real power saving, there is a tickless version of FreeRTOS that removes the need for FreeRTOS to periodically wake the CPU up. It requires an external low power crystal (like a watch crystal) to allow even the timers to be turned off. I have provided a link below, which also contains a thesis on the subject.
http://interactive.freertos.org/entries/20291196-energy-optimized-port-of-freertos-6-for-efm32
Regards.
RE: low power mode transition with freeRTOSPosted by pavel on October 31, 2011 Richard, thank you for detailed answer
regars
Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.
|