Hi Evgeni Kosakovski,
My colleague had done a test on FRDM-KL25Z board about "Asynchronous Resume Interrupt" to wake up the chip from VLPS low power mode.
More detailed info, please check attached code and pdf file.
The USB module has two different interrupts for a USB resume event. One asynchronous to be able to wake up from a low power mode, which is triggered by change in the state of the USB lines. The other is synchronous and is triggered only after 2.5us of detecting a K state (D+ = 0, D- = 1, for Full Speed). The application is responsible to transition to the low power mode whenever it required, and for this purpose it must check the device state as reported by the USB stack. When a suspend condition is detected in the bus, the SLEEP interrupt triggers and the stack changes its state to suspend; then the application will transition to the low power mode. When this SLEEP interrupt occurs, the asynchronous wake interrupt is enabled, and is disabled when it is triggered (this is required by the module to clear the interrupt). In normal conditions, the synchronous resume interrupt or the reset interrupt will be triggered afterwards, causing the stack to transition its state to other than suspend. The application can then know that communication is active again and will avoid entering the low power mode again.
Have a great day,
Kerry
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------