基于單片機的數(shù)字秒表設(shè)計
摘要:文中設(shè)計了一種以單片機為控制核心的數(shù)字秒表。該數(shù)字秒表采用C語言開發(fā),通過數(shù)碼管顯示計時結(jié)果。對系統(tǒng)硬件電路和軟件進行了設(shè)計,以Proteus和Keil軟件為開發(fā)平臺,對數(shù)字秒表進行了仿真。仿真結(jié)果表明該數(shù)字秒表精度高、穩(wěn)定性強。
關(guān)鍵字:單片機;數(shù)字秒表;仿真
當今,計算機技術(shù)帶來了科研和生產(chǎn)重大飛躍,微型計算機的應(yīng)用已滲透到生產(chǎn)、生活的各個方面。單片微型計算機具有體積小、價格低、功能強的特點,隨著性能不斷提高,其適用范圍愈來愈寬,在計算機應(yīng)用領(lǐng)域占有重要的地位。秒表應(yīng)用于我們生活、工作、運動等需要計時的方面。秒表的數(shù)字化給人們生產(chǎn)生活帶來了極大的方便,而且大大的擴展了秒表原先的功能。它由剛開始的機械式秒表發(fā)展到今天所常用的數(shù)字式秒表。秒表的計時精度越來越高,功能越來越多,構(gòu)造也日益復雜。本文結(jié)合單片計算機,實現(xiàn)了一種基于AT89C52單片機的數(shù)字秒表的設(shè)計,并且利用Proteus和Keil軟件實現(xiàn)了仿真。
1 系統(tǒng)設(shè)計方案
1.1 系統(tǒng)設(shè)計要求
(1)秒表計時最大值為59分59.99秒。
(2)秒表由六位七段LED數(shù)碼管顯示,其中高兩位顯示“分”,中間兩位顯示“秒”,低兩位顯示“0.01”秒。
(3)秒表擁有計時、暫停、清零功能。
(4)設(shè)置三個功能鍵:鍵1開始計時,鍵2暫停計時,鍵3清零計時。
1.2 總體方案設(shè)計
數(shù)字秒表系統(tǒng)主要完成對計時實時的顯示,精度達到0.01s,以及通過功能鍵可以使當前計時暫?;蚯辶?。系統(tǒng)主要包括時鐘電路、復位電路、按鍵電路以及數(shù)碼管顯示電路。
系統(tǒng)采用六個共陽極數(shù)碼管,其中八位數(shù)據(jù)口與單片機的P0口通過74LS245雙向總線收發(fā)器相接,以增加P0的驅(qū)動能力。6個片選信號連接單片機P2口的低六位。該電路可滿足對計時時間的顯示,最小顯示單位為0.01s,溢出則向前進位,顯示時間的范圍為0到59分59.99秒。3個功能鍵連接到P3口的低三位,控制系統(tǒng)的計時、暫停和清零。系統(tǒng)的整體組成框圖如圖1所示。
2 硬件電路設(shè)計
2.1 單片機的選型
由于本系統(tǒng)只需要單片機完成對計時的顯示以及處理定時/計數(shù)的中斷,對于I/O資源以及處理速度無特殊要求,所以選擇Atmel公司生產(chǎn)的AT89C52單片機。AT89C52增加了在線調(diào)試功能,程序可以通過JTAG接口下載、調(diào)試和固化,可實現(xiàn)實時仿真和在線編程或在系統(tǒng)編程,具有通過網(wǎng)絡(luò)進行升級、維護的功能。
采用MSC-51系列的單片機相比有兩大優(yōu)勢:(1)片內(nèi)程序存儲器采用快閃存儲器,使程序的寫入方便,還可任意的擦寫1000次,使開發(fā)更為方便。(2)提供了更小的芯片,使整個硬件電路的體積更小。本設(shè)計采用了MSC-51系列89C52單片機,具有程序加密功能且物美價廉,經(jīng)濟實用。
2.2 時鐘電路
單片機工作的時間基準是由時鐘電路提供的。在單片機的XTAL1和XTAL2兩個管腳,接一只晶振及兩只電容就構(gòu)成了單片機的時鐘電路。時鐘電路如圖2所示。電路中,電容器C1和C2對振蕩頻率有微調(diào)作用,通常取(30±10)pF,本設(shè)計選用30pF。電路中的品振采用石英晶體震蕩器,晶振頻率選擇12MHz。石英晶體震蕩器具有非常好的頻率穩(wěn)定性和抗外界干擾的能力。通過基準頻率來控制電路中的頻率的準確性。
2.3 復位電路
單片機復位是使CPU和系統(tǒng)中的其他功能部件都處在一個確定的初始狀態(tài),并從這個狀態(tài)開始工作。無論是在單片機剛開始接上電源時,還是斷電后或者發(fā)生故障后都要復位。89系列單片機的復位信號是從RST引腳輸入到芯片的施密特觸發(fā)器中的。當系統(tǒng)處于正常工作狀態(tài)時,且振蕩器穩(wěn)定后,如果RST引腳有一個高電平并維持2個機器周期(24個振蕩周期),則CPU就可響應(yīng)并且將系統(tǒng)復位。復位分為手動復位和上電復位。系統(tǒng)復位電路如圖3所示。
評論