[STM32F0] STM32F030的RTC问题

[复制链接]
6138|9
seanwu 发表于 2015-2-27 13:57 | 显示全部楼层 |阅读模式
本帖最后由 seanwu 于 2015-2-27 14:20 编辑

STM32F030芯片,RTC用LSI RC 40KHz时钟,通过STM32CubeMX配的,发现RTC不走时。可能是什么原因?
baita 发表于 2015-2-27 22:16 | 显示全部楼层
没退 出 初 始 化 模 式吧
 楼主| seanwu 发表于 2015-2-27 22:59 | 显示全部楼层
谢谢指点,我再查查。
我现在用TIM做了一个1s中断,暂时代替了RTC功能。内部RC时钟,精度一样不准。
 楼主| seanwu 发表于 2015-2-27 23:23 | 显示全部楼层
本帖最后由 seanwu 于 2015-2-27 23:31 编辑

我重新看了一遍代码,还是不知问题所在:
由STM32CubeMX产生的代码中,执行了MX_RTC_Init(),不知还需要什么操作才能让RTC跑起来。
我是通过看HAL_RTC_GetTime()的结果,来判断的RTC没走时的(值没有变化)。
zh113214 发表于 2015-2-28 15:14 | 显示全部楼层
进来看看,不知道楼主是怎么配置的,
yinhaix 发表于 2015-5-14 16:38 | 显示全部楼层
正要研究
johnxen 发表于 2015-6-14 22:23 | 显示全部楼层
我也遇到同样的问题,读出来都是零,不会走
aozima 发表于 2017-2-27 20:44 | 显示全部楼层
也打算用LSI作RTC的时钟源,这个问题后来解决了吗?
另外LSI的实际精度如何?如何校准比较好?
liangqin1573 发表于 2017-3-13 00:39 | 显示全部楼层
aozima 发表于 2017-2-27 20:44
也打算用LSI作RTC的时钟源,这个问题后来解决了吗?
另外LSI的实际精度如何?如何校准比较好? ...

STM32F030用LSI作时钟源走时不准,40Khz配置SynchPrediv = 0x18F;AsynchPrediv = 0x63;一天会快几分钟。改到SynchPrediv = 0x190还是快,改到SynchPrediv = 0x191,就慢了一点点。总之内部时钟不准确。
要想准时,还是用外部LSE时钟,32768hz,我在STM32F103上试过,比较准。
我有两个最小系统板,对比试过。
aozima 发表于 2017-3-13 09:54 | 显示全部楼层
一天会快几分钟还凑合呀,看来可以实际测试下并使用了。
我打算每隔一定时间使用HSI来校准LSI,然后设备是有网络的,每天启动后可以自己去网络校时。
这样虽然每天有误差几分钟,但不会有累积误差。
对于不要求精度到秒的应用应该完全满足需求了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

33

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部