Hi Radomir
Please specify whether you have also GPIO interrupt and/or LPTMR operation in addition to this code and whether you have the watchdog enabled or disabled?
Some tips
1. SMC->PMPROT is a 'write-once' register so if you are using general example code there is a risk that it has already been written to in some other initialisation and so it is not in the mode that you expect and/or won't operate correctly.
2. The 150MHz K60 needs also the LPWUI flag in SMC->PMCTRL to ensure wake-up from an interrupt (although it is not critical if you are entering VLPS directly from RUN)
3. If the watchdog hasn't been disabled and you don't have a service that is regularly exiting from VLPS to service the watchdog and return to VLPS automatically you will need to ensure that the STOPEN flag in the watchdog control register is disabled to stop the watchdog firing in VLPS, and causing a reset.
4. You should disable interrupts before calling the WFI command and only enable them again once it continues (to ensure no race states and orderly recovery)
5. If you have the clocks operating from the PLL you also need to re-configure and restart the PLL each time you return to RUN mode
Regards
Mark
uTasker - for immediate and complete Kinetis solutions