这是我接触到的第一个时钟芯片,编写这个时间模块程序,可是费了不少周折,这里will666博客里面有芯片资料http://blog.ednchina.com/will666/49952/message.aspx
使用的时候,S7偏上的两个脚要连起来,S8也是。这个不难,看wangjin博客上面有电路图,不过WILL66上面S7、S8那个接口图把ps2和时钟标反了。
如果你的还是不能正常显示,显示什么85呀,??呀,o(∩_∩)o...,那就在时钟芯片的IO脚与VCC之间接个上拉电阻吧。1K或者4.7K的都行(我自己是接的一个滑动变阻器)http://group.ednchina.com/329/3374.aspx
调试程序就不帖了,在小组里面找找哦。
还有那个备用电源VCC1可以不接,只是每次开机了上次的时间不会保持,如果要接的话,从资料上面看,要接那种可以充电的电池,因为资料上面说平时VCC2对VCC1充电,当VCC2电压比较低了就用VCC1的电源,就是类似于电脑主板上面的那个电池一样的。
下面是引用一个网友的资料,就是外接电源后,为什么时间还是没有保持的问题,o(∩_∩)o...,因为你每次开机都把时钟芯片初始化了呀。
关于DS1302的初始化也是有技巧的,这是一个可以带备用电池的芯片,放上电池,即使把电源关了,它的时间还是在走的,呵呵,和电脑一样呀!这样的话,如果它的备用电池不断电,就不用再对它初始化啦,也就是说一辈子不断电,这一辈子它只要初始化一次就行了,但是单片机如果断电再通电,程序又会从头开始执行,又会执行它的初始化程序,我开始以为只要不破坏它的时钟数据就行,单片机开机时先读一次时钟数据,然后把控制字叠加进去,再写回去就好了,可试验了好几次都不行,每次都是小时的数据不对了。于是在DS1302暂存RAM中设立一个标志位,只要备用电池不断电,标志就不会消失,每次通电开机时,单片机检测到这个标志就不再对其初始化,呵呵,一切正常。
用户1364249 2008-4-24 10:21