今天帮人家修理一个时钟,发现上面读取DS1302 数据,回来显示不正常。
于是换了一片新的,放上去好了。
本以为就这么简单,芯片坏了。
可是过了一会,发现DS1302暴热,手指头烫疼的一塌糊涂。
于是百度 GOOGLE 发现有几种说法。
经试验以下这两种方法OK。
方法一:
在VCC 和GND 之间串联个104电容。 我上一个上去,发现真的不烫手了。时间显示正常。
问题:DS1302发热的原因,由于电源的纹波引起振荡,导致DS1302发热,可以在芯片的电源接个104的电容进行滤波。
但是,发现安装上备用电池后 芯片还是一样热了起来。。原来是这样的。
方法二:
如果用的是普通不可充电的备用电池给DS1302掉电用的话,那么最好在8脚和电池正之间反向串一个1N4148二极管,没想到正常了。只是不能再对电池充电了,不过我的CR2032也不能充电。