新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于單片機(jī)的日歷時鐘模塊設(shè)計

基于單片機(jī)的日歷時鐘模塊設(shè)計

作者: 時間:2011-03-15 來源:網(wǎng)絡(luò) 收藏

在實時監(jiān)控系統(tǒng)的中,要實時監(jiān)測各個控制信號,更重要的是在發(fā)生故障時能準(zhǔn)確記錄故障數(shù)據(jù),以便準(zhǔn)確分析排除錯誤。監(jiān)控系統(tǒng)中一般都要定時采集現(xiàn)場數(shù)據(jù),對某些重要的信息不僅要記錄其內(nèi)容,還要記錄下該信息發(fā)生的準(zhǔn)確時間,所記錄的實時時間信息應(yīng)長期保存,因此需要實時來實現(xiàn)。常用的沒有實時,若需采用定時器實現(xiàn),一旦系統(tǒng)掉電,就不能運(yùn)行,這是實時監(jiān)控系統(tǒng)
不允許的,而采用獨(dú)立運(yùn)行的實時時鐘便可實現(xiàn)。但一般的時鐘芯片在系統(tǒng)掉電時,其數(shù)據(jù)也會丟失,需提供備用電池。而時鐘芯片DS12887在系統(tǒng)掉電時數(shù)據(jù)不丟失,廣泛應(yīng)用于測量和控制系統(tǒng)。因此,這里給出了實時時鐘DS12887在應(yīng)用系統(tǒng)中的應(yīng)用。

1 主要器件造型
1.1 DS12887的功能介紹
DS12887是DALLAS公司推出的8位并行并自帶RAM的實時時鐘芯片,內(nèi)部有14個時鐘控制寄存器,包括10個時標(biāo)寄存器,4個狀態(tài)寄存器和114 bit作掉電保護(hù)用的低功耗RAM。CPU通過讀DS12887的內(nèi)部時標(biāo)寄存器得到當(dāng)前的時間和,也可通過選擇二進(jìn)制或BCD碼初始化芯
片的10個時標(biāo)寄存器,其4個狀態(tài)寄存器用來控制和指出DS12887的當(dāng)前工作狀態(tài),114 bit非易失性靜態(tài)RAM可在掉電時保存一些重要數(shù)據(jù)。 DS12887功能強(qiáng)大,應(yīng)用廣泛。其引腳功能如下:
GND,VCC:直流電源+5 V電壓。當(dāng)5 V電壓在正常范圍內(nèi)時,數(shù)據(jù)可讀寫;當(dāng)VCC低于4.25 V,讀寫禁止,計時功能仍繼續(xù);當(dāng)VCC下降到3 V以下時,RAM和計時器被切換到內(nèi)部鋰電池。
MOT(模式選擇):MOT引腳接到VCC時,選擇MOTOROLA時序,當(dāng)接到GFND時,選擇INTEL時序。
SQW(方波信號):SQW引腳能從實時時鐘內(nèi)部15級分頻器的13個抽頭中選擇一個作為輸出信號,其輸出頻率可通過對寄存器A編程改變。
AD0~AD7(雙向地址/數(shù)據(jù)復(fù)用線):總線接口,可與MOTOROLA微機(jī)系列和INTEL微機(jī)系列接口。
AS(地址選通輸入):用于實現(xiàn)信號分離,在AD/ALE的下降沿把地址鎖入DS12887。
DS(數(shù)據(jù)選通或讀輸入):DS/RD有2種操作模式,取決于MOT引腳的電平,當(dāng)使用MOTOROLA時序時,DS是一正脈沖,出現(xiàn)在總線周期的后段,稱為數(shù)據(jù)選通;在讀周期,DS指示DS12887驅(qū)動雙向總的時刻;在寫周期,DS的后沿使DS12887鎖存寫數(shù)據(jù)。選擇INTEL時序時,DS稱作(RD),RD與典型存儲器的允許信號(OE)的定義相同。
(讀/寫輸入):也有兩種操作模式。選MOTOROLA時 序時,是一電平信號,指示當(dāng)前周期是讀或?qū)懼芷?,DSO為高電平時,高電平指示讀周期,低電平指示寫周期;選INTEL時序,信號是一低電平信號,稱為WR。在此模式下,R/W與通用RAM的寫允許信號(WE)的含義相同。
(片選輸入):在訪問DS12887的總線周期內(nèi),片選信號必須保持為低。
(中斷申請輸入):低電平有效,可作微處理的中斷輸入。沒有中斷條件滿足時,IRQ處于高阻態(tài)。IRQ線是漏極開路輸入,要求外接上接電阻。
(復(fù)位輸出):當(dāng)保持低電平時間大于200 ms,保證DS12887有效復(fù)位。
DS12887引腳如圖1所示。

本文引用地址:http://m.butianyuan.cn/article/172943.htm


DS12887的內(nèi)部地址分配:地址00H和03H單元取值范圍是00H~3BH(十進(jìn)制為0~59);04H~05H單元按12小時制取值范圍是上午(AM)01H~0CH(十進(jìn)制為1~12),下午(PM)51H~5CH(十進(jìn)制為81~92),按24小時制取值范圍是00H~17H(十進(jìn)制為0~23);06H單元的取值范圍是01H~07H(十進(jìn)制為1~7);07H單元取值范圍O1H~1FH(十進(jìn)制為1~31);08H單元取值范圍是01H~0CH(十進(jìn)制為1~12);09H單元取值范圍是00H~63H(十進(jìn)制為0~99)。
1.2 A789C52簡介
AT89C52是一個低功耗,高性能CMOS 8位單片機(jī),片內(nèi)含8 kB的可反復(fù)擦寫的Flash只讀程序存儲器和256字節(jié)的隨機(jī)存取數(shù)據(jù)存儲器(R-AM)。該器件采用ATMEL公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲單元。A-T89C52有40個引腳,32個外部雙向輸入/輸出(I/O)端口,內(nèi)含2個外中斷口,3個16位可編程定時計數(shù)器,2個全雙工串行通信口,其將通用的微處理器和Flash存儲器結(jié)合在一起,特別是可反復(fù)擦寫的Flash存儲器可有效降低開發(fā)成本。廣泛應(yīng)用于智能儀器、儀表和低功耗電子產(chǎn)品。

2 系統(tǒng)硬件
2.1 DS12887的工作原理
DS12887采用8位地址/數(shù)據(jù)復(fù)用的總線方式,具有一個鎖存引腳,通過讀、寫、鎖存信號實現(xiàn)其內(nèi)部數(shù)據(jù)的輸入輸出,控制內(nèi)部的控制寄存器、讀取內(nèi)部的時間信息寄存器。DS12887的各種寄存器在其內(nèi)部空間都有相應(yīng)的固定地址,因此,單片機(jī)通過正確的尋址和寄存器操作就可以獲取需要的時間信息。DS12887有2種工作時序,即Motorola和Intel時序,由Mot引腳的電平指定。當(dāng)MOT引腳為高電平時選擇Motorola時序;為低電平時選擇Intel時序。除此之外DS12887內(nèi)部還有128字節(jié)的RAM的單元,其中前10個字節(jié)用于存放時鐘信息,字節(jié)0為秒,字節(jié)2為分,字節(jié)4為時,字節(jié)6為星期,字節(jié)7為日,字節(jié)8為月,字節(jié)9為年,字節(jié)0AH~0DH用作控制和狀態(tài)寄存器,剩下的114字節(jié)為用戶RA-M,所有的這128字節(jié)都是掉電非易失性的。
2.2 DS12887與單片機(jī)的接口
單片機(jī)的P0口用作地址/數(shù)據(jù)復(fù)用總線與實時時鐘DS12887的AD0~AD7引腳相連。單片機(jī)的ALE引腳和DS12887的鎖存輸入引腳直接相連,用作地址鎖存,實現(xiàn)數(shù)據(jù)和地址線的分時復(fù)用。DS12887的MOT引腳接地,用以選擇Intel總線時序模式,在Intel總線時序模式時,和51單片機(jī)的接口完全兼容,可以將其讀輸入DS、寫輸入與單片機(jī)的相應(yīng)引腳直接連接。DS12887的RESET引腳對日歷時鐘和RAM沒有影響,但影響DS12887的命令和狀態(tài)寄存器的內(nèi)容。在電路中直接將RESET連至Vcc,這樣可以保證DS12887在進(jìn)入或退出電源失效狀態(tài)時,其工作狀態(tài)不受RESET引腳的影響。DS12887的可編程輸出方波引腳SQW輸出頻率為2~256 Hz的方波,該系統(tǒng)則利用SQW引腳輸出周期為125 ms的方波作為單片機(jī)外部中斷/INT0的中斷源,實現(xiàn)周期性中斷。當(dāng)中斷發(fā)生時,單片機(jī)讀一次輸入口,檢查電表是否轉(zhuǎn)過一圈,整點時還要采一次三相電流和電壓。
DS12887與單片機(jī)的硬件接口電路如圖2所示。

51單片機(jī)相關(guān)文章:51單片機(jī)教程


單片機(jī)相關(guān)文章:單片機(jī)教程


單片機(jī)相關(guān)文章:單片機(jī)視頻教程


單片機(jī)相關(guān)文章:單片機(jī)工作原理


分頻器相關(guān)文章:分頻器原理

上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉