劉季秋+彭森
摘 要:本設(shè)計(jì)是定時(shí)鬧鐘的設(shè)計(jì),由單片機(jī)AT89C51芯片和LED數(shù)碼管為核心,輔以必要的電路,構(gòu)成的一個(gè)單片機(jī)電子定時(shí)鬧鐘。電子鐘設(shè)計(jì)可采用數(shù)字電路實(shí)現(xiàn),也可以采用單片機(jī)來(lái)完成。數(shù)字電子鐘是用數(shù)字集成電路構(gòu)成的,用數(shù)碼管顯示“時(shí)”,“分”,“秒”的現(xiàn)代計(jì)時(shí)裝置。若用數(shù)字電路完成,所設(shè)計(jì)的電路相當(dāng)復(fù)雜,大概需要十幾片數(shù)字集成塊,其功能也主要依賴(lài)于數(shù)字電路的各功能模塊的組合來(lái)實(shí)現(xiàn),焊接的過(guò)程比較復(fù)雜,成本也非常高。若用單片機(jī)來(lái)設(shè)計(jì)制作完成,由于其功能的實(shí)現(xiàn)主要通過(guò)軟件編程來(lái)完成,那么就降低了硬件電路的復(fù)雜性,而且其成本也有所降低,所以在該設(shè)計(jì)中采用單片機(jī)利用AT89C51,它是低功耗、高性能的CMOS型8位單片機(jī)。片內(nèi)帶有4KB的Flash存儲(chǔ)器,且允許在系統(tǒng)內(nèi)改寫(xiě)或用編程器編程。另外, AT89C51的指令系統(tǒng)和引腳與8051完全兼容,片內(nèi)有128B 的RAM、32條I/O口線(xiàn)、2個(gè)16位定時(shí)計(jì)數(shù)器、5個(gè)中斷源、一個(gè)全雙工串行口等。AT89C51單片機(jī)結(jié)合七段顯示器設(shè)計(jì)的簡(jiǎn)易定時(shí)鬧鈴時(shí)鐘,可以設(shè)置現(xiàn)在的時(shí)間及顯示鬧鈴設(shè)置時(shí)間,若時(shí)間到則發(fā)出一陣聲響,進(jìn)—步可以擴(kuò)充控制電器的啟停。
1 引言
本設(shè)計(jì)是定時(shí)鬧鐘的設(shè)計(jì),由單片機(jī)AT89C51芯片和LED數(shù)碼管為核心,輔以必要的電路,構(gòu)成的一個(gè)單片機(jī)電子定時(shí)鬧鐘。設(shè)計(jì)內(nèi)容包括了秒信號(hào)發(fā)生器、時(shí)間顯示電路、按鍵電路、供電電源以及鬧鈴指示電路等幾部分的設(shè)計(jì)。采用四個(gè)開(kāi)關(guān)來(lái)控制定時(shí)鬧鐘的工作狀態(tài),分別為:K1、設(shè)置時(shí)間和鬧鐘的小時(shí);K2、設(shè)置小時(shí)以及設(shè)置鬧鐘的開(kāi)關(guān);K3、設(shè)置分鐘和鬧鐘的分鐘;K4、設(shè)置完成退出。
2 工作原理
電子鬧鐘應(yīng)包括秒信號(hào)發(fā)生器、時(shí)間顯示電路、按鍵電路、供電電源以及鬧鈴指示電路等幾部分。電子鬧鐘組成部分如圖1所示。
按鍵功能說(shuō)明:K1,設(shè)置時(shí)間和鬧鐘的小時(shí);K2,設(shè)置小時(shí)以及設(shè)置鬧鐘的開(kāi)關(guān);K3,設(shè)置分鐘和鬧鐘的分鐘;K4;設(shè)置完成退出。
3 主模塊電源電路
主模塊是系統(tǒng)軟件的主框架。結(jié)構(gòu)化程序設(shè)計(jì)一般有“自上而下”和“自下而上”兩種方式,“自上而下”法的核心就是主框架的構(gòu)建。它的合理與否關(guān)系到程序最終的功能的多少和性能的好壞。
4 時(shí)間模塊電路
時(shí)間設(shè)定模塊的設(shè)計(jì)要點(diǎn)是按鍵的去抖處理與“一鍵多態(tài)”的處理。即只涉及4個(gè)鍵完成了6位時(shí)間參數(shù)的設(shè)定。軟件法去抖動(dòng)的實(shí)質(zhì)是軟件延時(shí),即檢測(cè)到某一鍵狀態(tài)變化后延時(shí)一段時(shí)間,再檢測(cè)該按鍵的狀態(tài)是否還保持著,如是則作為按鍵處理,否則,視為抖動(dòng),不予理睬。去抖中的延時(shí)時(shí)間一般參考資料多描述為10ms左右,實(shí)際應(yīng)用中,應(yīng)大于20ms,否則,會(huì)導(dǎo)致按一次作多次處理,影響程序正常執(zhí)行?!耙绘I多態(tài)”即多功能鍵的實(shí)現(xiàn)思想是,根據(jù)按鍵時(shí)刻的系統(tǒng)狀態(tài),決定按鍵采取何種動(dòng)作,即何種功能。時(shí)間模塊電路如圖2所示。
5 Proteus軟件仿真
圖3為系統(tǒng)仿真圖。該電子鐘有三個(gè)按鍵:K1,K2和K3鍵。按K1鍵進(jìn)行校時(shí),可以分別對(duì)時(shí)及分進(jìn)行單獨(dú)校時(shí),使其校正到標(biāo)準(zhǔn)時(shí)間,校時(shí)時(shí)需要校正哪一位,哪一位就閃爍。按K2鍵是對(duì)閃爍位進(jìn)行加一或返回的操作。按K3鍵調(diào)整定時(shí)時(shí)間和定時(shí)組數(shù),需要調(diào)整哪一位,哪一位就閃爍,該電子鐘最多可定時(shí)20組鬧鐘。經(jīng)測(cè)試該電子鐘在一天的累計(jì)誤差約為0.1秒。該電子鐘的誤差主要由晶振自身的誤差所造成,晶振的誤差約為0.0001~0.000001。在軟件的編程過(guò)程中所產(chǎn)生的誤差比較小,在重裝初值的過(guò)程中大概需要約8個(gè)機(jī)器周期,但在程序開(kāi)始對(duì)定時(shí)器賦初值時(shí),多加了8個(gè)機(jī)器周期,減小了這方面的誤差。
6 結(jié)論
本設(shè)計(jì)是定時(shí)鬧鐘的設(shè)計(jì),由單片機(jī)AT89C51芯片和LED數(shù)碼管為核心,輔以必要的電路,構(gòu)成的一個(gè)單片機(jī)電子定時(shí)鬧鐘。本次設(shè)計(jì)采用了主模塊設(shè)計(jì)時(shí)間模塊設(shè)計(jì)以及其他基本的模塊設(shè)計(jì)讓智能定時(shí)鬧鐘能夠更加精確的報(bào)時(shí)。同時(shí)該設(shè)計(jì)中采用單片機(jī)利用AT89C51,它是低功耗、高性能的CMOS型8位單片機(jī),大大的減少了設(shè)計(jì)的成本。
參考文獻(xiàn)
[1]張友德.單片微型機(jī)原理、應(yīng)用與實(shí)驗(yàn)[M].上海:復(fù)旦大學(xué)出版社,2005.
[2]胡長(zhǎng)勝.單片機(jī)實(shí)用技術(shù)教程[M].北京:北京師范大學(xué)出版社,2003.
[3]譚浩強(qiáng).C語(yǔ)言程序設(shè)計(jì)[M].北京:清華大學(xué)出版社,2005.
[4]郭天祥.51單片機(jī)C語(yǔ)言教程[M].北京:電子工業(yè)出版社,2009
[5]彭偉.單片機(jī)C語(yǔ)言程序設(shè)計(jì)實(shí)訓(xùn)100例[M].北京:電子工業(yè)出版社,2009
[6]周潤(rùn)景.基于proteus的電路及單片機(jī)設(shè)計(jì)與仿真[M].北京:北京航空航天大學(xué)出版社,2010
作者簡(jiǎn)介
劉季秋,邵陽(yáng)學(xué)院信息工程系電子科學(xué)與技術(shù)專(zhuān)業(yè)學(xué)生。
通訊作者(指導(dǎo)老師)
彭森,邵陽(yáng)學(xué)院信息工程系教師。