我可以在 RTC 运行的情况下将我的 stm32L1xDiscovery 板置于 STOP 模式。根据数据表,这应该消耗大约 1.3 µA。但我的应用消耗 3.3 µA。
我注意到我没有在睡眠期间将 FLASH 置于低功耗模式。但是当我这样做时,什么都没有改变。
这是我用来进入停止模式的:
SCB->SCR |= ((uint32_t)SCB_SCR_SLEEPDEEP);
RCC->APB1ENR |= RCC_APB1Periph_PWR;
PWR->CR |= ((uint32_t)(PWR_CR_LPSDSR|PWR_CR_ULP)); // ULP seems to have no effect on power consumption
RCC->APB1ENR &= ~RCC_APB1Periph_PWR;
FLASH->ACR |= SLEEP_PD; // seems to have no effect at all on power consumption
__WFI();
知道我在这里缺少什么吗?