November 22, 2013 分类: SCM     作者: hoverlees     留言: 发表

第一次使用时间芯片,选的DS1302,原因是在一个电脑主板上看到的,纽扣电池和圆柱晶振(32768)连接的芯片就是这个,估计它就是时间芯片了,网上一搜,果然是它,就决定用它了。32K的晶振在以前的电子表上也很常用,所以很容易想到它连接的芯片可能是时间芯片。

驱动编写也挺顺利,毕竟总线通信时序简单。只是在调试时遇到CPU经常拿到的秒数为85的情况,通过延长CLK切换时间可以有点效果,但效果都不明显,最后觉得可能是IO总线变化太慢导致,从而给IO总线加了一个10K的上拉电阻,果然效果很好,立马解决了时间读到85的问题。

另外值得一提的是DS1302手册中提到秒的字节最高位为芯片工作开关,当最高位为1时,芯片不工作,最高位为0时,芯片开始计时。一开始通电时,读到的秒数最高为1,这时需要将最高位设置到0,DS1302就会开始计时了。

DS1302可以用纽扣电池,保证在断电时仍然计时。

我来留个言

您的电子邮箱我一定会保密的哦!

昵称

邮箱

评论内容