⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 新型实时时钟芯片ds12887原理与应用.htm

📁 一个单片机+实时时钟芯片实现的万年历程序
💻 HTM
📖 第 1 页 / 共 3 页
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0033)http://www.56789.com/data/805.htm -->
<HTML><HEAD><TITLE>新型实时时钟芯片DS12887原理与应用</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2600.0" name=GENERATOR></HEAD>
<BODY>
<P> </P>
<P> </P>
<DIV align=center>
<CENTER>
<TABLE cellSpacing=0 cellPadding=2 width=750 border=0>
  <TBODY>
  <TR>
    <TD width=153></TD>
    <TD width=585></TD></TR>
  <TR>
    <TD width=153>
      <P align=center><FONT face=文鼎广告体 color=#008080 size=4><B><IMG height=60 
      hspace=5 src="新型实时时钟芯片DS12887原理与应用.files/56789xw.gif" width=91 vspace=5 
      border=0><BR>器件在线</B></FONT>
      <P align=center> </P></TD>
    <TD align=middle width=585>
      <P align=center><B><FONT lang=ZH-CN face=隶书 size=5><SPAN 
      style="BACKGROUND-COLOR: #ffff00">新型实时时钟芯片DS12887原理与应用</SPAN></FONT></B></P>
      <P align=center><FONT lang=ZH-CN face=楷体_GB2312 size=2>后勤工程学院&nbsp; 
      郭凌&nbsp; 姚大红</FONT></P></TD></TR>
  <TR align=middle>
    <TD width=738 colSpan=2><SPAN class=main1>
      <P class=MsoNormal> </P>
      <P class=MsoNormal align=left><FONT size=2><SPAN class=main1 
      style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><B>摘要:</B></SPAN></FONT></SPAN><SPAN 
      class=main1><FONT lang=ZH-CN face=楷体_GB2312 
      size=2>DS12887为DALLAS公司生产的实时时钟芯片,除具有实时钟功能外,它还具有114字节的通用RAM。内藏锂电池,并与广泛应用的DS1287、MC146818B脚对脚兼容。本文从应用角度出发,概述了其功能特点、外部特性、内部结构及与微机芯片的接口应用。</FONT></SPAN><SPAN 
      class=main1 
      style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><BR><B><FONT 
      size=2>关键词:</FONT></B></SPAN><FONT lang=ZH-CN face=楷体_GB2312 size=2>更新周期; 
      非易失RAM; 各总线兼容; 定闹中断; 周期性中断</FONT></P>
      <P>  </P></TD></TR>
  <TR align=middle>
    <TD style="LINE-HEIGHT: 150%" align=left width=744 colSpan=2>
      <P><FONT face=黑体 size=4><B>1. DS12887的功能特点</B></FONT>
      <P>&nbsp;&nbsp;&nbsp; <FONT face=宋体 
      size=2>DS12887是美国达拉斯半导体公司最新推出的时钟芯片,采用CMOS技术制成,把时钟芯片所需的晶振和外部锂电池相关电路集于芯片内部,同时它与目前IBM 
      AT计算机常用的时钟芯片MC146818B和DS1287管脚兼容,可直接替换。采用DS12887芯片设计的时钟电路勿需任何外围电路并具有良好的微机接口。DS12887芯片具有微轼耗、外围接口简单、精度高、工作稳定可靠等优点,可广泛用于各种需要较高精度的实时时钟场合中。其主要功能如下:<BR>&nbsp;&nbsp;&nbsp; 
      (1)内含一个锂电池,断电情况运行十年以上不丢失数据。</FONT><FONT face=宋体 
      size=2><BR>&nbsp;&nbsp;&nbsp; 
      (2)计秒、分、时、天、星期、日、月、年,并有闰年补偿功能。<BR>&nbsp;&nbsp;&nbsp; 
      (3)二进制数码或BCD码表示时间、日历和定闹。<BR>&nbsp;&nbsp;&nbsp; 
      (4)12小时或24小时制,12小时时钟模式带有PWM和AM指</FONT><FONT face=宋体 
      size=2>导,有夏令时功能。</FONT><B><FONT face=黑体 size=4><IMG height=225 
      src="新型实时时钟芯片DS12887原理与应用.files/970103t1.jpg" width=344 align=right 
      border=0></FONT></B><FONT face=宋体 size=2><BR>&nbsp;&nbsp;&nbsp; 
      (5)MOTOROLA5和INATAEL总线时序选择。<BR>&nbsp;&nbsp;&nbsp; 
      (6)有128个RAM单元与软件音响器,其中14个作为字节时钟和控制寄存器,114字节为通用RAM,所有ARAM单元数据都具有掉电保护功能。<BR>&nbsp;&nbsp;&nbsp; 
      (7)可编程方波信号输出。<BR>&nbsp;&nbsp;&nbsp; (8)中断信号输出(<SPAN 
      style="TEXT-DECORATION: overline">IRQ</SPAN>)和总线兼容,定闹中断、周期性中断、时钟更新周期结束中断可分别由软件屏蔽,也可分别进行测试。</FONT>
      <P><B><FONT face=黑体 size=4>2. DS12887的原理及管脚说明</FONT></B>
      <P><FONT face=宋体 size=2>&nbsp;&nbsp;&nbsp; 
      DS12887内部原理如图1所示,由振荡电路、分频电路、周期中断/方波选择电路、14字节时钟和控制单元、114字节用户非易失RAM、十进制/二进制计加器、总线接口电路、电源开关写保护单元和内部锂电池等部分组成。图2显示了DS12887管脚排列图。下面分别说明管脚功能:<IMG 
      height=183 src="新型实时时钟芯片DS12887原理与应用.files/970103t2.jpg" width=130 
      align=right border=0><BR>&nbsp;&nbsp;&nbsp; 
      GND,V<SUB>CC</SUB>:直流电源+5V电压。当5V电压在正常范围内时,数据可读写;当V<SUB>CC</SUB>低于4.25V,读写被禁止,计时功能仍继续;当V<SUB>CC</SUB>下降到3V以下时,RAM和计时器被切换到内部锂电池。<BR>&nbsp;&nbsp;&nbsp; 
      MOT(模式选择):MOT管脚接到V<SUB>CC</SUB>时,选择MOTOROLA时序,当接到GFND时,选择INTEL时序。<BR>&nbsp;&nbsp;&nbsp; 
      SQW(方波信号同):SQW管脚能从实时时钟内部15级分频器的13个抽头中选择一个作为输出信号,其输出频率可通过对寄存器A编程改变。<BR>&nbsp;&nbsp;&nbsp; 
      AD0~AD7(双向地址/数据复用线):总线接口,可与MOTOROLA微机系列和INTEL微机系列接口。<BR>&nbsp;&nbsp;&nbsp; 
      AS(地址选通输入):用于实现信号分离,在AD/ALE的下降沿把地址锁入DS12887。<BR>&nbsp;&nbsp;&nbsp; 
      DS(数据选通或读输入):DS/<SPAN 
      style="TEXT-DECORATION: overline">RD</SPAN>客脚有两种操作模式,取决于MOT管脚的电平,当使用MOTOROLA时序时,DS是一正脉冲,出现在总线周期的后段,称为数据选通;在读周期,DS指示DS12887驱动双向总的时刻,在写周期,DS的后沿使DS12887锁存写数据。选择INTEL时序时,DS称作(<SPAN 
      style="TEXT-DECORATION: overline">RD</SPAN>),<SPAN 
      style="TEXT-DECORATION: overline">RD</SPAN>与典型存贮器的允许信号(<SPAN 
      style="TEXT-DECORATION: overline">OE</SPAN>)的定义相同。<BR>&nbsp;&nbsp;&nbsp; 
      R/<SPAN style="TEXT-DECORATION: overline">W</SPAN>(读/写输入):R/<SPAN 
      style="TEXT-DECORATION: overline">W</SPAN>管脚也有两种操作模式。选MOTOROLA时序时,R/<SPAN 
      style="TEXT-DECORATION: overline">W</SPAN>是一电平信号,指示当前周期是读或写周期,DSO为高电平时,R/<SPAN 
      style="TEXT-DECORATION: overline">W</SPAN>高电平指示读周期,R/<SPAN 
      style="TEXT-DECORATION: overline">W</SPAN>低电平指示写周期;选INTEL时序,R/<SPAN 
      style="TEXT-DECORATION: overline">W</SPAN>信号是一低电平信号,称为WR。在此模式下,R/<SPAN 
      style="TEXT-DECORATION: overline">W</SPAN>管脚与通用RAM的写允许信号(<SPAN 
      style="TEXT-DECORATION: overline">WE</SPAN>)的含义相同。<BR>&nbsp;&nbsp;&nbsp; 
      <SPAN 
      style="TEXT-DECORATION: overline">CS</SPAN>(片选输入):在访问DS12887的总线周期内,片选信号必须保持为低。<BR>&nbsp;&nbsp;&nbsp; 
      <SPAN 
      style="TEXT-DECORATION: overline">IRQ</SPAN>(中断申请输入):低电平有效,可作微处理的中断输入。没有中断条件满足时,<SPAN 
      style="TEXT-DECORATION: overline">IRQ</SPAN>处于高阻态。<SPAN 
      style="TEXT-DECORATION: overline">IRQ</SPAN>线是漏极开路输入,要求外接上接电阻。</FONT><B><FONT 
      face=黑体 size=4><IMG height=132 
      src="新型实时时钟芯片DS12887原理与应用.files/970103t3.jpg" width=172 align=right 
      border=0></FONT></B><FONT face=宋体 size=2><BR>&nbsp;&nbsp;&nbsp; <SPAN 
      style="TEXT-DECORATION: overline">RESET</SPAN>(复位输出):当该脚保持低电平时间大于200ms,保证DS12887有效复位。</FONT>
      <P><B><FONT face=黑体 size=4>3. DS12887的内部功能</FONT></B>
      <P><FONT face=宋体 size=2><B>3.1 地址分配图</B><BR>&nbsp;&nbsp;&nbsp; 
      DS12887的地下分配图如图3所示,由114字节的用户RAM,10字节的存放实时时钟时间。日历和定闹RAM及用于控制和状态的4字节特殊寄存器组成,几乎所有的128个字节可直接读写。<BR><B>3.2 
      时间、日历和定闹单元</B><BR>&nbsp;&nbsp;&nbsp; 
      时间和日历信息通过读相应的内存字节来获取,时间、日历和定闹通过写相应的内存字节设置或初始化,其字节内容可以是十进制或BCD形式。时间可选择12小时制或24小时制,当选择12小时制时,小时字节搞位为逻辑“1”代表PM。时间、日历和定闹字节是双缓冲的,总是可访问的。每秒钟这10个字节走时1秒,检查一次定闹条件,如在更新时,读时间和日历可能引起错误。三个字节的定闹字节有两种使用方法。第一种,当定闹时间写入相应时、分、秒定闹单元,在定允许闹位置高的条件下,定闹中断每天准时起动一次。第二种,在三个定闹字节中插入一个或多个不关心码。不关心码是任意从C到FF的16进制数。当小时字节的不关心码位置位时,定闹为小时发生一次由于相线小时和分钟定闹字节置不关心位时,每分钟定闹一次</FONT>;<FONT 
      face=宋体 size=2>当三个字节都置不关心位时,每秒中断一次。<BR><B>3.3 
      非易失RAM</B><BR>&nbsp;&nbsp;&nbsp; 
      在DS12887中,114字节通用非易失RAM不专用于任何特殊功能,它们可被处理器程序用作非易失内存,。在更新周期也可访问。<BR><B>3.4 
      中断</B><BR>&nbsp;&nbsp;&nbsp; 
      RTC实时时钟加RAM向处理器提供三个独立的、自动的中断源。定闹中断的发生率可编程,从每秒一次到每天一次,周期性中断的发生率可从500ms到122&micro;s选择。更新结束中断用于向程序指示一个更新周期完成。中断控制和状态位在寄存器B和C中,本文的其它部分将详细描述每个中断发生条件。<BR><B>3.5 
      晶振控制位</B><BR>&nbsp;&nbsp;&nbsp; 
      DS12887出厂时,其内部晶振被关掉,以防止锂电池在芯片装入系统前被消耗。寄存器A的BIT4~BIT6为010时打开晶振,分频链复位,BIT4~BIT6的其它组合都是使晶振关闭。<IMG 
      height=262 src="新型实时时钟芯片DS12887原理与应用.files/970103b1.jpg" width=403 
      align=right border=0><BR><B>3.6 方波输出选择</B><BR>&nbsp;&nbsp;&nbsp; 
      如图1原理图所示,15级分步抽着中的13个可用于15选1选择器,选择分频器抽头的目的是在SQW管脚产生一个方波信号,其频率由寄存器A的RS0~RS3位设置。SQW频率选择与周期中断发生器共离15选1选择器,一旦频率选择好,通过用程序控制方波输出允许位SWQE来控制SQW管脚输出的开关。<BR><B>3.7 
      周期中断选择</B><BR>&nbsp;&nbsp;&nbsp; 周期中断可在<SPAN 
      style="TEXT-DECORATION: overline">IRQ</SPAN>脚产生500ms一次到每122&micro;s一次的中断,中断频率同样由寄存A确定,它的控制位为寄存器B中的PIE位。<BR><B>3.8 
      更新周期</B><BR>&nbsp;&nbsp;&nbsp; 
      DS12887每秒执行一次更新周期还比较每一定闹字节与相应的时间字节,如果匹配枵三个字节都是不关心码,则产生一次定闹中断。</FONT>
      <P><B><FONT face=黑体 size=4>4. DS12887状态控制寄存器</FONT></B>
      <P><FONT face=宋体 size=2>&nbsp;&nbsp;&nbsp; 
      DS12887有4个控制寄存器,它们在任何时间都可访问,即使更新周期也不例外。<BR></FONT><FONT face=宋体 
      size=2><B>4.1 寄存器A</B></FONT> 
      <TABLE cellSpacing=1 borderColorDark=#ffffff width=450 
      borderColorLight=#ffffff border=1>
        <TBODY>
        <TR>
          <TD borderColor=#ffffff borderColorLight=#000000 align=middle 
          borderColorDark=#000000><FONT face=楷体_GB2312 size=1>BIT</FONT><FONT 
            face=楷体_GB2312 size=1>7</FONT></TD>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -