Hi,
i have running A IAR-MSP430 Port of V4.2.0 with some small extentions for Low-Power-Modes.
So the System is running in Power-Down with the 32kHz – Clock as a Realtime Clock toggeling ans showing on LCD every second with 10uA current.
For Power-Down I loaded the value of the tik-counter in a timer with the next task-wakeup-time and coroutine-wakeup-time in a Compare-Register of that Timer.
So the Controller can Sleep up to the nextwakeup or asynchron event.
Then the Tik-Counter is restored and the normal Realtime-Tiks are Handled.
If there ist no task or coroutine to run, the Power-Down-Mechanism is Called in the IDLE-task.
I Implemented this in port.c file but I extended the task.c with some small Routines to get and set the TIKs
portTickType xTaskGetxTickCount(void)
void xTaskSetxTickCount( portTickType newxTickCount )
and to get the next Timepoint to wake up
portTickType xTaskGetNextDelayedTik( void )
portTickType pxGetNextDelayedCoRoutineTik ( void )
Are there an interest or plans to implement some more low-power-management feature in Free RTOS ?
Jürgen