基于單片機的多用途定時器的設計與實現(xiàn)
由于AT89 C51的內(nèi)部計數(shù)器是16位的,即便采用2MHz的時鐘,計滿一次為32767.5μs,因此通過Intel 8253外擴了計數(shù)器,并且用AT89 C51的ALE輸出作為8253的時鐘脈沖,這樣就大大地擴展了量程范圍。
通過Intel8279外擴了鍵盤/顯示器,由于Intel8279內(nèi)部自帶按鍵消抖電路和鍵值自動掃描電路,故無須再進行編程,這樣既提高了可靠性,同時也減少了整個程序的代碼量。
鍵盤為4×4物理鍵陣(部分鍵是復用的),除了0~9數(shù)字鍵外,還有計時鍵、修改鍵、確認鍵、設置鍵/復位↑、↓等功能鍵,鍵位排布情況見圖1。因為選用了塑膜按鍵(定做的),所以既防塵又美觀。
顯示器選用5位高紅LED管,分別表示時、分、秒。之所以沒有選用液晶,主要是從廣泛的實用環(huán)境來考慮的,比如球賽,大多是在戶外進行的,LCD就顯得亮度不夠了。另外用了4個發(fā)光二極管作為時與分、分與秒之間的分界符,如圖2所示。
達到預定時間,聲光同時報警,采用高亮度LED和所需語音(時間到,請停止 )。CPU對8279的監(jiān)視采用了查詢方式,故8279的中斷請求信號IRQ懸空未用。
系統(tǒng)有直流(4節(jié)1號干電池)和交流(220V市電)兩種供電方式。整流電源是與系統(tǒng)配裝在一起
3 軟件結(jié)構(gòu)
8253的工作時鐘是ALE,輸出為1MHz。它有三個計數(shù)器,為了能夠最大限度地擴大計時量程,三個計數(shù)器采用了“套用”方式,即計數(shù)器0的輸出作為計數(shù)器1的輸入脈沖,計數(shù)器1的輸出作為計數(shù)器2的輸入脈沖,最后計數(shù)器2的輸出才輸入到的。整個系統(tǒng)的結(jié)構(gòu)如圖3所示。
AT89 C51的T0進行計數(shù),一個“硬件計時周期”就能定時71min1.41s,這已能滿足一般的賽事定時需要。從更廣的范圍考慮,編制了不同“軟定時”延遲程序,可用嵌套的形式啟動“硬件計時周期”,以達到更長的定時需要,但是顯示器的位數(shù)已定,最長能夠定時10h,這已足夠長了。
系統(tǒng)軟件分為三大模塊,即初始化模塊,鍵盤掃描/顯示模塊,時間延遲(脈沖計數(shù))模塊。關鍵技術為延遲時間的計算和對8279編程,工作期間要動態(tài)地顯示倒計時時間,結(jié)構(gòu)框圖如圖4所示。
4 結(jié)束語
本文所介紹的多用途定時器設計巧妙,體積小,造價低,功能強,計時范圍大,用途廣泛,操作攜帶方便,是一種較理想的定時工具,經(jīng)多次試用改進后已基本定型。該系統(tǒng)市場前景廣闊,具有較明顯的經(jīng)濟效益。
參 考 文 獻
2 李華.MCS-51系列單片機實用接口技術.北京:北京航空航天大學出版社,1993
3 李秉操等.單片機接口技術及其在工業(yè)控制中的應用.陜西:陜西電子編輯部,1991
4 陳鍵鐸.8098單片機原理及應用技術.北京:電子工業(yè)出版社,1995
評論