用stm32l151做低功耗遇到的一些问题

mac2024-04-06  35

STM32待机模式和独立看门狗的协调

使用stm做低功耗项目,往往会在主要程序处使用独立看门狗防止程序跑飞。但是看门狗一旦被开启,就只有复位才能够将其关闭,这显然就和待机模式产生了冲突。

解决办法

1.主要程序执行完毕后,使用软件复位关闭独立看门狗 2.之后根据复位的类型执行相应的程序(复位类型参考RCC_CSR寄存器) (1)如果是软件复位则直接进入待机模式 (2)如果不是软件、上电/掉电和看门狗复位则执行主要程序并且开启看门狗

另外

1.在用RTC闹钟唤醒待机模式时,(LSI作为RTC的时钟源)出现软复位和待机复位后,RTC日历的时间异常的情况。主要是LSI作为时钟源时,其配置在复位之后也会被复位,所以每次复位后要重新配置。 2.设置闹钟唤醒的时候千万要注意值的正确,不能出现数溢出的情况(比如15:36:60)。 3.stm32l151c8t6内部的37kHz的LSI(分频296*125),测试误差在1min/h。

最新回复(0)