<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > EDA/PCB > 介紹時(shí)鐘日歷芯片DS12C887

介紹時(shí)鐘日歷芯片DS12C887

——
作者:林國清 時(shí)間:2007-11-27 來(lái)源:國外電子元器件 收藏

  摘要:簡(jiǎn)要介紹了美國DALLAS公司的新型日歷芯片的功能特性和內部控制寄存器參數,給出了與8031的電路連接圖,同時(shí)給出了用C51編寫(xiě)的初始化程序和獲取內部時(shí)間的程序。

  關(guān)鍵詞:

1 器件特性

    DS12C887實(shí)時(shí)芯片功能豐富,可以用來(lái)直接代替IBM PC上的時(shí)鐘日歷芯片DS12887,同時(shí),它的管腳也和MC146818B、DS12887相兼容。

    由于DS12C887能夠自動(dòng)產(chǎn)生世紀、年、月、日、時(shí)、分、秒等時(shí)間信息,其內部又增加了世紀寄存器,從而利用硬件電路解決子“千年”問(wèn)題; DS12C887中自帶有鋰電池,外部掉電時(shí),其內部時(shí)間信息還能夠保持10年之久;對于一天內的時(shí)間記錄,有12小時(shí)制和24小時(shí)制兩種模式。在12小時(shí)制模式中,用AM和PM區分上午和下午;時(shí)間的表示方法也有兩種,一種用二進(jìn)制數表示,一種是用BCD碼表示;DS12C887中帶有128字節 RAM,其中有11字節RAM用來(lái)存儲時(shí)間信息,4字節RAM用來(lái)存儲DS12C887的控制信息,稱(chēng)為控制寄存器,113字節通用RAM使用戶(hù)使用;此外用戶(hù)還可對DS12C887進(jìn)行編程以實(shí)現多種方波輸出,并可對其內部的三路中斷通過(guò)軟件進(jìn)行屏蔽。

2 引腳功能

    DS12C887的引腳排列如圖1所示,各管腳的功能說(shuō)明如下:

    GND、 VCC:直流電源,其中VCC接+5V輸入,GND接地,當VCC輸入為+5V時(shí),用戶(hù)可以訪(fǎng)問(wèn)DS12C887內RAM中的數據,并可對其進(jìn)行讀、寫(xiě)操作;當VCC的輸入小于+4.25V時(shí),禁止用戶(hù)對內部RAM進(jìn)行讀、寫(xiě)操作,此時(shí)用戶(hù)不能正確獲取芯片內的時(shí)間信息;當VCC的輸入小于+3V時(shí), DS12C887會(huì )自動(dòng)將電源發(fā)換到內部自帶的鋰電池上,以保證內部的電路能夠正常工作。

    MOT:模式選擇腳,DA12C887有兩種工作模式,即Motorola模式和Intel模式,當MOT接VCC時(shí),選用的工作模式是Motorola模式,當MOT接GND時(shí),選用的是Intel模式。本文主要討論Intel模式。

    SQW:方波輸出腳,當供電電壓VCC大于4.25V時(shí),SQW腳可進(jìn)行方波輸出,此時(shí)用戶(hù)可以通過(guò)對控制寄存器編程來(lái)得到13種方波信號的輸出。

    AD0~AD7:復用地址數據總線(xiàn),該總線(xiàn)采用時(shí)分復用技術(shù),在總線(xiàn)周期的前半部分,出現在A(yíng)D0~AD7上的是地址信息,可用以選通DS12C887內的RAM,總線(xiàn)周期的后半部分出現在A(yíng)D0~AD7上的數據信息。

    AS:地址選通輸入腳,在進(jìn)行讀寫(xiě)操作時(shí),AS的上升沿將AD0~AD7上出現的地址信息鎖存到DS12C887上,而下一個(gè)下降沿清除AD0~AD7上的地址信息,不論是否有效,DS12C887都將執行該操作。

    DS/RD:數據選擇或讀輸入腳,該引腳有兩種工作模式,當MOT接VCC時(shí),選用Motorola工作模式,在這種工作模式中,每個(gè)總線(xiàn)周期的后一部分的DS為高電平,被稱(chēng)為數據選通。在讀操作中,DS的上升沿使DS12C887將內部數據送往總線(xiàn)AD0~AD7上,以供外部讀取。在寫(xiě)操作中,DS的下降沿將使總線(xiàn) AD0~AD7上的數據鎖存在DS12C887中;當MOT接GND時(shí),選用Intel工作模式,在該模式中,該引腳是讀允許輸入腳,即Read Enable。

    R/W:讀/寫(xiě)輸入端,該管腳也有2種工作模式,當MOT接VCC時(shí),R/W工作在Motorola模式。此時(shí),該引腳的作用是區分進(jìn)行的是讀操作還是寫(xiě)操作,當R/W為高電平時(shí)為讀操作,R/W為低電平時(shí)為寫(xiě)操作;當MOT接GND時(shí),該腳工作在Intle模式,此時(shí)該作為寫(xiě)允許輸入,即Write Enable。

    CS:片選輸入,低電平有效。{{分頁(yè)}}

    IRQ:中斷請求輸入,低電平有效,該腳有效對DS12C887內的時(shí)鐘、日歷和RAM中的內容沒(méi)有任何影響,僅對內部的控制寄存器有影響,在典型的應用中,RESET可以直接接VCC,這樣可以保證DS12C887在掉電時(shí),其內部控制寄存器不受影響。

    在DS12C887內有11字節RAM用來(lái)存儲時(shí)間信息,4字節用來(lái)存儲控制信息,其具體垢地址及取值如表1所列。

    由表1可以看出:DS12C887內部有控制寄存器的A-B等4個(gè)控制寄存器,用戶(hù)都可以在任何時(shí)候對其進(jìn)行訪(fǎng)問(wèn)以對DS12C887進(jìn)行控制操作。

表1 DS12C887的存儲功能

地  址 功  能 取值范圍十進(jìn)制數 取值范圍
二進(jìn)制 BCD碼
0 0~59 00~3B 00~59
1 秒鬧鈴 0~59 00~3B 00~59
2 059 00~3B 00~59
3 分鬧鈴 0~59 00~3B 00~59
4 12小時(shí)模式 0~12 01~0C AM,
81~8C PM
01~12AM,
81~92PM
24小時(shí)模式 0~23 00~17 00~23
5 時(shí)鬧鈴,12小時(shí)制 1~12 01~0C AM,
81~8C PM
01~12AM,
81~92PM
時(shí)鬧鈴,24小時(shí)制 0~23 00~17 00~23
6 星期幾(星期天=1) 1~7 01~07 01~07
7 1~31 01~1F 01~31
8 1~12 01~0C 01~12
9 0~99 00~63 00~99
10 控制寄存器A      
11 控制寄存器B      
12 控制寄存器C      
13 控制寄存器D      
50 世紀 0~99 NA 19,20

3 應用

    在各種設備、家電、儀器、工業(yè)控制系統中,可以很容易地用DS12C887來(lái)組成時(shí)間獲取單元,以實(shí)現各種時(shí)間的獲取。圖2是用8031和 DS12C887構成的時(shí)間獲取電路圖,其中DS12C887的基地址為7F00H,相應的程序采用C51語(yǔ)言編寫(xiě)(以Intel工作模式為例)。

    由8031單片機和DS12C887構成的時(shí)間獲取電路的初始化程序如下:

XBYTE[0x7F00+0x0B]=0x82;

XBYTE[0x7F00+0x0A]=0xA0;

XBYTE[0x7F00+0x0A]=0x20;

XBYTE[0x7F00+0x0B]=0x02;

/*所有的中斷禁止,24小時(shí)制,BCD碼模式*/{{分頁(yè)}}

以下均獲取時(shí)間程序:

unsigned char data t-century;

unsigned char data t-year;

unsigned char data t-month;

unsigned char data t-date;

unsigned char data t-week;

unsigned char data t-hour;

unsigned char data t-minute;

unsigned char data t-second;

if((XBYTE[7F00+0x0A]&0x80)!=0){

t-century=XBYTE[0x7F00+0x32];/*讀取世紀*/

t-year=XBYTE[Ox7F00+0x09];/*讀取年份*/

t-month=XBYTE[Ox7F00+0x08];/*讀取月份*/

t-date=XBYTE[Ox7F00+0x07];/*讀取日期*/

t-week=XBYTE[Ox7F00+0x06];/*讀取星期幾*/

t-hour=XBYTE[Ox7F00+0x04];/*讀取小時(shí)*/

t-minute=XBYTE[DS12887+0x02];/*讀取分鐘*/

t-second=XBYTE[Ox7F00+0x00];}/*讀取秒*/

 

 

 

 

 

 

4 結束語(yǔ)

    Dallas公司的時(shí)鐘日歷芯片DS12C887功能豐富,使用簡(jiǎn)單,可能性高,是時(shí)間產(chǎn)生電路的良好選擇。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>