您好,欢迎访问三七文档
时钟芯片DS1302及其应用内容提要•DS1302简介•DS1302引脚•DS1302功能•DS1302存储器•DS1302时序图•DS1302初始化•DS1302示例DS1302简介�时钟计数功能,可以对秒、分钟、小时、月、星期、年的计数。年计数可达到2100年。�有31*8位的额外数据暂存寄存器�最少I/O引脚传输,通过三引脚控制�工作电压:2.0-5.5V�工作电流小于320纳安(2.0V)�读写时钟寄存器或内部RAM(31*8位的额外数据暂存寄存)可以采用单字节模式和突发模式�8-pinDIP封装或8-pinSOICs�兼容TTL(5.0V)�可选的工业级别,工作温度-40–85摄氏度DS1302简介�兼容DS1202,较DS1202增加的功能:1.可通过Vcc1进行涓流充电2.双重电源补给3.备用电源可采用电池或者超级电容(0.1F以上),可以用老式电脑主板上的3.6V充电电池。如果断电时间较短(几小时或几天)时,就可以用漏电较小的普通电解电容器代替。100μF就可以保证1小时的正常走时。DS1302在第一次加电后,必须进行初始化操作。初始化后就可以按正常方法调整时间。DS1302引脚DS1302引脚•晶体振荡器的选择:一个32.768KHz的晶振可以直接接在DS1302的2、3管脚之间,可以设定规定载荷电容位6pf。•电源控制:Vcc1可提供单电源控制也可以用来作为备用电源,Vcc2为主电源。在主电源关闭的情况下,也可以保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。当Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电;当Vcc2小与Vcc1时,DS1302由Vcc1供电。DS1302功能•DS1302包括时钟/日历寄存器和31字节(8位)的数据暂存寄存器,数据通信仅通过一条串行输入输出口。实时时钟/日历提供包括秒、分、时、日期、月份、年份和星期几的信息。闰年可自行调整,可选择12小时制和24小时制,可以设置AM、PM。•只通过三根线(SPI总线)进行数据的控制和传递:RST、I/O、SCLKSPI总线•(serialperipheralinterface)串行外围设备接口SPI总线技术是Motorola公司推出的一种同步串行接口。SPI用于CPU与各种外围器件进行全双工、同步串行通讯。它只需四条线就可以完成MCU与各种外围器件的通讯,这四条线是:串行时钟线(CSK)、主机输入/从机输出数据线(MISO)、主机输出/从机输入数据线(MOSI)、低电平有效从机选择线CS。内部存储空间•DS1302的所有功能都是通过对其内部地址进行操作实现的。其内部存储空间分为2部分:80H~91H为功能控制单元,C0H~FDH为普通存储单元;所有单元地址中最低位为0表示将对其进行写数据操作,最低位为1表示将对其进行读数据操作。•普通存储单元是提供给用户的存储空间,而特殊存储单元存放DS1302的时间相关的数据,用户不能用来存放自己的数据。内部存储空间寄存器名命令字节范围位内容读写D7D6D5D4D3D2D1D0秒81H80H00~59CH秒的十位秒的个位分83H82H00~590分的十位分的个位时85H84H01~12或00~2312/240A/PHR小时个位日87H86H01~3100日的十位日的个位月89H88H01~120000/1月的个位星期8BH8AH01~0700000星期几年8DH8CH00~99年的十位年的个位注意:1、秒寄存器的CH位:置1,时钟停振,进入低功耗态;置0,时钟工作。2、小时寄存器的D7位:置1,12小时制(D5置1表示上午,置0表示下午);置0,24小时制(此时D5、D4组成小时的十位)。寄存器名命令字节范围位内容读写D7D6D5D4D3D2D1D0写保护8FH8EH00H~80HWP0涓流充电91H90H-TCSDSRS时钟突发BFHBEH--RAM突发FFHFEH--RAM0C1HC0H00H~FFHRAM数据………00H~FFHRAM30FDHFCH00H~FFH注意:1、WP:写保护位:置为1时,写保护;置为0时,未写保护。2、TCS:1010时慢充电;DS为01,选一个二极管,为10,选2个二极管;11或00,禁止充电。3、RS:与二极管串联电阻选择。00,不充电;01,2KΩ电阻;10,4KΩ电阻;11,8KΩ电阻。内部存储空间寄存器名命令字节范围位内容读写D7D6D5D4D3D2D1D0涓流充电91H90H-TCSDSRS注意:1、TCS:1010时慢充电;其他时禁止充电。2、DS为01,选一个二极管;为10,选2个二极管;11或00,禁止充电。3、RS:与二极管串联电阻选择。00,不充电;01,2KΩ电阻;10,4KΩ电阻;11,8KΩ电阻。特殊存储空间•在突发模式下,通过连续的脉冲一次性读写完8个字节的时钟/日历寄存器(8个寄存器要全部读写完:时、分、秒、日、月、年、星期、写保护寄存器,充电寄存器在突发模式下不能操作)普通存储空间•在突发模式下,通过连续的脉冲一次性读写完1-31个字节的RAM数据(可按实际情况读写一定数量的字节,可以不必一次全部读写完)存储空间单字节读操作片选端CE必须为高电平,才能对芯片进行操作单字节写操作•CE必须在高电平时,才能对DS1302读/写操作•低位在前,高位在后,一个SCLK周期传递一位•上升沿输入,下降沿输出•先写地址(RW=0,允许写数据的单元地址),然后写数据•先写地址(RW=1,允许读数据的单元地址),然后读数据DS1302时序图101010101010RSTSCLKI/ORSTSCLKI/OD0D1D2D3D4D5D6D7R/WA0A1A2A3A4R/C1R/WA0A1A2A3A4R/C1D0D1D2D3D4D5D6D7单字节读操作单字节写操作地址命令数据输入地址命令数据输出010/10/112345678910111213141516123456789101112131415R/W:1——可以读;0——可以写R/C:1——普通存储器;0——特殊寄存器地址(命令)字节格式R/W:1——可以读;0——可以写R/C:1——普通存储器;0——特殊寄存器不管是单字节的读写还是突发模式的读写,首先传递的是地址(命令)字节,然后才是数据字节,每个时钟周期上升或下降沿发送1位,低位在前,高位在后。R/W:1——可以读;0——可以写R/C:1——普通存储器;0——特殊寄存器R/W:1——可以读;0——可以写R/C:1——普通存储器;0——特殊寄存器R/W:1——可以读;0——可以写R/C:1——普通存储器;0——特殊寄存器DS1302初始化一般程序设计流程:1、注意对DS1302的读写操作必须在RST为1时才允许操作;2、确认对DS1302是读操作还是写操作:写操作时必须关闭写保护寄存器的写保护位(0x00);读操作时跟此寄存器无关;3、确认是否需要对备用电池充电操作;4、确定采用单字节操作还是突发模式操作;(SPI串口通信:RST、SCLK、I/O)单字节读写操作:写操作:先写地址(RW=0,允许写数据的单元地址),然后写数据读操作:先写地址(RW=1,允许读数据的单元地址),然后读数据突发模式读写操作:时间/日历特殊寄存器必须一次读写8个寄存器RAM普通寄存器可一次读写1—31个寄存器写操作:先写地址(0xBE(特殊)/0xFE(普通)),然后写多个数据(8个(特殊)/1—31(普通))读操作:先写地址(0xBF(特殊)/0xFF(普通)),然后读多个数据(8个(特殊)/1—31(普通))5、读写操作完毕(写操作完成后必须打开写保护寄存器的写保护位(0x80))。DS1302示例•所有的数据传输必须在RST为高电平时进行(如果在传输过程中RST置低电平,则会终止此次数据传送,IO引脚变为高阻态)•上电运行时,RST必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。•写操作前,关闭写保护;写操作完成后,要打开写保护•DS1302的仿真模型在MicroprocessorICs里面•充电电池BATTERY在Miscellaneous里面,但是没有仿真模型DS1302示例•在每个SCLK上升沿时数据被输入,下降沿时数据被输出,一次只能读写一位;通过8个脉冲便可读取一个字节从而实现串行输入输出12348765VCC2X1X2GNDVCC1SCLKI/ORSTDS130289S51P1.1I/ODS1302SCLKP1.0P1.2RSTVCC1VCC2X1X2GND+5V+3.6VNi-Cd电池注意:1、WP:写保护位:置为1时,写保护;置为0时,未写保护。2、TCS:1010时慢充电;DS为01,选一个二极管,为10,选2个二极管;11或00,禁止充电。3、RS:与二极管串联电阻选择。00,不充电;01,2KΩ电阻;10,4KΩ电阻;11,8KΩ电阻。
本文标题:DS1302-课件
链接地址:https://www.777doc.com/doc-4231737 .html