Hi Evgeny
The LPUART also has an "asynchronous" edge triggered interrupt on its Rx line that can be used to wake from VLPS when the LPUART is not clocked.
Here is reference code from the uTasker project which is used to enable this when moving to low power mode:
if (IS_POWERED_UP(5, SIM_SCGC5_LPUART0)) { // if LPUART0 is enabled
LPUART0_STAT |= LPUART_STAT_RXEDGIF; // clear edge flag
LPUART0_BAUD |= LPUART_BAUD_RXEDGIE; // enable wakeup on RxD falling edge
if ((LPUART0_STAT & LPUART_STAT_RAF) != 0) { // if the receiver active flag is set it means that reception has already started so we don't enter stop mode
SYSTEM_CONTROL_REGISTER &= ~SLEEPDEEP; // use wait mode until the reception has completed
}
}
Regards
Mark