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

STM32的RTC用高精度我外部时钟芯片还是有误差

肉食者比 2020-02-18 浏览量:1339
大概1天就会有1秒左右的误差,要怎么解决这个问题
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 这个误差算是比较大的了,通常来说不会有这么大的误差,你已经使用你外部的高精度芯片,说明是内部的RTC时钟的问题,一般都是由于系统的温漂或者没有校准导致的,如果要消除这个误差,可以通过外部的方式来校准时间,一般用的就是网络对时的方式来校准
    • 发布于 2020-02-23
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:3
  • 如果每天都是少1秒或者多1秒通过rtc校准寄存器校准,可以让时钟每天加减1秒来弥补误差,如果每天误差时间不缺定那就是晶振温漂导致的,需要增加温度补偿算法,还可以使用gps时间,网络授权时钟,电脑钟来定时校准时间
    • 发布于2020-02-18
    • 举报
    • 评论 0
    • 0
    • 0

  • 这个其实要看你系统对同一的时间到底有多精准要求,因为大多数stm32运行环境其实是自持的,即使和其他交互(交换数据),和时间关系也不是太紧密,所以不一定要解决这个问题,只要系统稳定就好。

    如果确实需要很准确的时间,则可以采用定时补偿调整(对每天固定的误差有效),或者采用gps时间系统等等外部授时校准,不过后面的授时校准成本和资源占用都要考虑。

    • 发布于2020-02-18
    • 举报
    • 评论 0
    • 0
    • 0

  • 通常遇到这种情况都是由于你的RTC的温漂导致的,因为温度也会影响实际的精度
    • 发布于2020-02-26
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

STM32的RTC用高精度我外部时钟芯片还是有误差