打印
[STM32F1]

求助,频繁读写BKP备份寄存器,导致RTC误差大。

[复制链接]
544|17
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
qqtfh|  楼主 | 2022-12-31 11:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如题,因为需要用到BPK备份寄存器RAM,平均一秒读写一次备份RAM,RTC 12小时的竟然误差34秒。一开始我以为是STM32F103的RTC太差了。于改修改PCB,使用DS1302做RTC。没想到误差更大,1小时就误差60秒。DS1302我使用过非常多,其它地方并没有这样的问题。经过反复对比,我终于发现,只要不读写备份RAM就没有问题。只要一读写,无论读写多少次都会造成误差。读写得越多,误差越大。求解决办法,求指点。

使用特权

评论回复
沙发
Bowclad| | 2023-1-1 16:39 | 只看该作者
减少写入次数

使用特权

评论回复
板凳
一周一天班| | 2023-1-1 17:49 | 只看该作者
既然加了ds1302,那么stm32的rtc也用上,但只做数据保存,不理会时间。

使用特权

评论回复
地板
qqtfh|  楼主 | 2023-1-2 09:59 | 只看该作者
一周一天班 发表于 2023-1-1 17:49
既然加了ds1302,那么stm32的rtc也用上,但只做数据保存,不理会时间。

我试一下这样RTC还会不会受影响,但是这样的话,RTC电池,要同时给2个芯片供电。耗电量会增大。

使用特权

评论回复
5
yeates333| | 2023-1-5 14:58 | 只看该作者
DS1302有时间的误差的吗?              

使用特权

评论回复
6
updownq| | 2023-1-9 13:12 | 只看该作者
为什么要读写这个数据呢?              

使用特权

评论回复
7
减少写入的次数。

使用特权

评论回复
8
jkl21| | 2023-1-10 20:10 | 只看该作者
你使用的32K的晶振吗?              

使用特权

评论回复
9
Pretext| | 2023-1-11 09:55 | 只看该作者
读写BKP备份寄存器为什么会导致RTC出问题?

使用特权

评论回复
10
朝生| | 2023-1-11 09:55 | 只看该作者
BKP备份寄存器和内部RTC应该没有直接的联系吧?更别说外部RTC了。

使用特权

评论回复
11
芯路例程| | 2023-1-11 09:56 | 只看该作者
我感觉是读写备份RAM的程序有问题。贴出来看看呗。

使用特权

评论回复
12
qqtfh|  楼主 | 2023-1-12 15:25 | 只看该作者
朝生 发表于 2023-1-11 09:55
BKP备份寄存器和内部RTC应该没有直接的联系吧?更别说外部RTC了。

你大概没看明白我说的意思。内部RTC和BKP是共用时钟LSE或LSI时钟的。还有RTC和BKP是共用备份电源的。怎么说没有直接联系?我说外部RTC,不是指内部BKP和外部RTC的关系。因为换成外部RTC了,时钟备份电源和时钟晶振也换到外部RTC了。所以,也换成了外部备份RAM。就是DS1302的32字节的RAM。

使用特权

评论回复
13
朝生| | 2023-1-12 16:41 | 只看该作者
qqtfh 发表于 2023-1-12 15:25
你大概没看明白我说的意思。内部RTC和BKP是共用时钟LSE或LSI时钟的。还有RTC和BKP是共用备份电源的。怎么 ...

懂了,那就只能研究为什么读的时候会导致RTC出现误差了。

使用特权

评论回复
14
fengm| | 2023-1-12 17:09 | 只看该作者
这个为什么不使用内部的RTc?              

使用特权

评论回复
15
1988020566| | 2023-1-19 13:43 | 只看该作者
这个怎么可能会有问题呢。              

使用特权

评论回复
16
jackcat| | 2023-1-19 14:23 | 只看该作者
这个是晶振的问题吧。              

使用特权

评论回复
17
vivilyly| | 2023-1-21 16:09 | 只看该作者
bkp只是保存参数而已。              

使用特权

评论回复
18
SantaBunny| | 2023-2-3 18:46 | 只看该作者
可以先减少写入的次数,再看看有没有时间的误差。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

38

主题

174

帖子

2

粉丝