您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 酒店餐饮 > DS1302时钟芯片中文资料
1DS1302涓流充电时钟保持芯片的原理与应用摘要本文概括介绍了DS1302时钟芯片的特点和基本组成通过实例详细说明了有关功能的应用软件关于DS1302各寄存器的详细位控功能请参考DALLAS达拉斯公司的相应产品资料概述DS1302是DALLAS公司推出的涓流充电时钟芯片内含有一个实时时钟/日历和31字节静态RAM通过简单的串行接口与单片机进行通信实时时钟/日历电路提供秒分时日日期月年的信息每月的天数和闰年的天数可自动调整时钟操作可通过AM/PM指示决定采用24或12小时格式DS1302与单片机之间能简单地采用同步串行的方式进行通信仅需用到三个口线1RES复位2I/O数据线3SCLK串行时钟时钟/RAM的读/写数据以一个字节或多达31个字节的字符组方式通信DS1302工作时功耗很低保持数据和时钟信息时功率小于1mWDS1302是由DS1202改进而来增加了以下的特性双电源管脚用于主电源和备份电源供应Vcc1为可编程涓流充电电源附加七个字节存储器它广泛应用于电话传真便携式仪器以及电池供电的仪器仪表等产品领域下面将主要的性能指标作一综合z实时时钟具有能计算2100年之前的秒分时日日期星期月年的能力还有闰年调整的能力z318位暂存数据存储RAMz串行I/O口方式使得管脚数量最少z宽范围工作电压2.05.5Vz工作电流2.0V时,小于300nAz读/写时钟或RAM数据时有两种传送方式单字节传送和多字节传送字符组方式z8脚DIP封装或可选的8脚SOIC封装根据表面装配z简单3线接口z与TTL兼容Vcc=5Vz可选工业级温度范围-40+85z与DS1202兼容z在DS1202基础上增加的特性对Vcc1有可选的涓流充电能力双电源管用于主电源和备份电源供应备份电源管脚可由电池或大容量电容输入附加的7字节暂存存储器1DS1302的基本组成和工作原理DS1302的管脚排列及描述如下图及表所示2管脚描述管脚描述管脚描述管脚描述X1X232.768KHz晶振管脚GND地RST复位脚I/O数据输入/输出引脚SCLK串行时钟Vcc1,Vcc2电源供电管脚订单信息订单信息订单信息订单信息部分#描述DS1302串行时钟芯片8脚DIPDS1302S串行时钟芯片8脚SOIC200milDS1302Z串行时钟芯片8脚SOIC150mil2.DS1302内部寄存器CH:时钟停止位寄存器2的第7位12/24小时标志CH=0振荡器工作允许bit7=1,12小时模式CH=1振荡器停止bit7=0,24小时模式WP:写保护位寄存器2的第5位:AM/PM定义WP=0寄存器数据能够写入AP=1下午模式WP=1寄存器数据不能写入AP=0上午模式TCS:涓流充电选择DS:二极管选择位TCS=1010使能涓流充电DS=01选择一个二极管TCS=其它禁止涓流充电DS=10选择两个二极管DS=00或11,即使TCS=1010,充电功能也被禁止RS位电阻典型位00没有没有01R12K10R24K11R38K管脚配置管脚配置管脚配置管脚配置3DS1302与微控制器的接口软件及功能应用举例下面首先给出基本的接口软件然后举例说明各种功能的应用1写保护寄存器操作当写保护寄存器的最高位为0时允许数据写入寄存器写保护寄存器可以通过命令字节8E8F来规定禁止写入/读出写保护位不能在多字节传送模式下写入Write_Enable:MOVCommand,#8Eh;命令字节为8EMOVByteCnt,#1;单字节传送模式MOVR0,#XmtDat数据地址覆给R0MOVXmtDat,#00h数据内容为0写入允许4ACALLSend_Byte调用写入数据子程序RET返回调用本子程序处当写保护寄存器的最高位为1时禁止数据写入寄存器Write_Disable:MOVCommand,#8Eh;命令字节为8EMOVByteCnt,#1;单字节传送模式MOVR0,#XmtDat数据地址覆给R0MOVXmtDat,#80h数据内容为80h禁止写入ACALLSend_Byte调用写入数据子程序RET返回调用本子程序处以上程序调用了基本数据发送(Send_Byte)模块及一些内存单元定义,其源程序清单在附录中给出下面的程序亦使用了这个模块2时钟停止位操作当把秒寄存器的第7位时钟停止位设置为0时起动时钟开始Osc_Enable:MOVCommand,#80h;命令字节为80MOVByteCnt,#1;单字节传送模式MOVR0,#XmtDat数据地址覆给R0MOVXmtDat,#00h数据内容为0振荡器工作允许ACALLSend_Byte调用写入数据子程序RET返回调用本子程序处当把秒寄存器的第7位时钟停止位设置为1时时钟振荡器停止HT1380进入低功耗方式Osc_Disable:MOVCommand,#80h;命令字节为80MOVByteCnt,#1;单字节传送模式MOVR0,#XmtDat数据地址覆给R0MOVXmtDat,#80h数据内容为80h振荡器停止ACALLSend_Byte调用写入数据子程序RET返回调用本子程序处3.多字节传送方式当命令字节为BE或BF时DS1302工作在多字节传送模式8个时钟/日历寄存器从寄存器0地址开始连续读写从0位开始的数据当命令字节为FE或FF时DS1302工作在多字节RAM传送模式31个RAM寄存器从0地址开始连续读写从0位开始的数据例如写入00年6月21日星期三13时59分59秒程序设置如下Write_Multiplebyte:MOVCommand,#0BEh;命令字节为BEhMOVByteCnt,#8;多字节写入模式此模块为8个MOVR0,#XmtDat数据地址覆给R0MOVXmtDat,#59h秒单元内容为59h5MOVXmtDat+1,#59h分单元内容为59hMOVXmtDat+2,#13h时单元内容为13hMOVXmtDat+3,#21h日期单元内容为21hMOVXmtDat+4,#06h月单元内容为06hMOVXmtDat+5,#03h星期单元内容为03hMOVXmtDat+6,#0年单元内容为00hMOVXmtDat+7,#0写保护单元内容为00hACALLSend_Byte调用写入数据子程序RET返回调用本子程序处读出寄存器0-7的内容程序设置如下Read_Multiplebyte:MOVCommand,#0BFh;命令字节为BFhMOVByteCnt,#8;多字节读出模式此模块为8个MOVR1,#RcvDat数据地址覆给R1ACALLReceive_Byte调用读出数据子程序RET返回调用本子程序处以上程序调用了基本数据接收(Receive_Byte)模块及一些内存单元定义,其源程序清单在附录中给出下面的程序亦使用了这个模块4.单字节传送方式例如写入8时12小时模式程序设置如下Write_Singlebyte:MOVCommand,#84h;命令字节为84hMOVByteCnt,#1;单字节传送模式MOVR0,#XmtDat数据地址覆给R0MOVXmtDat,#88h数据内容为88hACALLSend_Byte调用写入数据子程序RET返回调用本子程序处上面所列出的程序模块Write_EnableWrite_DisableOsc_EnableOsc_Disable与单字节写入模块Write_Singlebyte的程序架构完全相同仅只是几个入口参数不同本文是为了强调功能使用的不同才将其分为不同模块另外,与涓流充电相关的设定也是单字节操作方式,这里就不再单独列出,用户在使用中可灵活简略
本文标题:DS1302时钟芯片中文资料
链接地址:https://www.777doc.com/doc-5265657 .html