AnsweredAssumed Answered

MQX Enable Low Power flag

Question asked by Noam Ziv on Nov 30, 2015

Question:

When using KDS3.0, KSDK1.3 and MQXLite - how do I configure the project to set the MQX_ENABLE_LOW_POWER flag and remove the idle loop counter?

 

Details:

I am in the process of converting (read - re writing) a project.

 

The existing project uses KDS2.0 and MQXLite, but not KSDK.

 

The new project uses KDS3.0, KSDK1.3 and MQXLite.

 

Both projects create an Idle Task

 

The Idle Task makes use of two flags:

MQX_ENABLE_IDLE_LOOP  - Idle task implements a counter, preventing transitions to lower power states

MQX_ENABLE LOW_POWER - counter is replaced with _ASM_SLEEP

 

Also, when looking at the idle task file  (an idletask.c file is placed in the ../SDK/rtos/mqx/source/kernel directory),

another troubling fact is the following line (found prior to the code for the idle loop):

 

#if !defined(MQX_ENABLE_IDLE_LOOP) || MQX_ENABLE_IDLE_LOOP

counter code

#endif

 

which is pretty much the same as #if TRUE (i.e. always implement the counter)

 

Many thanks!

Outcomes