15岁7年**一天一次或两次现在戒掉可以恢复么 恢复得多少时间

我想你~怎么办 我想你~怎么办
回答
  • 曲楠 曲楠

    在智能化仪器仪表中,往往需要走时准确的实时时钟为
    多通道数据采集、定时及实时控制提供精确的时间基准和同
    步信号。目前,实现实时时钟的方法主要有软件时钟(由软
    件计时实现)、硬件时钟(由硬件时钟芯片实现)、gps时钟
    (由全球**系统提供)等。软件时钟具有硬件开销小、
    成本低、外围电路简单等优点。但由于时钟是靠软件延时实
    现的,运行过程中不仅要占用大量的cpu时间,而且计时精
    度低、走时误差较大,在智能化仪器仪表中很少采用。gps
    (全球**系统)提供的实时时钟信号虽然具有相当高
    的精度,但由于gps产品成本高,在普通智能化仪器仪表中
    很少采用。本文介绍一种较新的实时时钟芯片ds12c887及
    其与at89c51单片机的软硬件接口。1 ds12c887的特点及引脚描述
    ds12c887是由美国达拉斯半导体公司推出的cmos并
    行实时时钟芯片,它与目前微型计算机主机板中普遍采用的
    mc146818、ds12887时钟芯片引脚完全兼容,可以直接替
    换。ds12c887将时钟电路、晶振及其外围电路、锂电池及其
    相关电路等嵌装成一体,并具有与微处理器的并行接口,可
    方便地用于对时钟精度要求较高的智能化仪器仪表中。ds12c887的主要功能特点有:
    (1)内含锂电池。当外电源电压降到3 v以下时,时钟
    自动将电源切换到由芯片内部锂电池供电,在外电源断电的
    收稿日期:2002—05~20
    作者简介:宋雨潭(1972一),女,吉林长春人,工程师。情况下,时钟可以连续运行10 a而不丢失数据。(2)具有秒、分、时、日、月、年、世纪、星期计时及闰年自
    动校正功能。(3)可根据用户需要选择24/12 h运行方式和夏令时运
    行方式。(4)由硬件选择motorola和intel总线时序,便
    于和不同的微处理器相连接。(5)内含128字节掉电保持ram单元,其中10字节用
    于存储时钟日历和报警信息,4字节用于状态控制寄存器,其
    余i14字节供用户存储需要掉电保持的信息和数据。(6)有3个可编程中断源,可与各种微处理器中断系统
    相连接。(7)有一个可编程方波信号输出引脚,根据用户需要输
    出不同频率的方波信号。ds12c887引脚排列见图1,ds12c887各引脚功能见表
    1。表1 ds1287引脚功能描述
    管脚号 标识符 主要功能
    motorola与i l总线时序选择
    1 mot mot=1:m i、[)r01 a总线时序
    mot=0:intel总线时序
    2、3、16
    nc 保留(空闲)
    2u 一22
    4—11 aeo—ad7 双向地址/数据复用总线
    2 1381212887状态控制寄存器
    1381212887内部存储器组织见图2。下面着重介绍影响
    ds12c887功能和工作状态的状态控制寄存器a—d。vcc
    sqw
    nc
    nc
    nc
    tii
    reset
    ds
    nc
    r/w
    as
    cs
    地址 内容
    ooh 秒
    01h 秒报警
    02h 分
    03h 分报警
    04h 时
    05h 时报警
    06h 星期
    07h 日
    o8h 月
    09h 往
    0ah 寄存器a
    0bh 寄存器b
    0ch 寄存器c
    0dh 寄存器d
    0eh 用户数据区
    i i
    7fh 用户数据区
    图1 ds12(2887引脚排列
    (1)状态控制寄存器a(地址xxoah)
    bit7 bit6 bit5 bit4 bit3 bit2 bitl bito
    uip dv2 dvl dv0 rs3 rs2 rsl rso
    uip:数据更新标志位。uip=1,数据更新转换将很快
    发生。uip:0,数据更新转换将在244 以后发生。dv0一dv2:内部晶振控制位。为防止ds12c887内部
    锂电池在装入系统前被消耗,用户可以通过软件设置dv0一
    dv2将内部晶振关闭。只有当dv0=0,dv1=i,dv2:0
    时才打开内部晶振允许计时。rs3一rs0:sqw 方波输出和周期中断频率选择控制
    位。不同的组合用于选择不同的输出方波频率和中断周期。具体组合见表2。表2 周期性中断周期和方波频率选择表
    状态控制寄存器a不受复位信号的影响,除uip位以
    外,其它各位均可进行读写操作。(2)状态控制寄存器b(地址)()(0bh)
    状态控制寄存器b用于控制ds12c887的工作状态。每一位均可进行读写操作。bit7 bit6 bit5 bit4 bit3 bit2 bitl kto
    set pie aie uie wqwe d/m 24[12 溉
    set:更新控制位。set:0,芯片每秒走时一次。set:1,
    禁止时间更新。当对芯片时间和日期进行设置时,应由软件
    将set位置1,设置完毕时再将其清零。pie、aie、uie:周期中断、报警中断、更新结束中断允
    许位。当某一位或几位为1时,允许芯片由irq引脚发出中
    断申请信号。sqwe:可编程方波输出允许位。当该位置1时,sqw
    引脚按状态控制寄存器a中选定的频率输出方波信号。dm:二进制/bcd数据格式选择位。dm=1,数据以二
    进制格式存储;dm=0,数据以bcd格式存储。24/12:24/12 h模式选择位。该位置1选择24 h计时方
    式,该位清零选择12 h计时方式。dse:夏时制选择位。dse=1。夏时制自动调整;dse=
    0,不使用夏时制。(3)状态控制寄存器c(地址xxoch)
    状态控制寄存器c的各位用于指示芯片的工作状态。bit7 bit6 bit5 bit4 bit3 bit2 bitl bito
    irqp pf vf 0 0 0 0
    维普资讯 http://www.cqvip.com
    第3期 宋雨潭.ds12c887及其在智能化仪器仪表中的应用
    irqf:中断申请标志位。当该位为1时,irq输出低电平,
    向cpu发中断申请信号。使irqf=1的逻辑表达式为:
    irqf=pf*pie 十af*aie 十uf*uie。pf、af、uf:周期中断、报警中断、更新周期结束中断标
    志位。当某一中断条件满足时相应标志位被置1。bit0一bit3:保留标志位。这些位读出值始终为0,并且
    不允许用户写入。(4)状态控制寄存器d(地址xxodh)
    d寄存器只有vrt位可用,该位用于指示芯片内锂电
    池的工作状态。正常时vrt=1,锂电池耗尽时vrt=0,此
    时读出的数据无效。该寄存器的其它各位均为厂家保留位,
    读出值始终为零,不允许用户向这些位写入数据。bit7 bit6 bit5 bit4 bit3 bit2 bitl bito
    vrt 0 0 0 0 0 0 0
    3 13812(2887与a 9c51单片机的接口
    at89c51是美国atmel公司生产的具有mcs51内核
    的8位单片机产品。该单片机具有时钟频率高(最24
    mhz)、运行速度快、内含4kb eeprom、p0口驱动能力强
    (最大20ma)等特点,在智能化仪器仪表中得到了广泛的应
    用。在某智能化仪器中13812(2887与at89c51的接口电路
    部分如图3所示。5 v
    i k
    502
    图3 ds12c887与a1 9c5l接el电路
    由硬件连接图可知13812(2887内部存储器起始地址为
    7f00h,时间、日历及报警信息分别存储在7f00h一7f09h
    单元中,状态控制寄存器a—d 的地址分别为:7foah、
    7fobh、7f0ch、7f0dh。4 13812(2887编程
    由at89c51和13812(2887构成的时问获取电路的初始
    89
    化程序如下:
    xbyte[0x7f00十0x0b]=0x82;xbyte[0x7f00十0xoa]=0xa0;xbyte[0x7f00十0x0a]=0x20;xbyte[0x7f00十0x0b]=0x02;所有的中断禁止,24 h制,bcd码格式*/
    以下为获取时间程序
    unsigned char data time-c~tuw,time-year,time—month,
    time-date,time-week;unsigned char data time-hour,time-minute,time-second;if((xbyte[0x7f00十0x0a]&0x80)!0)
    {time-century=xbyte[0x7f00+0x32];读取世纪
    t’ime-year=xbyte[0x7f00十0x90];读取年份*/
    time-month=
    xbyi'e[0x7f00+0x08];读取月份*/
    time-date=xbyte[0x7f00+0x07];读取日期*/
    time-week=xbyte[0x7f00+0x06];读取星期*/
    time-hour=xbyte[0x7f00+0x04];读取小时*/
    time-m;nute=xbyte[0x7f00+0x02];读取分钟*/
    time-second=xbyte[0x7f00+0x00];读取秒钟*/
    }
    5 i]sl2c887应用注意事项
    (1)ds12c887具有报警中断功能。当报警中断时间写
    入相应的时、分、秒报警单元时,报警中断每天准时发生一
    次。当在三个报警单元中插入一个或多个不关心码(()0h—
    ffh十六进制数)时,可以设定较短的报警周期。例如:在时
    报警单元中插入不关心码,则报警每小时发生一次;在时、分
    报警单元中均插入不关心码,则报警每分钟发生一次;若在3
    个报警单元中均插人不关心码,报警1 s将发生一次。(2)当采用查、报警中断和周期中断方法读取时钟日
    历信息时,需要由软件查询状态控制寄存器a的uip位,当
    uip=0时,数据更新结束,读取的数据有效。否则。当更新
    周期正在进行时(uip=1)将造成读取数据错误。(3)在进行时钟日历校正时,首先要停止时钟运行,即
    将状态控制寄存器中b的set位清零。(4)在保存13812(2887时钟芯片时,要通过软件将状态
    控制寄存器a中dv2一dvo设置为非010组合,关闭芯片
    内部晶振,避免锂电池耗尽。

类似问答
精品推荐

友情链接

友链互换QQ:

谷财 备案编号:蜀ICP备11019336号-3商务合作:235-677-2621

Copyright 2009-2020 Chengdu Sanzilewan Technology Co.,Ltd all rights reserve

抵制不良游戏 拒绝盗版游戏 注意自我保护 谨防受骗上当 适度游戏益脑 沉迷游戏伤身 合理安排时间 享受健康生活