I am trying to run my KL03Z processor in VLPR mode instead of RUN mode. I have set my core clock to 4MHz and the bus clock to 1MHz. I have both TPM timers running off an external clock which remains enabled, one of the timers generates an interrupt every now and then. I have set the PMPROT_AVLP bit for VLPR and the PMCTRL_RUNM bits to VLPR mode. I believe this is all I have to do to get into VLPR mode.
When I step through my code using the debugger, I can clearly see that the I'm in the VLPR mode since the current is as I expect it to be. However, when I run the code (i.e. no longer stepping through), the current jumps up to the RUN value.
Something is causing it to exit VLPR mode without my changing the RUNM bit. I understood that KL03 devices would not exit VLPR from an interrupt. Is that true? Is the only way to exit from VLPR with the KL03 is to change the RUNM bit to 00?
Am I missing something?