Hi,
I'm using Deep Sleep and Deep Power-down in our application. In both the wakeup can be triggered by RTC alarm and two GPIOs (Deep Sleep: PINT, Deep Power-down: dedicated wakeup pins).
I need to use Deep Power-down to minimize the power consumption for most of the time (Power-down is not an option since it drives all pins low). The problem is that I also need to know which wakeup source I can blame after the wakeup. In Deep Power-down a wakeup causes a chip reset which means I cannot use RTC general purpose registers to store the wakeup source data (I assume there's no time for using ISR before the reset occurs).
Is there any way I could see the wakeup source after waking up from Deep Power-down?
I'm using LPC55S28.
Thanks.
Solved! Go to Solution.
Hi vanska
We can check general purpose always on domain data storage. I extract it from UM11126.If this doesn't help, please contact me again.
This is General purpose always on domain data storage.
Remark: This register is managed and updated by the ROM boot and cannot be updated by any application.
Hope this helps,
Jun Zhang
Hi vanska
We can check general purpose always on domain data storage. I extract it from UM11126.If this doesn't help, please contact me again.
This is General purpose always on domain data storage.
Remark: This register is managed and updated by the ROM boot and cannot be updated by any application.
Hope this helps,
Jun Zhang
Thanks @ZhangJennie!
I was already using AOREG1 storage for logging purposes but the problem was that it didn't provide information about which I/O caused the wakeup (indeed it shows if it was caused by the RTC alarm or some wakeup pin). But after taking another look at the user manual, I found the WAKEIOCAUSE register which was the missing piece of the puzzle. Now it works perfectly!