1. 在低功耗模式的设置中,内核维持供电和时钟停止不是一个概念,时钟停止内核不会往下取指和执行代码,但因为供电是维持的所以内核寄存器的值被保留,当时钟启用时可以接着 进入低功耗模式 前的状态无缝衔接的往下执行,好像什么都没发生一样。而如果进入低功耗模式前内核被断电,那么恢复供电和时钟后,内核寄存器的值将是随机错误值,因此需要在进入低功耗模式前将内核寄存器的值存入一个在低功耗模式期间不掉电的ram中。
2. 低功耗模式并不意味着所有的时钟都停止工作,因为时钟停止后中断响应isr也将无法执行,因此正确的操作是降低/切换低频时钟;当然有的低功耗模式下所有时钟都会被关闭,唤醒也不是通过中断isr,比如stm32的PA0,那么就不需要在低功耗期间维持时钟。