agui411 发表于 2009-6-28 10:41:44

用DS1302时遇见的问题

我采用模拟SPI通信的方式D操作S1302。时间都能正常的读取出来。在外部电路上我采用了两个电源供电。VCC1采用开关电源供+5V的电压,VCC2采用的是+3V的纽扣电池。以保证在开关电源关闭时DS1302也能正常的走时,确保下次VCC1上电时能正常显示时间。

但是现在的问题是:有的时候VCC1上电时间会出现不确定的值,例如显示2000年04月25日13时56分80秒或者2125年04月25日13时56分100秒。修改这个错误的时间为正常值后,时钟又能正常的走时和显示了。但下次上电时时间又会出错。
我已经在VCC1和GND之间加了104的电容,不知道这样做对不对,我总认为是电源上电是高的电压尖峰引起的,不知道该如何解决,望各位高手指点。

rand_liu 发表于 2009-6-28 10:51:32

第五脚接220K下拉试试.

billleu 发表于 2009-6-28 11:11:05

you vcc2 maybe is no power.

agui411 发表于 2009-6-28 11:17:39

谢谢
但是VCC2没电应该是时间停止,也就是说上电时时间应该停在上次断电时的时间值,
而不应该出现不和逻辑的时间值的。

m-aaaa 发表于 2009-6-28 12:18:53

如果是再写入又可以正常走,估计1302的问题,我以前也遇到过,解决办法就是上电每30秒监测一次1302,看她十分正常,如果不正常立即初始化一遍,这样改了后没再发现问题.
具体方法程序内部也有定时器在计时,在10秒40秒是读取1302,如果发现误差大于2秒则初始化1302.小于2秒则用1302中的值修正定时器.楼主可以试一下.

yzcdmtz 发表于 2009-6-28 12:51:16

VCC2是主电源 VCC1是备用电源

agui411 发表于 2009-6-28 20:29:41

谢谢各位的回答
我去试试

sdjackal 发表于 2009-6-28 21:22:09

你反接了主电源与备用电源,VCC1是接备用电源的

agui411 发表于 2009-6-29 22:29:49

上面说的有误,我是用的VCC1接备用电源,而VCC2接主电源。其实并没有接反。那么问题应该在哪呢?
还望指教

linbaoluo3 发表于 2014-5-4 12:11:06

你好,我现在也遇到这个问题,不知道你当时是怎么解决的?
页: [1]
查看完整版本: 用DS1302时遇见的问题