技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動(dòng)網(wǎng) > 技術(shù)頻道 > 技術(shù)百科 > 一種基于AT89C51控制的高精度倒計(jì)時(shí)系統(tǒng)

一種基于AT89C51控制的高精度倒計(jì)時(shí)系統(tǒng)

時(shí)間:2011-03-15 14:15:22來源:boulifairy

導(dǎo)語:?倒計(jì)時(shí)系統(tǒng)的任務(wù), 就是對(duì)某一設(shè)定日期進(jìn)行倒數(shù), 并在顯示屏顯示當(dāng)前至設(shè)定日期的時(shí)間, 以增強(qiáng)人們的關(guān)注度和緊迫感。

1 引 言

      倒計(jì)時(shí)系統(tǒng)的任務(wù),就是對(duì)某一設(shè)定日期進(jìn)行倒數(shù), 并在顯示屏顯示當(dāng)前至設(shè)定日期的時(shí)間,以增強(qiáng)人們的關(guān)注度和緊迫感。開發(fā)實(shí)踐表明:以時(shí)鐘芯片DS12C887為時(shí)鐘模塊、單片機(jī)AT89C51為控制模塊的高精度倒計(jì)時(shí)系統(tǒng)具有精度高、能夠長(zhǎng)時(shí)間連續(xù)穩(wěn)定地工作、使用方便的特點(diǎn),可較好滿足實(shí)際需要。系統(tǒng)的硬件設(shè)計(jì)和軟件設(shè)計(jì)如下。

2 系統(tǒng)的硬件設(shè)計(jì)

      系統(tǒng)的控制模塊由AT89C51單片機(jī)構(gòu)成,用于完成對(duì)串行口控制器的初始化和數(shù)據(jù)讀寫,并對(duì)接收的各種數(shù)據(jù)進(jìn)行識(shí)別、轉(zhuǎn)儲(chǔ)及顯示。時(shí)鐘芯片DS12C887提供高精度的年、月、日、時(shí)、分、秒時(shí)間,校準(zhǔn)后直接與單片機(jī)相連。倒計(jì)時(shí)顯示模塊由LED數(shù)碼管,74HC595芯片和74LS245芯片組成。

系統(tǒng)總體框圖如圖1所示。

系統(tǒng)總體結(jié)構(gòu)圖

1

圖1 系統(tǒng)總體結(jié)構(gòu)圖

2. 1 時(shí)鐘模塊及其與單片機(jī)的連接

      時(shí)鐘模塊用于對(duì)時(shí)、分、秒、年、月、日和星期的計(jì)時(shí),由美國DALLAS 公司生產(chǎn)的時(shí)鐘日歷芯片DS12C887構(gòu)成,該芯片集成度高,可提供年、月、日、時(shí)、分、秒,設(shè)定每一時(shí)刻產(chǎn)生中斷,并且其外圍電路設(shè)計(jì)簡(jiǎn)單,性能好,計(jì)時(shí)準(zhǔn)確性高。DS12C887帶有128字節(jié)RAM,其中有11字節(jié)RAM 用來存儲(chǔ)時(shí)間信息,4字節(jié)RAM用來存儲(chǔ)DS12C887的控制信息,為控制寄存器。用戶可以在任何時(shí)候?qū)ζ溥M(jìn)行訪問以對(duì)DS12C887進(jìn)行控制操作,有113字節(jié)的通用RAM 供用戶使用。用戶還可對(duì)DS12C887進(jìn)行編程以實(shí)現(xiàn)多種方波的輸出,并對(duì)內(nèi)部的三路中斷通過軟件進(jìn)行控制。DS12C887為雙列直插式封裝,與單片機(jī)的連接為:AD0~ AD7雙向地址/數(shù)據(jù)復(fù)用線與單片機(jī)的P0口相聯(lián),用于向單片機(jī)交換數(shù)據(jù);AS地址選通輸入腳與單片機(jī)的ALE 相聯(lián)用于對(duì)地址鎖存,實(shí)現(xiàn)地址數(shù)據(jù)的復(fù)用;CS片選線與單片機(jī)的P2. 6相聯(lián),用于選通時(shí)鐘芯片;DS數(shù)據(jù)選通讀輸入引腳與單片機(jī)的讀選通引腳相聯(lián),用于實(shí)現(xiàn)對(duì)芯片數(shù)據(jù)的讀控制;R /W讀/寫輸入與單片機(jī)的寫選通引腳相聯(lián),用于實(shí)現(xiàn)對(duì)時(shí)鐘芯片的寫控制;MOT 直接接地,選用INTEL 時(shí)序;IRQ 引腳與單片機(jī)的INT1相連,用于為時(shí)間的采集提供時(shí)間基準(zhǔn)。

2. 2 顯示模塊的設(shè)計(jì)

      單片機(jī)將讀入的DS12C887時(shí)間信息經(jīng)過程序處理,輸出顯示信號(hào)到P1口,顯示信息包括倒計(jì)時(shí)信息(當(dāng)前距離設(shè)定時(shí)間的天數(shù))和當(dāng)前時(shí)間的星期、時(shí)、分、秒信息。顯示電路主要由9個(gè)LED 數(shù)碼管,9 片74HC595 芯片和一片74LS245芯片組成。

      設(shè)計(jì)采用動(dòng)態(tài)顯示方式,即將所有位的段選線并聯(lián)在一起由一個(gè)8位I /O 口控制。74HC595是硅結(jié)構(gòu)的高速CMOS器件,內(nèi)置8 位移位寄存器和一個(gè)存儲(chǔ)器,具有三態(tài)輸出功能,當(dāng)使能端OE 為低電平時(shí),將存儲(chǔ)寄存器的數(shù)據(jù)輸出到總線。利用74HC595并行輸出端具有的輸出鎖存功能,采用74HC595芯片的串入并出方式控制數(shù)碼管的顯示,具體的連接方式為: 芯片的Q7引腳和SER 引腳級(jí)聯(lián),通過三個(gè)I/O口與單片機(jī)連接。74HC595的14腳( SER)為串行輸入端,12腳( RCLR) 為移位時(shí)鐘端,時(shí)鐘上升沿將14腳數(shù)據(jù)移入寄存器; 11腳( SRCLR )為鎖存時(shí)鐘端,時(shí)鐘上升沿鎖存數(shù)據(jù); 8腳( E )為3態(tài)輸出控制端,接低電平時(shí)輸出數(shù)據(jù)。輸出數(shù)據(jù)和移位時(shí)鐘均由單片機(jī)輸出: 單片機(jī)P1. 0口輸出數(shù)據(jù),在移位脈沖上升沿到來時(shí)數(shù)據(jù)移出進(jìn)入74HC595; P1. 1 口輸出移位脈沖; P1. 2口輸出鎖存脈沖。出現(xiàn)在并行輸出端上的數(shù)據(jù)經(jīng)74LS245驅(qū)動(dòng)數(shù)碼管顯示, 由于數(shù)據(jù)已被鎖存, 在傳送下一組數(shù)據(jù)時(shí), 前一組數(shù)據(jù)的內(nèi)容不變, 以此方式進(jìn)行數(shù)據(jù)的傳送和顯示, 故在顯示模塊軟件中將P1. 0、P1. 1、P1. 2均定義為模擬串行口。調(diào)整鍵盤的接口有 4個(gè)鍵: 1個(gè)設(shè)定/確認(rèn)鍵、1個(gè)修改+ 1鍵、1個(gè)修改- 1鍵、1個(gè)移位鍵。對(duì)應(yīng)秒、分、時(shí)、倒計(jì)時(shí)、星期, 有5 個(gè)LED。LED亮, 表示對(duì)應(yīng)的秒或分或星期或倒計(jì)時(shí)數(shù)據(jù)可按修改鍵修改。在設(shè)定時(shí)間狀態(tài), 首先移位為秒位, 對(duì)應(yīng)秒移位LED亮, 按下移位鍵, 移位LED燈按秒→分→時(shí)→倒計(jì)時(shí)→星期逐次循環(huán); 按下修改+ 1鍵或修改- 1 鍵可對(duì)相應(yīng)位的數(shù)據(jù)進(jìn)行+ 1或- 1操作。

3 系統(tǒng)的軟件設(shè)計(jì)

      系統(tǒng)的主程序包括: 對(duì)單片機(jī)串行口的設(shè)置以及初始化→讀取DS12C887時(shí)鐘芯片→判斷是否計(jì)算倒計(jì)時(shí)→顯示。初始化12887為24小時(shí)制, BCD碼, 不允許中斷, 分配12887的始地址為B000H, A寄存器的地址為B00AH, B 寄存器的地址為B00BH, C寄存器的地址為B00CH, D寄存器的地址為B00DH, DS12887的內(nèi)部分配如表1所示。

表1 DS12887的內(nèi)部分配。

2

DS12887的內(nèi)部分配

      顯示子程序首先通過模擬串行口讀取DS12C887的數(shù)據(jù), 然后利用74HC595 對(duì)數(shù)據(jù)進(jìn)行顯示。具體步驟為: 顯示子程序?qū)1. 0 置位 將P1. 0送入段碼 將P1. 1送入移位脈沖 將P1. 2送入鎖存脈沖 返回主程序。倒計(jì)時(shí)子程序首先由單片機(jī)讀DSl2C887的時(shí)間單元, 并將其存放在以69H 為起始的單元中, 操作時(shí)先讀取月份, 然后利用查表方法計(jì)算其下月份到預(yù)定時(shí)間的天數(shù), 再利用查表方式判斷其月份是31天、30天, 28天或29天,將查表得到的天數(shù)減去讀取日期, 將二個(gè)天數(shù)相加就可得到實(shí)際天數(shù)。進(jìn)行時(shí)、分、秒計(jì)算時(shí), 可以直接利用預(yù)定時(shí)、分、秒減去讀取的時(shí)、分、秒得到相差的時(shí)、分、秒, 完成后返回主程序。

4 結(jié)束語

      綜上,所設(shè)計(jì)的倒計(jì)時(shí)系統(tǒng)由DS12C887構(gòu)成時(shí)鐘模塊, 單片機(jī)AT89C51 對(duì)系統(tǒng)進(jìn)行控制,設(shè)定從模擬串行口讀取DS12C887 的數(shù)據(jù)后, 再利用74HC595將數(shù)據(jù)送入數(shù)碼管顯示。系統(tǒng)經(jīng)調(diào)試和參數(shù)整定后運(yùn)行穩(wěn)定可靠,連續(xù)長(zhǎng)期運(yùn)行積累誤差為零,為高精度的倒計(jì)時(shí)系統(tǒng)。實(shí)踐開發(fā)表明, 基于上述技術(shù)的倒計(jì)時(shí)系統(tǒng)具有結(jié)構(gòu)緊湊、簡(jiǎn)單,價(jià)格低廉,可靠性高等特點(diǎn),便于實(shí)際應(yīng)用。

標(biāo)簽:

點(diǎn)贊

分享到:

上一篇:基于ATOM處理器的工業(yè)控制系...

下一篇:微能WIN-V63矢量控制變頻器在...

中國傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動(dòng)網(wǎng)(m.u63ivq3.com)獨(dú)家所有。如需轉(zhuǎn)載請(qǐng)與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來源“中國傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請(qǐng)保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。

網(wǎng)站簡(jiǎn)介|會(huì)員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動(dòng)網(wǎng)-工業(yè)自動(dòng)化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺(tái)

網(wǎng)站客服服務(wù)咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權(quán)所有
粵ICP備 14004826號(hào) | 營業(yè)執(zhí)照證書 | 不良信息舉報(bào)中心 | 粵公網(wǎng)安備 44030402000946號(hào)