《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 模擬設(shè)計(jì) > 設(shè)計(jì)應(yīng)用 > 新型時(shí)鐘日歷芯片DS12C887的應(yīng)用設(shè)計(jì)
新型時(shí)鐘日歷芯片DS12C887的應(yīng)用設(shè)計(jì)
楊偉強(qiáng),張振東,張 朋,劉炳翔
摘要: 介紹了時(shí)鐘日歷芯片DS12C887的主要功能、特點(diǎn)和內(nèi)部地址分布,給出了C8051F020與DS12C887的硬件接口電路和相關(guān)程序設(shè)計(jì)方法。
Abstract:
Key words :

0 引言
    DS12C887是Dallas公司生產(chǎn)的實(shí)時(shí)時(shí)鐘日歷芯片,該芯片功能多、可靠性高,使用簡(jiǎn)單。通過(guò)DS12C887的寄存器讀寫(xiě),可以很容易的獲取時(shí)間信息。因此,此芯片在各種設(shè)備、家電、儀器、工業(yè)控制系統(tǒng)中具有廣泛的應(yīng)用。

1 時(shí)鐘日歷芯片DS12C887簡(jiǎn)介
    DS12C887能夠自動(dòng)產(chǎn)生世紀(jì)、年、月、日、時(shí)、分、秒等時(shí)間信息。由于其內(nèi)部增加了世紀(jì)寄存器,因而可利用硬件電路解決“千年”問(wèn)題,另外,DS12887自帶鋰電池,故在外部掉電時(shí),其內(nèi)部時(shí)間信息還能夠保持10年之久。DS12887芯片的引腳說(shuō)明如表1所列,同時(shí),該芯片還具有以下主要特點(diǎn):
    ◇可作為IBM AT計(jì)算機(jī)的時(shí)鐘和日歷;
    ◇與MC146818和DS1287的管腳兼容;
    ◇可用二進(jìn)制或BCD碼表示日歷和鬧鐘信息;
    ◇有12和24小時(shí)兩種制式,12小時(shí)制時(shí)有AM和PM提示;
    ◇可選用夏令時(shí)模式;
    ◇可選用MOTOROLA和INTEL兩種總線時(shí)序;
    ◇數(shù)據(jù)/地址總線可以復(fù)用;
    ◇帶有128字節(jié)RAM;
    ◇可編程方波輸出;
    ◇總線兼容中斷a.JPG
    ◇具有三種可編程中斷。

b.JPG


    DS12C887實(shí)時(shí)時(shí)鐘日歷芯片的地址分布如圖1所示,芯片內(nèi)部的所有地址都包括113字節(jié)的通用RAM,另外還有11字節(jié)RAM用來(lái)存儲(chǔ)時(shí)間信息,4字節(jié)RAM用來(lái)存儲(chǔ)控制和狀態(tài)信息(稱為控制寄存器)。除以下情況外,所有128字節(jié)RAM都可以直接讀寫(xiě);
    (1)寄存器C和D為只讀;
    (2)寄存器A的第7位為只讀;
    (3)秒字節(jié)的高位為只讀。

c.JPG



2 硬件接口電路設(shè)計(jì)
    圖2所示為C8051F020與DS12887的硬件接口電路原理圖。圖中,C8051F020選用內(nèi)部振蕩器,DS12C887芯片的MOT引腳接地,以選用MOTO-ROLA總線時(shí)序。本設(shè)計(jì)把DS12C887的RAM作為C8051F020外部存儲(chǔ)器進(jìn)行讀寫(xiě),因而程序簡(jiǎn)單,指令執(zhí)行時(shí)間短。C8051F020外部的存儲(chǔ)器接口可以位于低端口或者高端口,并可通過(guò)對(duì)外部存儲(chǔ)器接口配置寄存器(EMIOCF)和外部存儲(chǔ)器接口控制寄存器(EMIOCN)進(jìn)行設(shè)置,其中外部存儲(chǔ)器模式應(yīng)為帶塊選擇的分片方式,并應(yīng)確定外部存儲(chǔ)器的首地址。如果沒(méi)有此功能,最好將片i.jpg選接ECU地址總線高字節(jié)。對(duì)于51單片機(jī)來(lái)說(shuō),一般可將P2口用于控制信號(hào),P0口作為數(shù)據(jù)通道。

f.JPG



3 軟件設(shè)計(jì)
    本設(shè)計(jì)采用C語(yǔ)言在Silicon Lab集成開(kāi)發(fā)環(huán)境進(jìn)行軟件編程,并通過(guò)C8051F020帶塊選擇的分片方式將DS12C887的基地址定義為FF00H。
DS12C887寄存器地址定義如下:
d.JPG
e.JPG


g.JPG
h.JPG

4 結(jié)束語(yǔ)
    由于本文給出的方法是將DS12C887作為ECU外部數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫(xiě),因而減少了指令執(zhí)行時(shí)間,且程序簡(jiǎn)單,更有利于芯片功能的實(shí)現(xiàn)。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。