• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

STM32WB55待机模式唤醒后RTC时钟被重设为2000年

7c685f356cbd7121 2020-07-03 浏览量:1269
我的应用设置为工作完成后进入待机模式30S,然后RTC唤醒。项目需要日历功能,但是发现每次唤醒后RTC被重置为2000年1月1号,求解?STM32芯片的VDD引脚都接在外节电池上
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 掉电用的RTC是要使用后备寄存器的,上电判断后备寄存器的值,如果值与你之前写入的一样时,就不要初始化RTC,因为RTC还在走,有电池,否则才会初始化,你是不是没有判断呢
    • 发布于 2020-07-03
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:4
  • RTC单独供电了吧?

    待机模式-->工作模式 是要复位的,你对时钟初始化有处理没,要用下备份寄存器

    • 发布于2020-07-03
    • 举报
    • 评论 2
    • 0
    • 0
7c685f356cbd7121 回复了 细风 :唤醒后工作模式要怎么设置呢?时钟初始化就是Cube自动生成的,备份寄存器怎么操作呢。我想达到的效果是唤醒后时钟继续 回复
7c685f356cbd7121 回复了 细风 :您好,能否说的详细些,或者贴部分代码 回复

  • 如果电池供电功率不够的话不可以把vdd个rtc供电的vbat引脚接在一起,比如纽扣电池就不行,你可以用示波器测量电压波形是否变化很大

    还有一种情况就是就是程序里面是否有复位时钟操作

    • 发布于2020-07-03
    • 举报
    • 评论 0
    • 0
    • 0

  • RTC需要有个超级电容维持其运作,而且需要比较稳定的电压,否则它内部的数据会错乱
    • 发布于2020-07-03
    • 举报
    • 评论 0
    • 0
    • 0

  • 应该是你有初始化RTC时设置的时间又启效了,你应该判断RTC的时间是不是还在走,再判断RTC要怎么初始化
    • 发布于2020-07-04
    • 举报
    • 评论 1
    • 0
    • 0
7c685f356cbd7121 回复了 汉云 :请问如何判断RTC是否继续在走? 回复

相关问题

问题达人换一批

STM32WB55待机模式唤醒后RTC时钟被重设为2000年