STM32
直播中

麦特拉布

12年用户 1086经验值
私信 关注
[问答]

STM32L152进入待机模式1分钟唤醒一次,18个小时后无法唤醒是怎么回事?

目前在使用STM32L152时,设置了RTC唤醒,每隔1分钟唤醒一次,周期采集数据并上传,一开始都是正常唤醒工作,但是在18个小时候,设备就无法唤醒,但是重新插拔电池后又可以正常工作18个小时。
这个原因是什么?待机模式唤醒后要进行什么操作?
18个小时我算了一下大概是0xFFFF秒,也就是65535秒。不知道是那个参数导致了这个问题。
在此请教一下大家

回帖(1)

莫联雪

2024-5-18 17:36:22
根据您的描述,STM32L152在待机模式下每隔1分钟唤醒一次,但在18个小时后无法唤醒。这个问题可能有以下几个原因:

1. 电源问题:在长时间待机后,电池电压可能降低,导致无法正常唤醒。重新插拔电池后,电池电压恢复,设备可以正常工作。

2. RTC唤醒设置问题:可能是RTC唤醒设置不正确,导致在长时间待机后无法唤醒。请检查RTC唤醒设置,确保唤醒周期和唤醒时间正确。

3. 硬件问题:可能是STM32L152硬件存在问题,导致在长时间待机后无法正常唤醒。可以尝试更换STM32L152芯片,看是否能解决问题。

4. 软件问题:可能是程序中存在bug,导致在长时间待机后无法正常唤醒。请检查程序代码,确保唤醒逻辑正确。

待机模式唤醒后,需要进行以下操作:

1. 唤醒外设:在唤醒后,需要重新初始化和配置外设,以确保它们可以正常工作。

2. 检查电源:检查电源是否稳定,以确保设备在唤醒后可以正常工作。

3. 重新配置时钟:在唤醒后,可能需要重新配置时钟,以确保系统时钟正常工作。

4. 处理唤醒原因:根据唤醒原因(如RTC唤醒、外部中断等),执行相应的处理逻辑。

关于65535秒的问题,这可能是RTC唤醒计数值的问题。请检查RTC唤醒计数值设置,确保它正确地设置为1分钟(即60秒)。

总之,要解决这个问题,建议您从电源、RTC设置、硬件和软件等方面进行排查。希望这些信息对您有所帮助。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分