stm32频繁复位,导致rtc定时误差问题

2019-07-21 00:00发布

如题:  单片机:stm32l071  使用LSE作为内部rtc时钟源,系统每天工作一次,随后进入待机模式,在待机模式下需要频繁唤醒

问题:定时一天的情况下,实测由于频繁唤醒,会造成rtc走的时间比实际时间慢

问:

(1)理论上来说,在配置LSE作为RTC时钟源的情况下,只要不掉电,RTC一直在跑,复位为何会对rtc时间有影响?

(2)目前猜测的原因,一个是每次唤醒初始化rtc造成影响,如是该原因,可否复位后不初始化rtc?

(3)另一个可能原因是复位后需要重新配置LSE时钟,造成rtc误差,如是该原因,如何解决?

恳请高手帮忙指点一二,感谢!!!


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
17条回答
supergao
2019-07-21 14:16
zc123 发表于 2018-11-30 15:08
ST的RTC使用内部LSI的精度不高,但你这使用的是外部LSE,精度基本上由外部晶振决定,
1.你可以用示波器量 ...

感谢回复!!是这样:
(1)目前身边的仪器条件不满足测晶振的准确振荡频率,但根据晶振手册的描述,理论一天的误差在秒级
(2)您建议的第二点我这里测试过,在不频繁进睡眠的情况下,一天的误差在2s左右。而且我在工作状态下测试过,rtc定时一小时误差很小,一旦加上频繁的待机和唤醒,误差就大了。一天的误差在一分钟左右

一周热门 更多>