程序中 先读取ds1302时钟芯片时间数据及标志,如果时钟芯片在运行 则跳过对ds1302时钟芯片的初始化,就可以了。
DS1302芯片内一般都会有空闲的RAM,随便分配两个字节作为上电标志。第1次上电初始化时,为这两个RAM字节写入一个相同数值,比如0x55,之后每次上电时先读取这两个RAM字节,并对这两个字节数据逻辑与后进行判断,如果结果还是0x55,就可以直接读取时间数据,否则对时间进行初始化。我就是这样做的,效果很好。你不妨试试,应该能解决问题的。
可能你每次都设置初始化了