單片機(jī)計(jì)時(shí)秒表的設(shè)計(jì)(正確無誤)(共19頁)_第1頁
單片機(jī)計(jì)時(shí)秒表的設(shè)計(jì)(正確無誤)(共19頁)_第2頁
單片機(jī)計(jì)時(shí)秒表的設(shè)計(jì)(正確無誤)(共19頁)_第3頁
單片機(jī)計(jì)時(shí)秒表的設(shè)計(jì)(正確無誤)(共19頁)_第4頁
單片機(jī)計(jì)時(shí)秒表的設(shè)計(jì)(正確無誤)(共19頁)_第5頁
已閱讀5頁,還剩14頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上實(shí)習(xí)任務(wù)書學(xué)生姓名系部電氣與信息工程學(xué)院專業(yè)班級自動化11-1班指導(dǎo)教師姓名職稱講師是否外聘是RR否題目名稱計(jì)時(shí)秒表的設(shè)計(jì)一、設(shè)計(jì)的內(nèi)容、目的和意義本次實(shí)習(xí)主要完成具備基本功能的計(jì)時(shí)秒表的理論和實(shí)踐設(shè)計(jì)。計(jì)時(shí)秒表是重要的計(jì)時(shí)工具,廣泛運(yùn)用于各行各業(yè)中。作為一種測量工具,計(jì)時(shí)秒表相對其它一般的記時(shí)工具具有便捷、準(zhǔn)確、可比性高等優(yōu)點(diǎn)。不僅可以提高精確度,而且可以大大減輕操作人員的負(fù)擔(dān),降低錯誤率。因此計(jì)時(shí)秒表常常用于體育競賽及各種其他要求有較精確時(shí)間的各領(lǐng)域中。人們在日常生活中,有很多時(shí)候也要精確地計(jì)算時(shí)間,但往往因?yàn)槿藶橐蛩卦斐扇藗儾辉敢饪吹降恼`差。秒表的出現(xiàn),解決了傳

2、統(tǒng)的由于人為因素造成的誤差和不公平性。通過實(shí)習(xí)加深對單片機(jī)課程的全面認(rèn)識復(fù)習(xí)和掌握,對單片機(jī)課程的應(yīng)用進(jìn)一步的了解。通過此次實(shí)習(xí)能夠?qū)纹瑱C(jī)軟硬件結(jié)合起來,對程序進(jìn)行編輯,校驗(yàn)。實(shí)習(xí)通過單片機(jī)的定時(shí)器/計(jì)數(shù)器定時(shí)和計(jì)數(shù)原理,設(shè)計(jì)簡單的計(jì)時(shí)器系統(tǒng),擁有正確的計(jì)時(shí)、暫停、清零,并同時(shí)可以用數(shù)碼管顯示,在現(xiàn)實(shí)生活中應(yīng)用廣泛,具有現(xiàn)實(shí)意義。 2、 設(shè)計(jì)的技術(shù)指標(biāo)要求1、研究方法(1)總體按照最優(yōu)化的方法進(jìn)行軟件設(shè)計(jì)和硬件設(shè)計(jì),走軟件實(shí)現(xiàn)電路;(2)對軟硬件進(jìn)行模塊劃分,并對各單元電路結(jié)合EDA工具進(jìn)行論證設(shè)計(jì);(3)在查閱文獻(xiàn)基礎(chǔ)上展開設(shè)計(jì),力求創(chuàng)新。2、技術(shù)要求 (1)計(jì)時(shí)范圍:小于1小時(shí)(2)可顯

3、示出毫秒計(jì)時(shí)(3)實(shí)現(xiàn)開始、停止、繼續(xù)功能摘 要本次設(shè)計(jì)主要完成具備基本功能的計(jì)時(shí)秒表的理論和實(shí)踐設(shè)計(jì)單片機(jī)控制秒表是集于單片機(jī)技術(shù)、模擬電子技術(shù)、數(shù)字技術(shù)為一體的機(jī)電一體化高科技產(chǎn)品,具有功耗低,安全性高,使用方便等優(yōu)點(diǎn)。本次設(shè)計(jì)內(nèi)容為以AT89S52單片機(jī)為核心的秒表,它采用鍵盤輸入,單片機(jī)技術(shù)控制。設(shè)計(jì)內(nèi)容以硬件電路設(shè)計(jì)和軟件設(shè)計(jì)兩部分來設(shè)計(jì)。利用單片機(jī)的定時(shí)器/計(jì)數(shù)器定時(shí)和計(jì)數(shù)的原理,用集成電路芯片、LED 數(shù)碼管以及按鍵來設(shè)計(jì)計(jì)時(shí)器。將軟、硬件有機(jī)地結(jié)合起來,使他擁有正確的計(jì)時(shí)、暫停和繼續(xù)并同時(shí)可以用數(shù)碼管顯示,在現(xiàn)實(shí)生中應(yīng)用廣泛。關(guān)鍵詞:單片機(jī);計(jì)時(shí)秒表;定時(shí)器/計(jì)數(shù)器;中斷方案比

4、較及選擇(方案數(shù)量可根據(jù)具體情況而定。方案論述要求簡明扼要,突出設(shè)計(jì)原理。)方案1:利用集成計(jì)數(shù)器芯片74HC161進(jìn)行計(jì)數(shù),外加晶振14M電路提供脈沖,計(jì)數(shù)器最大計(jì)數(shù)值是16個數(shù),可以用多片計(jì)數(shù)器級聯(lián),計(jì)數(shù)值通過轉(zhuǎn)換芯片的轉(zhuǎn)換,再輸送給數(shù)碼管顯示。方案2:使用單片機(jī)AT89S52的定時(shí)器T0或者T1方式1十六位定時(shí)器,每隔一段時(shí)間產(chǎn)生一個中斷,給定時(shí)器初值,通過程序設(shè)計(jì)使得軟件計(jì)數(shù)器加1,將最后得到的軟件計(jì)數(shù)器分離成各個段碼,采用動態(tài)法使得數(shù)碼管亮。方案3:使用單片機(jī)AT89S52的定時(shí)器T0或者T1方式2定時(shí)器,每隔一段時(shí)間產(chǎn)生一個中斷,通過程序設(shè)計(jì)使得軟件計(jì)數(shù)器加1,將最后得到的軟件計(jì)數(shù)

5、器分離成各個段碼,采用動態(tài)法使得數(shù)碼管亮。方案4:使用單片機(jī)AT89S52的定時(shí)器T2十六位自動重載方式定時(shí)器,每隔一段時(shí)間產(chǎn)生一個中斷,通過程序設(shè)計(jì)使得軟件計(jì)數(shù)器加1,將最后得到的軟件計(jì)數(shù)器分離成各個段碼,采用動態(tài)法使得數(shù)碼管亮。確定方案及理由:方案1電路連接復(fù)雜,不能實(shí)現(xiàn)秒表的啟停。方案2使用方式1不能實(shí)現(xiàn)定時(shí)器初值的自動重載,將影響表秒的精確度。方案3雖然實(shí)現(xiàn)了自動重載功能,但是其計(jì)數(shù)的最大值較小,必須進(jìn)行多次中斷,這也會減少秒表的精確度。選擇方案4,因?yàn)槠渥畲蠹夹g(shù)值是65535,并且實(shí)現(xiàn)了自動重載功能,能最大的增加精確度。第1章 總體設(shè)計(jì)方案1.1 總體設(shè)計(jì)方案本次實(shí)習(xí)選用了價(jià)格較為低

6、廉的AT89S52芯片來實(shí)現(xiàn)秒表的精確計(jì)數(shù),并運(yùn)用編程加以實(shí)現(xiàn)。 具體是通過單片機(jī)的T2定時(shí)器每隔一定的時(shí)間產(chǎn)生中斷,通過程序設(shè)計(jì)使得軟件計(jì)數(shù)器加1,將最后得到的軟件計(jì)數(shù)器分離成各個段碼,采用動態(tài)法使得數(shù)碼管顯示不同的數(shù)。 其具體系統(tǒng)原理框圖如圖1.1按鍵電路 時(shí)鐘電路 單片機(jī)AT89S52數(shù)碼管顯示復(fù)位電路圖 1.1圖 1.11.2 軟硬件功能分析系統(tǒng)的總體工作過程: 首先通過軟件設(shè)置選用單片機(jī)T2的自動重載方式的定時(shí)器,通過兩個按鍵來控制定時(shí)器的啟動和停止,來實(shí)現(xiàn)秒表的啟停。設(shè)置三個軟件計(jì)數(shù)器,分別負(fù)責(zé)分、秒,毫秒的計(jì)數(shù),每隔10ms產(chǎn)生一次中斷,然后判斷對應(yīng)的軟件計(jì)數(shù)器是否滿足值,若滿足

7、則相應(yīng)的值加一,若不滿足則返回主程序,獲得的分、秒,毫秒通過運(yùn)算可以得到七段譯碼,送到數(shù)碼管顯示最后結(jié)果。第2章 硬件電路設(shè)計(jì)2.1 單片機(jī)最小系統(tǒng)電路設(shè)計(jì)設(shè)計(jì)所謂的最小系統(tǒng)是指可以保證計(jì)算機(jī)工作的最小硬件構(gòu)成。對于單片機(jī)內(nèi)部資源已能夠滿足系統(tǒng)需要的直接采用最小系統(tǒng)。對于AT89S52具有片上Flash的單片機(jī),其最小系統(tǒng)如圖2.1所示,其主要組成電路是復(fù)位電路和時(shí)鐘電路。此時(shí),P0和P2可以從總線應(yīng)用解放出來,以作為普通I/O使用。圖2.12.1.1 復(fù)位電路 手動復(fù)位電路的工作原理是:加電瞬間,RST端的是高電平,隨著RC電路充電電流的減小RST電位也減小,降到一定程度,即為低電平,單片機(jī)

8、開始正常工作。當(dāng)按下按鍵時(shí),RST直接與VCC相連,為高電平形成復(fù)位,同時(shí)電解電容被短路放電;按鍵松開時(shí),VCC對電容充電,充電電流在電阻上,RST依然為高電平,仍然是復(fù)位,這就保證了在RST端足夠長的高電平時(shí)間,充電完成后,電容相當(dāng)于開路,RST為低電平,正常工作。如圖2.1.1所示。2.1.2 時(shí)鐘電路時(shí)鐘電路產(chǎn)生單片機(jī)工作所需要的時(shí)鐘信號,電路應(yīng)在唯一的時(shí)鐘信號控制下嚴(yán)格的按時(shí)序進(jìn)行工作。 在51芯片內(nèi)部有一個高增益反向放大器,其輸入端為引腳XTAL1,輸出端引腳為XTAL2,在芯片的外部通過這兩個腳跨接晶體振蕩器和微調(diào)電容,形成反饋電路,就構(gòu)成一個穩(wěn)定的自激振蕩器。振蕩晶體可在1.2M

9、Hz12MHz之間選擇,電容值無嚴(yán)格要求,但在電容值取值對振蕩頻率輸出的穩(wěn)定性、大小、振蕩電路起振速度有少許影響,可在20pF100pF之間取值。本設(shè)計(jì)選取晶振為12MHz,電容為30pF。如圖2.1.2所示。 圖 2.1.1 圖 2.1.22.2 系統(tǒng)供電電源設(shè)計(jì)本系統(tǒng)需要采用5V電源,所采用的電源電路是由LM1117三端穩(wěn)壓器組成的。電源電路如圖2.2所示。圖2.22.3 按鍵電路 按鍵是常開的按鍵開關(guān),每個按鍵都被賦予一個代碼,稱為鍵碼。按鍵的開關(guān)狀態(tài)通過一定的電路轉(zhuǎn)換為高、低電平狀態(tài)。按鍵閉合過程在相應(yīng)的I/O端口形成一個負(fù)脈沖。閉合和釋放過程都要經(jīng)過一定的過程才能達(dá)到穩(wěn)定,這一過程是

10、處于高、低電平之間的一種不穩(wěn)定狀態(tài),稱為抖動。抖動持續(xù)時(shí)間的長短與開關(guān)的機(jī)械特性有關(guān),一般在510ms之間。本設(shè)計(jì)中是用軟件程序來去除抖動。由于系統(tǒng)使用到的按鍵數(shù)并不多,所以不選用矩陣鍵盤而選用獨(dú)立式按鍵電路。直接用I/O口線構(gòu)成單個按鍵電路,每個按鍵占用一條I/O口線,每個按鍵的工作狀態(tài)不會產(chǎn)生互相影響。P2.0接停止按鍵,P2.1接開始按鍵,P2.2接繼續(xù)按鍵然后按鍵都與地相接。相應(yīng)的按鍵電路圖如圖2.3所示。 圖 2.32.4 驅(qū)動顯示電路LED顯示器是單片機(jī)應(yīng)用系統(tǒng)中常用的廉價(jià)輸出設(shè)備。它是由若干個發(fā)光二極管組成的,當(dāng)發(fā)光二極管導(dǎo)通時(shí),相應(yīng)一個筆畫發(fā)光,控制某幾段發(fā)光二極管導(dǎo)通,就能顯

11、示出某個數(shù)碼或字符。在單片機(jī)應(yīng)用系統(tǒng)中,顯示器顯示有靜態(tài)顯示和動態(tài)掃描顯示兩種方法。1.靜態(tài)顯示所謂靜態(tài)顯示,就是每一個顯示器都要占用單獨(dú)的具有鎖存功能的I/O接口用于筆劃段字形代碼。這樣單片機(jī)只要把要顯示的字形代碼發(fā)送到接口電路就可以了,直到要顯示新的數(shù)據(jù)時(shí),再發(fā)送新的字形碼。使用這種方法CPU的開銷小,控制程序簡單,但占用較多的硬件資源。2.動態(tài)掃描顯示動態(tài)掃描顯示是單片機(jī)中應(yīng)用最為廣泛的一種顯示方式。其接口電路是把所有顯示器的8個筆劃段ADP同名端連在一起,而每一個顯示器的公共極COM各自獨(dú)立地受I/O線控制。CPU向字段輸出口送出字形碼時(shí),所有顯示器接收到相同的字形碼,但究竟是哪個顯示

12、器亮,則取決于COM端,而這一端是由I/O控制的,因此就可以自行決定何時(shí)顯示哪一位了。所謂動態(tài)掃描就是指采用分時(shí)的方法,輪流控制各個顯示器的COM端,使各個顯示器輪流點(diǎn)亮。在輪流點(diǎn)亮掃描過程中,每位顯示器的點(diǎn)亮?xí)r間是極為短暫的,但由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應(yīng),盡管實(shí)際上各位顯示器并非同時(shí)點(diǎn)亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),不會有閃爍感。所以,就采用動態(tài)掃描顯示。我們選用4位共陽數(shù)碼管這樣用到了單片機(jī)的兩個I/O接口P0和P2。又因P2接口不能承受六位的數(shù)碼管的電流,那就需要在P2接口上加上六個三極管來驅(qū)動。四位共陽數(shù)碼管總共有12個引腳,ADP為段選,

13、vcc1、vcc2和vcc3為位選,ADP段選通過470電阻與P0.0P0.7相應(yīng)對接,而四個位選與P2.3P2.6相應(yīng)對接,四位共陽數(shù)碼管的驅(qū)動電路如圖2.4.1所示。圖2.4第3章 系統(tǒng)軟件設(shè)計(jì)3.1 軟件總體設(shè)計(jì)思路經(jīng)過前幾章的設(shè)計(jì)工作,系統(tǒng)的硬件電路設(shè)計(jì)已經(jīng)完成了。然而,對于一個完整的設(shè)計(jì)系統(tǒng)來說,只有硬件電路的設(shè)計(jì)完成是不夠的,它必須通過軟件的編程來實(shí)現(xiàn)系統(tǒng)的工作控制功能,從而實(shí)現(xiàn)電路應(yīng)有的系統(tǒng)功能。單片機(jī)系統(tǒng)的軟件設(shè)計(jì)主要使用匯編語言或高級語言。匯編語言與系統(tǒng)硬件關(guān)系密切,可方便實(shí)現(xiàn)諸如中斷管理以及模擬/數(shù)字量的輸入輸出等功能,具有占用系統(tǒng)資源小、執(zhí)行速度快的特點(diǎn),但是,對于復(fù)雜的

14、大型應(yīng)用系統(tǒng),其代碼可讀性差,不利于維護(hù)和升級。高級語言的代碼效率和長度都不如匯編語言,但其結(jié)構(gòu)清晰、可讀性好、開發(fā)周期短、有極強(qiáng)的可移植性,在多數(shù)應(yīng)用方面執(zhí)行效率與匯編語言差距不大,得到了極為廣泛的應(yīng)用。而C語言既有高級語言的各種特點(diǎn),又可對硬件進(jìn)行操作,并可進(jìn)行結(jié)構(gòu)化程序設(shè)計(jì)。用C語言編寫的程序較容易移植,可生成簡潔、可靠的目標(biāo)代碼。本次軟件設(shè)計(jì)采用C語言編寫。本軟件整體設(shè)計(jì)思路為:通過T2定時(shí)機(jī)器的自動重載功能,以及設(shè)置的軟件計(jì)數(shù)器的計(jì)數(shù)來實(shí)現(xiàn)計(jì)時(shí)并顯示出來。本設(shè)計(jì)以單片機(jī)作為系統(tǒng)的核心控制單元,運(yùn)用C語言進(jìn)行編程工作,按照工作流程來實(shí)現(xiàn)設(shè)計(jì)要求的簡易秒表計(jì)時(shí)的功能,并且通過軟硬件的不斷

15、調(diào)整,來完善優(yōu)化設(shè)計(jì)系統(tǒng),從而實(shí)現(xiàn)結(jié)構(gòu)化程序設(shè)計(jì)。3.2 主程序流程設(shè)計(jì) 通過之前的硬件系統(tǒng)設(shè)計(jì),綜合考慮各方面的因素,系統(tǒng)主控流程圖3.1所示:開始初始化定時(shí)器T2為16為自動重載方式設(shè)定初始值為55535,定時(shí)10ms開啟總中斷和定時(shí)器中斷對分進(jìn)行計(jì)數(shù)并分離十位、個位對秒進(jìn)行計(jì)數(shù)并分離十位、個位對毫秒進(jìn)行計(jì)數(shù)并分離十位、個位顯示子程序按鍵子程序圖3.1 主程序流程圖3.3 中斷服務(wù)子程序流程圖由于采用T2十六位自動重載的方式,定時(shí)時(shí)間為10ms,通過多次中斷實(shí)現(xiàn)功能。中斷服務(wù)子程序流程圖3.2所示:進(jìn)入中斷清零中斷標(biāo)志軟件計(jì)數(shù)器time1+、time2+time1=100?time=0,m

16、iao+miao59?miao=0time2=6000?time2=0,fen+fen60?fen=0返回主程序YESNONONONOYESYESYES實(shí)習(xí)總結(jié)(包括:實(shí)習(xí)質(zhì)量分析、待完善和改進(jìn)之處和心得體會)在本次實(shí)習(xí)過程中比較好的完成了各項(xiàng)任務(wù)。在設(shè)計(jì)簡易秒表時(shí),采用定時(shí)器T2的自動重載方式通過多次中斷實(shí)現(xiàn)計(jì)時(shí)。在軟硬件各方面做了充足的準(zhǔn)備,可以說實(shí)習(xí)效果較好。本次實(shí)習(xí)在參考了相關(guān)電路和他人的設(shè)計(jì)方法基礎(chǔ)上自行設(shè)計(jì)完成的。通過較少的集成器件,實(shí)現(xiàn)了計(jì)時(shí)啟動、停止、繼續(xù)和毫秒顯示的功能。該秒表具有準(zhǔn)確度高、靈敏度好、成本低、低功耗等特點(diǎn)。此外。本設(shè)計(jì)單片機(jī)的很多資源還未使用,為以后的功能拓展

17、提供了廣泛的空間。由于實(shí)驗(yàn)條件及自身所學(xué)知識的限制,本系統(tǒng)還存在有待進(jìn)一步的完善和改進(jìn)的地方。例如,本次所用的LED為四位數(shù)碼管但是沒有冒號顯示所以不是特別完整的顯示秒表計(jì)時(shí)。還有就是不能在毫秒擋實(shí)現(xiàn)暫停。這需要在以后進(jìn)一步完善。通過對本次實(shí)習(xí),使自己深刻的認(rèn)識到自己的很多不足之處,在實(shí)際動手操作能力的不足,在進(jìn)行程序編程時(shí),自己需要,認(rèn)真審題,看懂題目的要求!對于軟件編程不益太簡單或者太難。做到既能把課題完成又能鍛煉 自己的能力!根據(jù)課題要求,復(fù)習(xí)相關(guān)的知識,查詢相關(guān)的資料。根據(jù)課程條件,找到適 合的方案,找到需要的元器件及工具,準(zhǔn)備課程。根據(jù)課程設(shè)計(jì)的要求和自己所要增加的功能寫好程序流程圖

18、,在程序流程圖的基礎(chǔ)上,根據(jù)芯片的功能寫出相應(yīng)的程序和增加額外的功能程序。然后再進(jìn)行程序調(diào)試和相應(yīng)的修改,以達(dá)到能夠?qū)崿F(xiàn)所要求的功能的目的。這次實(shí)習(xí)增長了我的實(shí)踐意識,還促使我認(rèn)真學(xué)習(xí)了單片機(jī)的內(nèi)部設(shè)置,也讓我了解到在實(shí)際電路中,很多細(xì)節(jié)上的問題必須要考慮清楚,怎么做才是對電路的優(yōu)化設(shè)計(jì)是最好的,必須通過實(shí)際操作過程加以確認(rèn)。參考文獻(xiàn)1劉海成.單片機(jī)及應(yīng)用原理教程M.北京:中國電力出版社,2012.2康華光.電子技術(shù)基礎(chǔ)(模擬部分)M.高等教育出版社,2006.3秦進(jìn)平.數(shù)字電子與EDA技術(shù)M.科學(xué)出版社,2011.附錄附錄1 總原理圖附錄2 源程序#include#define uchar

19、unsigned char#define uint unsigned intsbit s1=P22;sbit s2=P21;sbit s3=P20;sbit wei1=P30;sbit wei2=P31;sbit wei3=P32;sbit wei4=P33;uchar fen,miao,haomiao,miaoge,miaoshi,fenge,fenshi,haomiaoge,haomiaoshi;uint times1=0;uint times2=0;uchar code table=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90; void delay_1ms(void) uint i; for(i=0;i0;j-) for(k=125;k0;k-); void anjian(void) s1=

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論