原创 转帖 ds1302 资料

2007-12-7 10:28 3536 9 9 分类: MCU/ 嵌入式

 


              下来准备学习意思ds1302的应用,现贴点资料过来,希望下周不要在出差了,呵呵


 


1 DS1302 简介:


DS1302是美国DALLAS公司推出的一种高性能、低功耗的实时时钟芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据。实时时钟可提供秒、分、时、日、星期、月和年,一个月小与31天时可以自动调整,且具有闰年补偿功能。工作电压宽达2.5~5.5V。采用双电源供电(主电源和备用电源),可设置备用电源充电方式,提供了对后背电源进行涓细电流充电的能力。DS1302的外部引脚分配如1所示及内部结构如2所示DS1302用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录,因此广泛应用于测量系统中。


ea28607f72238aaf367ee7dcc65953cd.JPG


1   DS1302的外部引脚分配


 


cccbca9d2e660a1ef385119e725899ef.JPG


2   DS1302的内部结构


      


各引脚的功能为:


       Vcc1:主电源;Vcc2:备份电源。当Vcc2>Vcc1+0.2V时,由Vcc2DS1302供电,当Vcc2< Vcc1时,由Vcc1DS1302供电。


       SCLK:串行时钟,输入; 


       I/O:三线接口时的双向数据线;


       CE:输入信号,在读、写数据期间,必须为高。该引脚有两个功能:第一,CE开始控制字访问移位寄存器的控制逻辑;其次,CE提供结束单字节或多字节数据传输的方法。


    DS1302有下列几组寄存器:


① DS1302有关日历、时间的寄存器共有12个,其中有7个寄存器(读时81h~8Dh,写时80h~8Ch),存放的数据格式为BCD码形式,如3所示。


 


a5bd945c0a1d64b17d48759f422c31b7.JPG


图 3   DS1302有关日历、时间的寄存器


   小时寄存器(85h、84h)的位7用于定义DS1302是运行于12小时模式还是24小时模式。当为高时,选择12小时模式。在12小时模式时,位5是 ,当为1时,表示PM。在24小时模式时,位5是第二个10小时位。


    秒寄存器(81h、80h)的位7定义为时钟暂停标志(CH)。当该位置为1时,时钟振荡器停止,DS1302处于低功耗状态;当该位置为0时,时钟开始运行。


控制寄存器(8Fh、8Eh)的位7是写保护位(WP),其它7位均置为0。在任何的对时钟和RAM的写操作之前,WP位必须为0。当WP位为1时,写保护位防止对任一寄存器的写操作。


   DS1302有关RAM的地址


    DS1302中附加31字节静态RAM的地址如图4所示。


 


a1cabdb17aa0678ac36657f55e1bc8e0.JPG


图4


③ DS1302的工作模式寄存器


所谓突发模式是指一次传送多个字节的时钟信号和RAM数据。突发模式寄存器如图5所示。


ee16fe3f5d4727910c139c9cd910d935.JPG


图5


④此外,DS1302还有充电寄存器等。


 


2 读写时序说明


DS1302SPI总线驱动方式。它不仅要向寄存器写入控制字,还需要读取相应寄存器的数据。


       要想与DS1302通信,首先要先了解DS1302的控制字。DS1302的控制字如图6。


a1894e6a512c994142c689a291949e7b.JPG


图6   控制字(即地址及命令字节)


 


控制字的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入到DS1302中。


6:如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;


5至位1A4A0):指示操作单元的地址;


0(最低有效位):如为0,表示要进行写操作,为1表示进行读操作。


控制字总是从最低位开始输出。在控制字指令输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入从最低位(0位)开始。同样,在紧跟8位的控制字指令后的下一个SCLK脉冲的下降沿,读出DS1302的数据,读出的数据也是从最低位到最高位。数据读写时序如图7


96c11d5d90130152bcdbcc69351fb360.JPG


7   数据读写时序


 


   具体操作见驱动程序。


 


3 电路原理图:


电路原理图如图8DS1302与单片机的连接也仅需要3条线:CE引脚、SCLK串行时钟引脚、I/O串行数据引脚,Vcc2为备用电源,外接32.768kHz晶振,为芯片提供计时脉冲。


 


67662d62167a77afa1ee818bdb98f2c9.JPG

文章评论0条评论)

登录后参与讨论
我要评论
0
9
关闭 站长推荐上一条 /2 下一条