求解决:DS1302时间走快的问题
时间:10-02
整理:3721RD
点击:
情况是这样的,时钟模块DS1302中有自己的电池(3v,这是单片机断电时,时钟还是可以工作的)。在接入单片机时也要给时钟模块加5V的电压。让它跟单片机一起工作一天。结果就是快了半个钟头。而单单时钟模块自己工作时,时间却没有快,就跟正常时间一样走。这是为什么?
单片机程序有问题吧,
就一开始时有给时钟模块写时间,其他有没有给时钟模块写数据...只是读取时钟模块的数据...这也会影响得到时间?求解释
程序写的数码管显示吗?后面没有调节DS1302的时间了?
有显示啊,要不然,我哪知道它会走得快.....后面只是调用读DS1302的程序,而没有调用写DS1302的程序。
不好意思,我刚刚看到,这个走时不准肯定会是有的。你得相应的在软件上做个时间补偿工作(每天+-误差写进1302)。关于没有写寄存器操作,后备电池供电正常、主供电走时就不正常,你可以修正下每次读取寄存器的时间,读取时间的频率减慢一些,,,以前写过1302,好像误差不是很大,我的是几个月才相差个三四分钟的。
看看能不能解决。要是不能就只能够用软件补偿了。多谢了
dongyumin,你说的在软件上做个时间补偿工作(每天+-误差写进1302),我想问一下,这个补偿工作在什么时候做?对1302写入的补偿值不就直接导致时间的跳变了?
你这是扯的吧,按照时序进行的操作,一般不会有问题的,是时钟芯片和时钟晶振的温漂问题,便宜的晶振的温漂肯定很大,这个和程序问题不大,如果你没有在程序上做简单的校准处理,一般的DS1302都会出现误差,我的时钟误差(最普通的DS1302和几分钱的晶振,并且没有做软件上的校准)24小时相差1.5S。
大家能够分享下您们的程序吗?