K60 Micro Power Mode

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

K60 Micro Power Mode

929 Views
sivaveluppillai
Contributor III

We are running our K60 micro MK60DN512VLQ10 from a system oscillator 16MHz clock (Core clock is 96MHz) and we also have the external RTC oscillator 32.768kHz.
We have a low power requirement when battery powered.
In this low power mode, we sleep for 250mS and wake up and check for reason to wake and sleep again.
During this 250mS sleep the only thing needed to work is wake up from pin change/pin interrupt.
Requirements:
So looking at the power mode options, VLPS is the most appropriate mode although we are happy to consider other power modes.
I am also thinking we could use the 1kH LPO for the sleep clock but not sure it can do 250mS. This can be utilised with the internal wdog?
We don’t need super accuracy but the 1kHz clock has +/-10% accuracy and it is pretty bad. So I am wondering whether we could calibrate the 1kHz. May be another way?
Any sample code/app note for this?
I have the followings:
AN4503 Power Management for Kinetis MCUs

AN4470 Using Low Power modes on Kinetis family

K60 Sub-Family Reference Manual

Any other suggestions can also be considered?

Previously we considered the VLPR, the issue is this mode still keeps the core frequency running and changing the clock to 32kHz may be a solution but has no benefit!
We are using Code Warrior IDE for the development!

5 Replies

834 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi  SIVA VELUPPILLAI ,

    You mentioned: During this 250mS sleep the only thing needed to work is wake up from pin change/pin interrupt.

    Do you mean, you want 250ms to wake up from VLPS, or the external pin interrupt, right?

    Then you want to use the LPTMR as the timer to wake up from the VLPS, right?

     LPO 1Khz is defined, and can't be calibrated.

pastedImage_1.png

But I think you can use ERCLK32K:

pastedImage_2.png

pastedImage_3.png

Because already add the external 32K crystal, you can use it.

Wish it helps you!

If you still have questions about it, please kindly let me know.

Kerry

 

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

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

   

834 Views
sivaveluppillai
Contributor III

Thank you Kerry for the reply,
Yes we want either the wake up conditions to wake:
1) 250ms to wake up from VLPS or
2) External pin interrupt

The LPTMR0 is used in the main full run and are we able to use this during sleep?
We can restart this timer and reinitialise, when we wake up.
Are you able to share a sample code routine to switch LPTMR for 250ms wake up with 32.768Hz clock?
How many LPTMR are they?

0 Kudos

834 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi SIVA VELUPPILLAI,

  Check the RM, chapter 7, you will find LPTMR0 works in VLPS mode, LPTMR is the low power timer.

pastedImage_1.png

Before you enter the VLPS mode, set your LPTMR timer interrupt to 250ms, then enter the VLPS, after 250ms, the LPTMR interrupt will happens and wake up the VLPS directly.

Wish it helps you!.

If you still have questions about it, please kindly let me know.

Kerry

 

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

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

 

834 Views
sivaveluppillai
Contributor III

Do you have sample code for the  LPTMR timer interrupt to 250ms as we use PE for all our development?

0 Kudos

834 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi SIVA VELUPPILLAI.

  About the LPTMR examples, you can download the SDK for K60D100 from this link:

Welcome | MCUXpresso SDK Builder 

 Select the board as TWR-K60D100M, then you can find the LPTRM code from the folder:

SDK_2.2.0_TWR-K60D100M\boards\twrk60d100m\driver_examples\lptmr

Wish it helps you!

If you still have questions about it, please kindly let me know.

Kerry

 

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

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

0 Kudos