Usage of POWER_SetLowPowerVoltageForFreq in LPC5411x SDK

cancel
Showing results for 
Search instead for 
Did you mean: 

Usage of POWER_SetLowPowerVoltageForFreq in LPC5411x SDK

274 Views
imetro
Contributor I

Hi,

I see LPC5411x SDK provides some Power APIs. There is a function called POWER_SetLowPowerVoltageForFreq in SDK, and its description is "Set voltage levels for low power regulation mode". However, the description still confuses me with the scope of influence. Does this function regulate power just in Sleep/Deep-sleep mode or also in Active mode? Where shall I use this function in application?

Actually, I have tried this function in my code, like that (this is an application used HWVAD and Watchdog oscillator in Deep-sleep mode):

// using FRO 12 MHz clock as main clock now

while (1)
{

   POWER_SetLowPowerVoltageForFreq(CLK_FRO_12MHZ);

   // okay here
   POWER_EnterDeepSleep(SYSCON_PDRUNCFG_PDEN_SRAM0(1) | SYSCON_PDRUNCFG_PDEN_WDT_OSC(1)); // only keep Watchdog oscillator running and power down FRO

   // cannot get here
}

It seems like okay immediately after POWER_SetLowPowerVoltageForFreq, but when it tries to get into Deep-sleep mode, the DMIC seems unclocked and never wakes up the cores. When I remove the call of POWER_SetLowPowerVoltageForFreq, it gets back to normal.

I also try to change the source of main clock to Watchdog oscillator before it gets into Deep-sleep mode, it seems like okay immediately after this operation, but when HWVAD wakes up the cores and the source of main clock is changed back to FRO 12 MHz it also fails. I would like to know what happen in this function.

In short, please inform me how to use POWER_SetLowPowerVoltageForFreq, and (if permitted) its principle. Thank you.

Regards,

Huang Zhexiong

Labels (1)
Tags (1)
0 Kudos
1 Reply

38 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi huang zhexiong,

    Yes, POWER_SetLowPowerVoltageForFreq description is very concise, this is the ROM API, used to set up internal voltage levels for the low power mode(sleep/deep sleep,etc).

    You said when you call POWER_SetLowPowerVoltageForFreq, you can't use the HWVAD to wake up the core, could you tell me, any power consumption difference between you add POWER_SetLowPowerVoltageForFreq and don't add it? If the power consumption is really cut down, just can't be wake up, I will test it, and help you to check our according department.

    About POWER_SetLowPowerVoltageForFreq principle, because the it is the ROM API function, and the ROM API doesn't opensource, then we also don't have it now.

  


Have a great day,
Kerry

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos