【正文】
畢業(yè)論文 基于單片機(jī)的數(shù)字電子秒表的設(shè)計(jì)與實(shí)現(xiàn) 摘 要 近年來隨著科技的飛速發(fā)展單片機(jī)的應(yīng)用正在不斷的走向深入本文闡述了基于單片機(jī)的數(shù)字電子秒表設(shè)計(jì)本設(shè)計(jì)主要特點(diǎn)是計(jì)時(shí)精度達(dá)到 001s 解決了傳統(tǒng)的由于計(jì)時(shí)精度不夠造成的誤差和不公平性是各種體育競(jìng)賽的必備設(shè)備之一 本設(shè)計(jì)的數(shù)字電子秒表系統(tǒng)采用 8051 單片機(jī)為中心器件利用其定時(shí)器計(jì)數(shù)器定時(shí)和記數(shù)的原理結(jié)合顯示電路 LED 數(shù)碼管以及外部中斷電路來設(shè)計(jì)計(jì)時(shí)器將軟硬件有機(jī)地結(jié)合起來使得系統(tǒng)能夠?qū)崿F(xiàn)五位 LED 顯 示顯示時(shí)間為 0~ 能正確地進(jìn)行計(jì)時(shí)同時(shí)能記錄一次時(shí)間并在下一次計(jì)時(shí)后對(duì)上一次計(jì)時(shí)時(shí)間進(jìn)行查詢其中軟件系統(tǒng)采用匯編語言編寫程序包括顯示程序定時(shí)中斷服務(wù)外部中斷服務(wù)程序延時(shí)程序等并在 WAVE 中調(diào)試運(yùn)行硬件系統(tǒng)利用 PROTEUS 強(qiáng)大的功能來實(shí)現(xiàn)簡(jiǎn)單切易于觀察在仿真中就可以觀察到實(shí)際的工作狀態(tài) 關(guān)鍵字單片機(jī)數(shù)字電子秒表仿真 Abstract With the rapid development of science and technology in recent years SCM applications are constantdepth manner In this paper based on single chip design of digital electronic stopwatch The main characteristics of this design timing accuracy of 001s to solve the traditional result of a lack accuracy due to timing errors and unfair and is a variety of sports petitions one of the essential equipment In addition the hardware part of the set View button on the stopwatch can be the last time to save time for user queries The design of the multifunction stopwatch system uses STC89C52 microcontroller as the central device and use its timer counter timing and the count principles bined with display circuit LED digital tube as well as the external interrupt circuit to design a timer The software and hardware together anically allowing the system to achieve two LED display shows the time from 0 to 9999 seconds Timing accuracy of 001 seconds Be able to correctly time at the same time to record a time and the next time after the last time the time to search automatically added a second in which software systems using assembly language programming including the display program timing interrupt service external interrupt service routine delay procedures key consumer shaking procedures and WAVE in the missioning operation hardware system uses to achieve PROTEUS powerful simple and easy to observe the cut in the simulation can be observed on the actual working condition KeywordLED displayHighprecision stopwatch8051目 錄 摘 要 I Abstract II 緒 論 1 1 硬件設(shè)計(jì) 3 11 總體方案的設(shè)計(jì) 3 12 單片機(jī)的選擇 4 13 顯示電路的選擇與設(shè)計(jì) 7 14 按鍵電路的選擇與設(shè)計(jì) 10 15 時(shí)鐘電路的選擇與設(shè)計(jì) 11 16 復(fù)位電路的選擇與設(shè)計(jì) 13 17 系統(tǒng)總電路的設(shè)計(jì) 15 2 軟件設(shè)計(jì) 17 21 程序設(shè)計(jì)思想 17 22 系統(tǒng)資源的分配 17 23 主程序設(shè)計(jì) 18 24 中斷程序設(shè)計(jì) 19 3 數(shù)字電子秒表的安裝與調(diào)試 25 31 軟件的仿真與調(diào)試 25 32 硬件的安裝與調(diào)試 25 33 系統(tǒng)程序的燒錄 26 34 數(shù)字電子秒表的精度調(diào)試 27 結(jié) 論 28 參考文獻(xiàn) 28 附錄 A 程序 30 附錄 B 電路原理圖 35 緒 論 秒表計(jì)時(shí)器是電器制造工業(yè)自動(dòng)化控制國防實(shí)驗(yàn)室及科研單位理想的計(jì)時(shí)儀器它廣泛應(yīng)用于各種繼電器電磁開關(guān)控制器延時(shí)器定時(shí)器等的時(shí)間測(cè)試 2020 年 8 月 28 日 15 點(diǎn) 15 分中國選手孟關(guān)良楊文軍在雅典奧運(yùn)會(huì)男子 500米劃艇決賽中以 1分 40秒 278的成績獲得中國在雅典奧運(yùn)會(huì)的第 28金這是中國皮劃艇項(xiàng)目的第一枚奧運(yùn)金牌也是中國水上項(xiàng)目在歷屆奧運(yùn)會(huì)上所獲得的第一枚金牌孟關(guān)良楊文軍的成績比獲得銀牌的古巴選手只快了 0072 秒以至于兩人在奪冠之后還不敢相信本利用單片機(jī)的定時(shí)器計(jì)數(shù)器定時(shí)和記數(shù)的原理 0000 當(dāng)按下開始鍵時(shí)外部中斷 INT1 向 CPU 發(fā)出中斷請(qǐng)求 CPU 轉(zhuǎn)去執(zhí)行外部中斷 1 服務(wù)程序即開啟定時(shí)器 T0計(jì)時(shí)采用定時(shí)器 T0中斷完成定時(shí)溢出中斷周期為 1ms當(dāng)一處中斷后向 CPU 發(fā)出溢出中斷請(qǐng)求每發(fā)出一次中斷請(qǐng)求就對(duì)毫秒計(jì)數(shù)單元進(jìn)行加一達(dá)到 10次就對(duì)十毫秒 位進(jìn)行加一依次類推直到 9999秒重新復(fù)位在計(jì)時(shí)過程中只要按下暫停鍵外部中斷 INT0 向 CPU 發(fā)出中斷請(qǐng)求 CPU 轉(zhuǎn)去執(zhí)行外部中斷 0服務(wù)程序即關(guān)閉定時(shí)器 T0 調(diào)用顯示程序?qū)崿F(xiàn)暫停功能同時(shí)將此次計(jì)時(shí)時(shí)間存入寄存區(qū)然后對(duì) P11 進(jìn)行掃描當(dāng) P11 按下時(shí)就跳轉(zhuǎn)回主程序等待下一次計(jì)時(shí)開始 在按下暫停鍵時(shí)將此時(shí)的計(jì)時(shí)時(shí)間存入中間緩存區(qū)當(dāng)再次按下開始鍵時(shí)則講中間緩存區(qū)的數(shù)據(jù)轉(zhuǎn)入最終緩存區(qū)秒表停止后對(duì)查看鍵 P25進(jìn)行掃描 P25按下為低電平時(shí)調(diào)用最終緩存區(qū)的數(shù)據(jù)進(jìn)行顯示即顯示上一次計(jì)時(shí)成績當(dāng) P25 位高電平時(shí)調(diào)用顯示緩存區(qū)的數(shù)據(jù)進(jìn)行顯示 即顯示當(dāng)此計(jì)時(shí)的成績根據(jù)以上設(shè)計(jì)思路從而實(shí)現(xiàn)數(shù)字電子秒表的計(jì)時(shí)和查看上一次計(jì)時(shí)時(shí)間的功能 本文主要內(nèi)容包括三部分第一部分介紹硬件部分設(shè)計(jì)思路及方案第二部分介紹了軟件部分的設(shè)計(jì)思路和設(shè)計(jì)最后一部分則是整個(gè)系統(tǒng)的安裝與調(diào)試過程 1 硬件設(shè)計(jì) 11 總體方案的設(shè)計(jì) 數(shù)字電子秒表具有顯示直觀讀取方便精度高等優(yōu)點(diǎn)在計(jì)時(shí)中廣泛使用本設(shè)計(jì)用單片機(jī)組成數(shù)字電子秒表力求結(jié)構(gòu)簡(jiǎn)單精度高為目標(biāo) 設(shè)計(jì)中包括硬件電路的設(shè)計(jì)和系統(tǒng)程序的設(shè)計(jì)其硬件電路主控制器顯示電路和等主控制器采用單片機(jī)顯示電路采用共極 LED 數(shù)碼管顯示本利用單片 機(jī)的定時(shí)器計(jì)數(shù)器定時(shí)和記數(shù)的原理 P0 口輸出段碼數(shù)據(jù) P20P24 口作列掃描輸出P11P32P33 電路原理圖設(shè)計(jì)最基本的要求是正確性其次是布局合理最后在正確性和布局合理的前提下力求美觀 圖 11 數(shù)字秒表硬件電路基本原理圖 根據(jù)要求知道秒表設(shè)計(jì)主要實(shí)現(xiàn)的功能是計(jì)時(shí)和顯示本設(shè)計(jì)中數(shù)碼管顯示的數(shù)據(jù)存放在內(nèi)存單元 79H- 7H中其中 79H存放毫秒位數(shù)據(jù) 7AH存放十毫秒位數(shù)據(jù) 7BH存放百毫秒位數(shù)據(jù) 7CH存放秒位數(shù)據(jù) 7DH存放十秒位數(shù)據(jù)每一地址單元內(nèi)均為十進(jìn)制 BCD 碼由于采用軟件動(dòng)態(tài)掃描實(shí)現(xiàn)數(shù)據(jù)顯示功能顯示用十進(jìn)制 BCD碼 數(shù)據(jù)的對(duì)應(yīng)段碼存放在 ROM表中顯示時(shí)先取出 79H7dH某一地址中的數(shù)據(jù)然后查得對(duì)應(yīng)的顯示用段碼并從 P0口輸出 P2口將對(duì)應(yīng)的數(shù)碼管選中供電就能顯示該地址單元的數(shù)據(jù)值 最終緩存區(qū)則設(shè)置為 59H5DH數(shù)據(jù)存放規(guī)則和 79H7DH一樣分別對(duì)應(yīng)存放毫秒位至十秒位數(shù)據(jù)與 79H7DH存儲(chǔ)區(qū)不一樣的是 59H5DH存儲(chǔ)的內(nèi)容為數(shù)字秒表上一次計(jì)時(shí)顯示的時(shí)間而 79H7DH 為當(dāng)前計(jì)時(shí)時(shí)間存儲(chǔ)區(qū) 計(jì)時(shí)采用定時(shí)器 T0 中斷完成定時(shí)溢出中斷周期為 1ms 當(dāng)一處中斷后向 CPU發(fā)出溢出中斷請(qǐng)求每發(fā)出一次中斷請(qǐng)求就對(duì)毫秒計(jì)數(shù)單元進(jìn)行加一 達(dá)到 10 次就對(duì)十毫秒位進(jìn)行加一依次類推直到 9999 秒重新復(fù)位 再看按鍵的處理這四個(gè)鍵可以采用中斷的方法也可以采用掃描的方法來識(shí)別復(fù)位鍵和查看主要功能在于數(shù)值復(fù)位和查詢上次計(jì)時(shí)時(shí)間對(duì)于時(shí)間的要求不是很嚴(yán)格而開始和停止鍵則是用于對(duì)時(shí)間的鎖定需要比較準(zhǔn)確的控制因此可以對(duì)復(fù)位和查看按鍵采取掃描的方式而對(duì)開始和停止鍵采用外部中斷的方式 設(shè)計(jì)中包括硬件電路的設(shè)計(jì)和系統(tǒng)程序的設(shè)計(jì)其硬件電路主控制器顯示電路和等主控制器采用單片機(jī)顯示電路采用共極 LED 數(shù)碼管顯示 圖 12 8051 單片機(jī)引腳圖 控制或與其它電源復(fù)用引腳 RSTVPDALE 和 Vpp ① RSTVPD 當(dāng)振蕩器運(yùn)行時(shí)