單片機(jī)課程設(shè)計(jì)-作息時(shí)間控制器的設(shè)計(jì)報(bào)告_第1頁(yè)
單片機(jī)課程設(shè)計(jì)-作息時(shí)間控制器的設(shè)計(jì)報(bào)告_第2頁(yè)
單片機(jī)課程設(shè)計(jì)-作息時(shí)間控制器的設(shè)計(jì)報(bào)告_第3頁(yè)
單片機(jī)課程設(shè)計(jì)-作息時(shí)間控制器的設(shè)計(jì)報(bào)告_第4頁(yè)
單片機(jī)課程設(shè)計(jì)-作息時(shí)間控制器的設(shè)計(jì)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩22頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、河南理工大學(xué)單片機(jī)課程設(shè)計(jì)報(bào)告作息時(shí)間控制器設(shè)計(jì)姓 名: 學(xué) 號(hào): 專業(yè)班級(jí): 自動(dòng)化06-3班 指導(dǎo)老師: 所在學(xué)院:電氣工程與自動(dòng)化學(xué)院2009年6月14日 摘要本設(shè)計(jì)是作息時(shí)間控制器的設(shè)計(jì),由單片機(jī)AT89C52芯片和LED數(shù)碼管為核心,輔以必要的電路,構(gòu)成的一個(gè)單片機(jī)電子作息時(shí)間控制器。該功能的實(shí)現(xiàn)主要通過(guò)軟件編程來(lái)完成,降低了硬件電路的復(fù)雜性,本錢也有所降低。設(shè)計(jì)內(nèi)容包括了秒信號(hào)指示、時(shí)間“時(shí)和“分顯示電路、按鍵調(diào)整電路、供電電源以及鬧鈴指示電路等幾局部的設(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è)置

2、分鐘和鬧鐘的分鐘;K4、設(shè)置完成退出。當(dāng)作息時(shí)間控制器到達(dá)課程設(shè)計(jì)的要求,在到達(dá)設(shè)定的定時(shí)時(shí)間時(shí)蜂鳴器便被控制立即發(fā)出聲音,持續(xù)一分鐘,而后按K4鍵退出顯示閃爍狀態(tài),即恢復(fù)時(shí)鐘狀態(tài)。顯示采用的四位數(shù)碼管電路,定時(shí)提示采用蜂鳴器發(fā)聲指示。本設(shè)計(jì)方案也可以經(jīng)過(guò)改良作為實(shí)現(xiàn)定時(shí)控制系統(tǒng)的控制定時(shí)電路。關(guān)鍵詞:作息時(shí)間 單片機(jī) 顯示 定時(shí)目錄 TOC o 1-3 h z u HYPERLINK l _Toc233197120 1 概述 PAGEREF _Toc233197120 h 3 HYPERLINK l _Toc233197121 1.1 課程設(shè)計(jì)的目的和意義 PAGEREF _Toc23319

3、7121 h 3 HYPERLINK l _Toc233197122 1.2 單片機(jī)課程設(shè)計(jì)的要求 PAGEREF _Toc233197122 h 3 HYPERLINK l _Toc233197123 1.3 作息時(shí)間控制器的設(shè)計(jì)要求 PAGEREF _Toc233197123 h 3 HYPERLINK l _Toc233197124 2 系統(tǒng)總體方案及硬件設(shè)計(jì) PAGEREF _Toc233197124 h 4 HYPERLINK l _Toc233197125 2.1 系統(tǒng)總體設(shè)計(jì) PAGEREF _Toc233197125 h 4 HYPERLINK l _Toc233197126

4、2.2 系統(tǒng)各個(gè)局部的電路設(shè)計(jì) PAGEREF _Toc233197126 h 5 HYPERLINK l _Toc233197129 3 軟件的設(shè)計(jì) PAGEREF _Toc233197129 h 8 HYPERLINK l _Toc233197130 3.1 概述 PAGEREF _Toc233197130 h 8 HYPERLINK l _Toc233197131 3.2 主模塊的設(shè)計(jì) PAGEREF _Toc233197131 h 8 HYPERLINK l _Toc233197132 顯示模塊設(shè)計(jì) PAGEREF _Toc233197132 h 9 HYPERLINK l _Toc2

5、33197133 3.4 時(shí)間設(shè)定模塊設(shè)計(jì) PAGEREF _Toc233197133 h 9 HYPERLINK l _Toc233197135 3.5 鬧鈴功能的實(shí)現(xiàn) PAGEREF _Toc233197135 h 10 HYPERLINK l _Toc233197136 4 Proteus軟件仿真 PAGEREF _Toc233197136 h 12 HYPERLINK l _Toc233197137 仿真結(jié)果 PAGEREF _Toc233197137 h 12 HYPERLINK l _Toc233197138 性能及誤差分析 PAGEREF _Toc233197138 h 14 H

6、YPERLINK l _Toc233197139 5課程設(shè)計(jì)體會(huì) PAGEREF _Toc233197139 h 15 HYPERLINK l _Toc233197140 參考文獻(xiàn) PAGEREF _Toc233197140 h 15 HYPERLINK l _Toc233197141 附1 程序源代碼 PAGEREF _Toc233197141 h 16 HYPERLINK l _Toc233197142 附2原理圖 PAGEREF _Toc233197142 h 261 概述1.1 課程設(shè)計(jì)的目的和意義 綜合利用所學(xué)單片機(jī)知識(shí)完成一個(gè)單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)并仿真、由硬件實(shí)現(xiàn),從而加深對(duì)單片機(jī)軟

7、硬知識(shí)的理解,獲得初步的應(yīng)用經(jīng)驗(yàn),為走出校門從事單片機(jī)應(yīng)用的相關(guān)工作打下良好根底。1.2 單片機(jī)課程設(shè)計(jì)的要求 1、進(jìn)一步熟悉和掌握單片機(jī)的內(nèi)部結(jié)構(gòu)和工作原理,了解單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)的根本方法和步驟;2、掌握單片機(jī)仿真軟件Proteus的使用方法; 3、掌握鍵盤和顯示器在的單片機(jī)控制系統(tǒng)中的應(yīng)用。4、掌握撰寫課程設(shè)計(jì)報(bào)告的方法。1.3 作息時(shí)間控制器的設(shè)計(jì)要求 1、設(shè)計(jì)制作一個(gè)單片機(jī)數(shù)字鐘及控制電路。2、使用4位七段顯示器來(lái)顯示現(xiàn)在的時(shí)間。顯示格式為“時(shí)-分,由LED閃動(dòng)作為秒計(jì)數(shù)表示。3、可以設(shè)定作息時(shí)間,并進(jìn)行到時(shí)提示。4、能夠根據(jù)預(yù)先設(shè)定好的作息時(shí)間表自動(dòng)啟停控制電路,完成對(duì)外部設(shè)備的實(shí)

8、時(shí)控制。5、可以設(shè)置現(xiàn)在的時(shí)間及顯示定時(shí)設(shè)置時(shí)間。2 系統(tǒng)總體方案及硬件設(shè)計(jì) 2.1 系統(tǒng)總體設(shè)計(jì)1、方案比擬方案一:采用數(shù)字電路實(shí)現(xiàn)。數(shù)字電子鐘是用數(shù)字集成電路構(gòu)成的,用數(shù)碼管顯示“時(shí),“分,“秒的現(xiàn)代計(jì)時(shí)裝置。假設(shè)用數(shù)字電路完成,所設(shè)計(jì)的電路相當(dāng)復(fù)雜,大概需要十幾片數(shù)字集成塊,其功能也主要依賴于數(shù)字電路的各功能模塊的組合來(lái)實(shí)現(xiàn),焊接的過(guò)程比擬復(fù)雜,本錢也非常高。方案二:用單片機(jī)來(lái)設(shè)計(jì)制作完成,由于其功能的實(shí)現(xiàn)主要通過(guò)軟件編程來(lái)完成,那么就降低了硬件電路的復(fù)雜性,而且其本錢也有所降低,經(jīng)過(guò)上面的比照本設(shè)計(jì)采用單片機(jī)作為設(shè)計(jì)的主體。2、單片機(jī)的選型AT89C52是低功耗、高性能的CMOS型8位

9、單片機(jī)。片內(nèi)帶有4KB的Flash存儲(chǔ)器,且允許在系統(tǒng)內(nèi)改寫或用編程器編程。另外, AT89C51的指令系統(tǒng)和引腳與8051完全兼容,片內(nèi)有128B 的RAM、32條I/O口線、2個(gè)16位定時(shí)計(jì)數(shù)器、5個(gè)中斷源、一個(gè)全雙工串行口等?;谝陨蟽?yōu)點(diǎn),本設(shè)計(jì)采用AT89C52單片機(jī)。3、總體電路的設(shè)計(jì)電子鬧鐘的主體電路應(yīng)包括秒信號(hào)發(fā)生器、時(shí)間顯示電路、按鍵電路、供電電源以及鬧鈴指示電路等幾局部。按鍵功能說(shuō)明:K1,設(shè)置時(shí)間和鬧鐘的小時(shí);K2,設(shè)置小時(shí)以及設(shè)置鬧鐘的開(kāi)關(guān);K3,設(shè)置分鐘和鬧鐘的分鐘;K4;設(shè)置完成退出。電子鬧鐘的系統(tǒng)框圖1如下所示:AT89C52復(fù)位、時(shí)鐘等電路按鈕電路4位數(shù)碼管顯示電

10、路鬧鈴聲指示電路電源供電電路 圖1 2.2 系統(tǒng)各個(gè)局部的電路設(shè)計(jì) 1、系統(tǒng)復(fù)位電路的設(shè)計(jì)單片機(jī)系統(tǒng)一般應(yīng)有手動(dòng)或上電復(fù)位電路。復(fù)位電路的實(shí)現(xiàn)通常有兩種方式:RC復(fù)位電路;專用監(jiān)控電路。前者實(shí)現(xiàn)簡(jiǎn)單,本錢低,但復(fù)位可靠性相對(duì)較低;后者本錢較高,但復(fù)位可靠性高,尤其是高可靠重復(fù)復(fù)位。對(duì)于復(fù)位要求高、并對(duì)電源電壓進(jìn)行監(jiān)視的場(chǎng)合,大多采用這種方式。復(fù)位電路主要用來(lái)在單片機(jī)的程序進(jìn)入死循環(huán)后,能使單片機(jī)重新從頭執(zhí)行程序而不會(huì)無(wú)休止的執(zhí)行程序。本設(shè)計(jì)采用了上電按鈕電平復(fù)位電路,如圖2 圖22、系統(tǒng)時(shí)鐘電路設(shè)計(jì)對(duì)于時(shí)間要求不是很高的系統(tǒng),只要按圖進(jìn)行設(shè)計(jì)就能使系統(tǒng)可靠起振并穩(wěn)定運(yùn)行。但由于實(shí)際工作過(guò)程中的

11、C1、C2電容起著系統(tǒng)時(shí)鐘頻率微調(diào)和穩(wěn)定的作用,因此,在實(shí)際應(yīng)用中一定要注意正確選擇參數(shù)3010 PF,并保證對(duì)稱性盡可能匹配,這兩個(gè)電容元件對(duì)鬧鐘的走時(shí)誤差有很大關(guān)系,并且選用正規(guī)的瓷片或云母電容,如果可能的話,溫度系數(shù)要盡可能低。另外,瓷片電容的實(shí)際焊接距離不應(yīng)該離單片機(jī)太遠(yuǎn)否那么誤差較大。具體的時(shí)鐘電路如圖三所示: 圖 33、鬧鐘指示電路設(shè)計(jì)鬧鈴指示可以有聲或光兩種形式。本系統(tǒng)采用聲音指示。關(guān)鍵元件是蜂鳴器。蜂鳴器有無(wú)源和有源兩種,前者需要輸入聲音頻率信號(hào)才能正常發(fā)聲,后者那么只需外加適當(dāng)直流電源電壓即可,元件內(nèi)部已封裝了音頻振蕩電路,在得電狀態(tài)下即起振發(fā)聲。市場(chǎng)上的有源蜂鳴器分為3、5

12、、6等系列,以適應(yīng)不同的應(yīng)用需要。鬧鐘電路是用比擬器來(lái)比擬計(jì)時(shí)系統(tǒng)和定時(shí)系統(tǒng)的輸出狀態(tài),如果計(jì)時(shí)系統(tǒng)和定時(shí)系統(tǒng)的輸出狀態(tài)相同,那么發(fā)出一個(gè)脈沖信號(hào),再和一個(gè)高頻信號(hào)混合,送到放大電路驅(qū)動(dòng)揚(yáng)聲器發(fā)聲,從而實(shí)現(xiàn)定時(shí)鬧響的功能。其電路設(shè)計(jì)參見(jiàn)系統(tǒng)原理圖。4、顯示電路的設(shè)計(jì)本設(shè)計(jì)采用了4位數(shù)碼管顯示電路。在4位LED顯示時(shí),為了簡(jiǎn)化電路,降低本錢,采用動(dòng)態(tài)顯示的方式,4個(gè)LED顯示器共用一個(gè)8位的I/O, 4位LED數(shù)碼管的位選線分別由相應(yīng)的P2.2P2. 5控制,而將其相應(yīng)的段選線并聯(lián)在一起,由一個(gè)8位的I/O口控制,即P0口。由于采用了四位數(shù)碼管,所以數(shù)碼管顯示“時(shí)、“分;秒的顯示選用了一個(gè)發(fā)光二

13、極管,兩滅周期為兩秒,即點(diǎn)亮和熄滅時(shí)間均為一秒。到達(dá)定時(shí)時(shí)間時(shí),由計(jì)時(shí)系統(tǒng)的輸出狀態(tài)產(chǎn)生一脈沖信號(hào),然后去觸發(fā)蜂鳴器實(shí)現(xiàn)鬧鈴。校時(shí)電路是用來(lái)對(duì)“時(shí)、“分顯示數(shù)字進(jìn)行校對(duì)調(diào)整的。具體的電路設(shè)計(jì)如圖4示: 圖45、定時(shí)和調(diào)時(shí)電路的設(shè)計(jì)本設(shè)計(jì)因?yàn)槭褂玫降逆I數(shù)目比擬少,不宜采用矩陣式鍵盤,采用了功能直觀簡(jiǎn)潔方便的獨(dú)立式鍵盤,而且考慮了鍵盤的消抖問(wèn)題。比擬容易理解。每個(gè)鍵的具體功能如下:K1,設(shè)置時(shí)間和鬧鐘的小時(shí);K2,設(shè)置小時(shí)以及設(shè)置鬧鐘的開(kāi)關(guān);K3,設(shè)置分鐘和鬧鐘的分鐘;K4;設(shè)置完成退出。按鍵定義如圖5所示:圖53 軟件的設(shè)計(jì)3.1 概述軟件設(shè)計(jì)的重點(diǎn)在于秒脈沖信號(hào)的產(chǎn)生、顯示的實(shí)現(xiàn)、以及按鍵的處

14、理等方面。基于軟件的秒脈沖信號(hào)通常有延時(shí)法和定時(shí)中斷法。延時(shí)法一般采用查詢方式,在延時(shí)子程序前后必然需要查詢和處理的程序,導(dǎo)致誤差的產(chǎn)生,因此其秒脈沖的精度不高;中斷法的原理是,利用單片機(jī)內(nèi)部的定時(shí)器溢出中斷來(lái)實(shí)現(xiàn)。本設(shè)計(jì)使定時(shí)器每50ms中斷1次,那么20次的周期為1s。這種實(shí)現(xiàn)法的特點(diǎn)是精度高,秒脈沖的發(fā)生和其他處理可以并行進(jìn)行。本系統(tǒng)中所使用的晶振頻率為12MHZ。3.2 主模塊的設(shè)計(jì)單片機(jī)系統(tǒng)初始化定時(shí)初始化中斷初始化串口初始化顯示待機(jī)指示符設(shè)定鬧鈴時(shí)間判設(shè)置鬧鈴時(shí)間否?顯示刷新啟動(dòng)走時(shí)有關(guān)變量初始化刷新顯示判時(shí)或分變化否?秒指示判秒到否?鬧鈴判是否到鬧鈴時(shí)間?延時(shí)YYYY主模塊是系統(tǒng)

15、軟件的主框架。結(jié)構(gòu)化程序設(shè)計(jì)一般有“自上而下和“自下而上兩種方式,“自上而下法的核心就是主框架的構(gòu)建。它的合理與否關(guān)系到程序最終的功能的多少和性能的好壞。本系統(tǒng)的主模塊的程序框圖如下列圖6所示: 圖6顯示是由顯示代碼取得相應(yīng)的段碼,顯示段碼數(shù)據(jù)的并行發(fā)送,用LED顯示器代替指針顯示進(jìn)而顯示時(shí)間,減小了計(jì)時(shí)誤差,這種表具有時(shí),分,秒顯示時(shí)間的功能,還可以進(jìn)行時(shí)和分的校對(duì),片選的靈活性好。程序流程如圖7所示。 圖73.4 時(shí)間設(shè)定模塊設(shè)計(jì)時(shí)間設(shè)定模塊的設(shè)計(jì)要點(diǎn)是按鍵的去抖處理與多種狀態(tài)公用一個(gè)鍵的處理問(wèn)題。即只涉及4個(gè)鍵完成了4位時(shí)間參數(shù)的設(shè)定。軟件法去抖動(dòng)的實(shí)質(zhì)是用延時(shí),即檢測(cè)到某一鍵狀態(tài)變化后

16、延時(shí)一段時(shí)間,再檢測(cè)該按鍵的狀態(tài)是否還保持著,如是那么作為按鍵處理,否那么,視為抖動(dòng),不予理睬。去抖中的延時(shí)時(shí)間一般參考資料多描述為10ms左右,實(shí)際應(yīng)用中,應(yīng)大于20ms,否那么,會(huì)導(dǎo)致按一次作屢次處理,影響程序正常執(zhí)行。按鍵消抖流程圖原理如圖8所示:圖8 鬧鈴功能的實(shí)現(xiàn)鬧鈴功能的實(shí)現(xiàn)涉及到兩個(gè)方面:鬧鈴時(shí)間設(shè)定和是否鬧鈴判別與相應(yīng)處理。鬧鈴時(shí)間設(shè)定模塊的設(shè)計(jì)可參照時(shí)間設(shè)定模塊,這里著重闡述鬧鈴判別與處理模塊的設(shè)計(jì)問(wèn)題。鬧鈴判別與鬧鈴處理的關(guān)鍵在于判別何時(shí)要進(jìn)行鬧鈴。在每次循環(huán)掃描的過(guò)程中,判斷現(xiàn)在的時(shí)間和定時(shí)的時(shí)間是否一致。一致的話,鬧鈴電路根據(jù)計(jì)時(shí)系統(tǒng)的輸出狀態(tài)產(chǎn)生一脈沖信號(hào),然后加上一

17、個(gè)高頻或低頻信號(hào)送到放大電路驅(qū)動(dòng)蜂鳴器發(fā)聲實(shí)現(xiàn)報(bào)時(shí)。時(shí)間調(diào)節(jié)電路根據(jù)不同狀態(tài)下的具體按鍵意義將相對(duì)應(yīng)的計(jì)數(shù)器加以改變,并通過(guò)數(shù)碼管顯示出來(lái)。具體如圖9示:時(shí)十位、個(gè)位,分十位、個(gè)位改變了設(shè)置鬧鈴標(biāo)志是否設(shè)置了鬧鈴去除鬧鈴標(biāo)志判當(dāng)前時(shí)間是設(shè)定時(shí)間中斷返回中斷返回鬧鈴判別處理圖9在該電子鐘的設(shè)計(jì)中修改定時(shí)或調(diào)整時(shí)間時(shí)采用了閃爍。在編程上,首先進(jìn)行了初始化定義了程序的入口地址以及中斷的入口地址,在主程序的開(kāi)始定義了一組固定單元用來(lái)存儲(chǔ)計(jì)數(shù)的秒,分,時(shí)以及定時(shí)時(shí)間的序號(hào)等。在顯示程序段中主要進(jìn)行了閃爍的處理,采用定時(shí)器中斷置標(biāo)志位,再與位選相互結(jié)合的方法來(lái)控制調(diào)時(shí)或定時(shí)中的閃爍。時(shí),分,秒顯示那么是用

18、了軟件譯碼(查表)的方式,再用了一段固定的程序段進(jìn)行進(jìn)制轉(zhuǎn)化。初始化之后,用中斷方式對(duì)其計(jì)數(shù),計(jì)數(shù)的同時(shí)采用了定時(shí)器比擬的方法,比擬當(dāng)前計(jì)數(shù)時(shí)間與定時(shí)時(shí)間是否相等,假設(shè)相等那么將鬧鈴標(biāo)志位置數(shù),使得蜂鳴器工作。4 Proteus軟件仿真本次課程設(shè)計(jì)所采用的程序調(diào)試軟件為wave6000集成調(diào)試軟件,所采用的仿真軟件為protus 6 professional軟件。本設(shè)計(jì)在Proteus軟件上進(jìn)行了仿真,實(shí)現(xiàn)了設(shè)計(jì)所要求的具體內(nèi)容。1、定時(shí)初值如圖10圖102、調(diào)整后的定時(shí)值如圖11圖113、時(shí)鐘顯示時(shí)間初值如圖12圖124、調(diào)整后的時(shí)間值如圖13圖13性能及誤差分析該作息時(shí)間控制器有四個(gè)按鍵:

19、 K1, K2,K3和K4。初始加電時(shí)數(shù)碼管顯示時(shí)鐘計(jì)數(shù)初值并運(yùn)行。按K1鍵進(jìn)行校時(shí),可以分別按K2和K3鍵進(jìn)行對(duì)時(shí)及分進(jìn)行單獨(dú)校時(shí),使其校正到標(biāo)準(zhǔn)時(shí)間;并按K4鍵退出。時(shí)鐘正常顯示運(yùn)行狀態(tài)時(shí),按K2鍵顯示閃爍并進(jìn)行定時(shí)時(shí)間設(shè)置,按K1鍵和K3進(jìn)行分和時(shí)的定時(shí)時(shí)間設(shè)定;并按K4鍵退出。該電路顯示的誤差主要由晶振自身的誤差所造成,晶振的誤差約為0. 00010. 000001。在軟件的編程過(guò)程中所產(chǎn)生的誤差比擬小,另外在中斷的過(guò)程中,只會(huì)在第一次計(jì)時(shí)時(shí)產(chǎn)生時(shí)間的偏移,而它所產(chǎn)生累計(jì)誤差很小,可以忽略。綜合以上分析,本次設(shè)計(jì)時(shí)鐘誤差較小,能得到比擬理想結(jié)果,性能穩(wěn)定。5課程設(shè)計(jì)體會(huì)本次是基于單片機(jī)

20、的開(kāi)發(fā)設(shè)計(jì),通過(guò)此次硬件和軟件的設(shè)計(jì),可以對(duì)單片機(jī)開(kāi)發(fā)設(shè)計(jì)有了更多的心得體會(huì)和了解,并掌握了一定的設(shè)計(jì)思想和硬件安裝分析調(diào)試技巧,對(duì)整個(gè)單片機(jī)開(kāi)發(fā)設(shè)計(jì)的流程有了更深刻的認(rèn)識(shí)和掌握。分析題目并結(jié)合實(shí)際,我們選擇了自己感興趣而且有很實(shí)用的電子時(shí)鐘作息控制器作為本次課程設(shè)計(jì)的題目。通過(guò)近兩周時(shí)間的學(xué)習(xí)和探索,使我對(duì)所學(xué)的知識(shí)進(jìn)行了系統(tǒng)的復(fù)習(xí)和穩(wěn)固,并得到了有效的應(yīng)用。在以前的學(xué)習(xí)過(guò)程中不夠清晰的概念得到了更好的理解。本次課程設(shè)計(jì)我們不但進(jìn)行了程序的編寫調(diào)試和設(shè)計(jì)報(bào)告的整理,更重要的是,我們做出了實(shí)際的設(shè)計(jì)作品,很好的培養(yǎng)和鍛煉了我的動(dòng)手能力,提高了分析軟硬件之間的差異和聯(lián)系的技巧。這不僅對(duì)我以后的學(xué)

21、習(xí)有幫助,還可以為以后的工作打下一定的根底。在此期間,通過(guò)與老師和同學(xué)們之間的交流,加強(qiáng)了自身的分析問(wèn)題、解決問(wèn)題的能力,并掌握了根本的設(shè)計(jì)思想,對(duì)以后的設(shè)計(jì)有很大的指導(dǎo)意義。此次軟硬結(jié)合的設(shè)計(jì)要求,充分調(diào)動(dòng)了我的積極性,對(duì)硬件的設(shè)計(jì)是最難忘的;調(diào)試硬件對(duì)設(shè)計(jì)者來(lái)說(shuō)是很有挑戰(zhàn)意義,更能考驗(yàn)設(shè)計(jì)者的耐心與毅力。當(dāng)然硬件需要軟件相結(jié)合,改變硬件后只要稍改程序就可以實(shí)現(xiàn)相同的功能要求。更可以通過(guò)本次的設(shè)計(jì)把設(shè)計(jì)思想應(yīng)用到更大的系統(tǒng)控制設(shè)計(jì)中。軟硬結(jié)合使我真正認(rèn)識(shí)到了理論與實(shí)際的區(qū)別,這在以后的工作和學(xué)習(xí)中給予我更好的提示,注重理論與實(shí)際相結(jié)合,注重分析選擇解決問(wèn)題的思路和方法,注重設(shè)計(jì)方案的分析選擇

22、和設(shè)計(jì)思想的分析選擇??傊敬卧O(shè)計(jì)讓我受益匪淺。參考文獻(xiàn)1 余發(fā)山,王福忠編著. 單片機(jī)原理及應(yīng)用技術(shù).徐州:中國(guó)礦業(yè)大學(xué)出版社,2021.2 陳奧初,竇振中等編著.單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與實(shí)踐.北京:北京航空航天大學(xué)出版社,1991.3單片機(jī)實(shí)用子程序集錦M.北京:3.附1 程序源代碼 K1 EQU P1.0 ;在程序開(kāi)始前定義變量 K2 K3 EQU ORG 0000H LJMP MAIN ORG 000BH LJMP TIME ORG 0100H ;主程序: MAIN:MOV SP,#50H MOV 20H,#00H ;時(shí)間 PIN SECONDMOV 21H,#00H ; PIN MIN

23、UTE MOV 22H,#00H ; PIN HOUR MOV 23H,#05H ;鬧鈴 PIN MINUTE MOV 24H,#06H ; PIN HOUR MOV 25H,#00H ;定義一個(gè)標(biāo)志位 MOV 30H,#00H ;時(shí)間 BCD SECOND MOV 31H,#00H ; MOV 32H,#00H ; BCD MINUTE MOV 33H,#00H ; MOV 34H,#00H ; BCD HOUR MOV 35H,#00H ; MOV 36H,#05H ;鬧鈴 BCD MINUTE MOV 37H,#00H ; MOV 38H,#06H ; BCD HOUR MOV 39H,

24、#00H CPL ; MOV TMOD,#01H ;16位計(jì)數(shù)器 T0,方式MOV TH0,#03CH ;賦初值 MOV TL0,#0B0H MOV IE,#87H ;開(kāi)中斷 T0,EA=1SETB TR0 ;T0啟動(dòng)計(jì)數(shù)MOV R2,#14H ;計(jì)數(shù)器MOV P2,#0FFH LOOP:LCALL TIMEPRO ; 調(diào)用現(xiàn)在時(shí)間與鬧鈴時(shí)間比擬程序 LCALL DISPLAY1 ; 調(diào)用現(xiàn)在時(shí)間顯示子程序 JB K1,M1 ; 判斷按鍵是否按下 LCALL XIAODOU1 ; 調(diào)用消抖程序 JC A1 LCALL SETTIME ; 調(diào)用設(shè)置現(xiàn)在時(shí)間子程序 LJMP LOOP M1:JB

25、K2,M2 ;判斷鍵是否按下 LCALL XIAODOU2 JC A2 LCALL SETATIME ; 調(diào)用設(shè)置鬧鐘的程序 LJMP LOOP M2:JB K4,M3 A3:LCALL XIAODOU3 JC A4 M3:LJMP LOOPSETTIME: L0:LCALL DISPLAY1 JB K2,L1 LCALL XIAODOU4 JC A5 INC 22H MOV A,22H CJNE A,#18H,GO12 MOV 22H,#00H MOV 34H,#00H MOV 35H,#00H LJMP L0 L1:JB K3,L2 LCALL XIAODOU5 JC A6 INC 21H

26、 MOV A,21H CJNE A,#3CH,GO11 MOV 21H,#00H MOV 32H,#00H MOV 33H,#00H LJMP L0 GO11:MOV B,#0AH DIV AB MOV 32H,B MOV 33H,A LJMP L0 GO12:MOV B,#0AH DIV AB MOV 34H,B MOV 35H,A LJMP L0 L2:JB K4,L0 LCALL XIAODOU3 JC AX RETSETATIME:LCALL DISPLAY2 ;調(diào)用鬧鐘設(shè)置,鬧鈴響時(shí)的顯示程序 N0:LCALL DISPLAY2 JB K3,N1 LCALL XIAODOU6 JC

27、A7 INC 24H MOV A,24H CJNE A,#24,GO22 MOV 24H,#00H MOV 38H,#00H MOV 39H,#00H LJMP N0 N1:JB K1,N2 LCALL XIAODOU7 JC A8 INC 23H MOV A,23H CJNE A,#60,GO21 MOV 23H,#00H MOV 36H,#00H MOV 37H,#00H LJMP N0 GO21:MOV B,#0AH DIV AB MOV 36H,B MOV 37H,A LJMP N0 GO22:MOV B,#0AH DIV AB MOV 38H,B MOV 39H,A LJMP N0

28、N2:JB K4,N0 LCALL XIAODOU3 JC A9 RETTIMEPRO:MOV A,21H MOV B,23H CJNE A,B,BK MOV A,22H MOV B,24H CJNE A,B,BK JC XX XX:LCALL TIMEOUT BK:RET TIMEOUT: X1:LCALL BZ LCALL DISPLAY2 JB K4, X1 RET BZ:SETB MOV R7,#250 T2:MOV R6,#124 T3:DJNZ R6,T3 DJNZ R7,T2 CLR JB K4,XY LCALL XIAODOU3 JC XY1 XY:RET XY1:LJMP L

29、OOPXIAODOU1:LCALL DISPLAY1 JB K1,XIAODOU1 MOV C,K1 JC XIAODOU1 LCALL DELAY MOV C,K1 JC XIAODOU1 STOP1:MOV C,K1 JNC STOP1 LCALL DELAY MOV C,K1 JNC STOP1 RET XIAODOU2:LCALL DISPLAY2 JB K2,XIAODOU2 MOV C,K2 JC XIAODOU2 LCALL DELAY MOV C,K2 JC XIAODOU2 STOP2:MOV C,K2 JNC STOP2 LCALL DELAY MOV C,K2 JNC S

30、TOP2 RET XIAODOU3:LCALL DISPLAY1 JB K4,XIAODOU3 MOV C,K4 JC XIAODOU3 LCALL DELAY MOV C,K4 JC XIAODOU3 STOP3:MOV C,K4 JNC STOP3 LCALL DELAY MOV C,K4 JNC STOP3 RET XIAODOU4:LCALL DISPLAY1 JB K2,XIAODOU4 MOV C,K2 JC XIAODOU4 LCALL DELAY MOV C,K2 JC XIAODOU4 STOP4:MOV C,K2 JNC STOP4 LCALL DELAY MOV C,K2

31、 JNC STOP4 RET XIAODOU5:LCALL DISPLAY1 JB K3,XIAODOU5 MOV C,K3 JC XIAODOU5 LCALL DELAY MOV C,K3 JC XIAODOU5 STOP5:MOV C,K3 JNC STOP5 LCALL DELAY MOV C,K3 JNC STOP5 RET XIAODOU6:LCALL DISPLAY2 JB K3,XIAODOU6 MOV C,K3 JC XIAODOU6 LCALL DELAY MOV C,K3 JC XIAODOU6 STOP6:MOV C,K3 JNC STOP6 LCALL DELAY MOV C,K3 JNC STOP6 RET XIAODOU7:LCALL DISPLAY2 JB K1,XIAODOU7 MOV C,K1 JC XIAODOU7 LCALL DELAY MOV C,K1 JC XIAODOU7 STOP7:MOV C,K1 JNC STOP7 LCALL DELAY MOV C,K1 JNC STOP7 RETDELAY:MOV R4,#14H DL00:MOV R5,#0F

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論