畢業(yè)論文-----電子時(shí)鐘設(shè)計(jì)_第1頁(yè)
已閱讀1頁(yè),還剩33頁(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、<p><b>  《單片機(jī)技術(shù)》</b></p><p><b>  課程設(shè)計(jì)說(shuō)明書</b></p><p>  課題名稱:基于單片機(jī)的電子鐘的設(shè)計(jì)</p><p>  專業(yè)名稱: </p><p>  學(xué)生班級(jí): 自本0403班

2、</p><p>  學(xué)生姓名: </p><p>  學(xué)生學(xué)號(hào): </p><p>  指導(dǎo)教師: </p><p><b>  課程設(shè)計(jì)任務(wù)書</b></p><p>  課

3、程: 單片機(jī)技術(shù) </p><p>  課程設(shè)計(jì)題目: 基于單片機(jī)的電子鐘的設(shè)計(jì) </p><p>  基于單片機(jī)的頻率計(jì)的設(shè)計(jì) </p><p>  適 用 班 級(jí): </p><p>  時(shí) 間: 2007~2008學(xué)年第一學(xué)期 </p>&l

4、t;p>  指 導(dǎo) 教 師: </p><p>  《單片機(jī)技術(shù)》課程設(shè)計(jì)任務(wù)書</p><p>  一、設(shè)計(jì)題目:基于單片機(jī)的電子鐘的設(shè)計(jì)、基于單片機(jī)的頻率計(jì)的設(shè)計(jì)</p><p>  二、適用班級(jí):自本0401~0403</p><p><b>  三、指導(dǎo)教師:xx</b>

5、;</p><p><b>  四、任務(wù)與要求:</b></p><p>  1、本課題任務(wù)如下:</p><p>  (1)、基于單片機(jī)的電子鐘的設(shè)計(jì)</p><p>  設(shè)計(jì)一個(gè)具有特定功能的電子鐘。該電子鐘上電或按鍵復(fù)位后能自動(dòng)顯示系統(tǒng)提示符“P.”, 進(jìn)入時(shí)鐘準(zhǔn)備狀態(tài);第一次按電子鐘啟動(dòng)/調(diào)整鍵,電子鐘從0時(shí)0分

6、0秒開(kāi)始運(yùn)行,進(jìn)入時(shí)鐘運(yùn)行狀態(tài);再次按電子鐘啟動(dòng)/調(diào)整鍵,則電子鐘進(jìn)入時(shí)鐘調(diào)整狀態(tài),此時(shí)可利用各調(diào)整鍵調(diào)整時(shí)間,調(diào)整結(jié)束后可按啟動(dòng)/調(diào)整鍵再次進(jìn)入時(shí)鐘運(yùn)行狀態(tài)。</p><p>  (2)、基于單片機(jī)的頻率計(jì)的設(shè)計(jì)</p><p>  設(shè)計(jì)一個(gè)能夠測(cè)量矩形波信號(hào)的頻率、周期、脈寬、占空比的頻率計(jì)。該頻率計(jì)上電或按鍵復(fù)位后能自動(dòng)顯示系統(tǒng)提示符“P.”, 進(jìn)入測(cè)量準(zhǔn)備狀態(tài)。按頻率測(cè)量鍵則測(cè)量頻

7、率;按周期測(cè)量鍵則測(cè)量周期;按脈寬測(cè)量鍵則測(cè)量脈寬;按占空比測(cè)量鍵則測(cè)量占空比。</p><p>  2、本課題可選擇設(shè)計(jì)方案如下:</p><p>  (1)、基于單片機(jī)并行口的設(shè)計(jì)</p><p>  在AT89S52的P0口和P2口上外接LED數(shù)碼管顯示器,P0口作LED數(shù)碼管顯示器的段控口,P2口作LED數(shù)碼管顯示器的位控口,P1口外接四個(gè)按鍵A、B、C、D

8、。</p><p> ?。?)、基于單片機(jī)串行口的設(shè)計(jì)</p><p>  將AT89S52的串行口擴(kuò)展成并行口,外接LED數(shù)碼管顯示器;P1口外接四個(gè)按鍵A、B、C、D。</p><p> ?。?)、基于Intel 8279的設(shè)計(jì)</p><p>  利用Intel 8279芯片為AT89S52擴(kuò)展并行口,通過(guò)Intel 8279外接LED

9、數(shù)碼管顯示器和四個(gè)按鍵A、B、C、D構(gòu)成的鍵盤。</p><p> ?。?)、基于Intel 8155的設(shè)計(jì)</p><p>  利用Intel 8155芯片為AT89S52擴(kuò)展并行口,通過(guò)Intel 8155外接LED數(shù)碼管顯示器和四個(gè)按鍵A、B、C、D構(gòu)成的鍵盤。</p><p> ?。?)、基于Intel 8255的設(shè)計(jì)</p><p>

10、;  利用Intel 8255芯片為AT89S52擴(kuò)展并行口,通過(guò)Intel 8255外接LED數(shù)碼管顯示器和四個(gè)按鍵A、B、C、D構(gòu)成的鍵盤。</p><p>  3、本課題基本要求如下:</p><p> ?。?)、基于單片機(jī)的電子鐘的設(shè)計(jì)</p><p>  LED數(shù)碼管顯示器顯示當(dāng)前時(shí)間;四個(gè)按鍵的功能:A鍵用于電子鐘啟動(dòng)/調(diào)整;B鍵用于調(diào)時(shí),范圍0-23,

11、0為24點(diǎn),每按一次時(shí)加1;C鍵用于調(diào)分,范圍0-59,0 為60分,每按一次分加1;D鍵用于調(diào)秒, 范圍0-59,0為60秒,每按一次秒加1;</p><p> ?。?)、基于單片機(jī)的頻率計(jì)的設(shè)計(jì)</p><p>  LED數(shù)碼管顯示器顯示被測(cè)信號(hào)的頻率、周期、脈寬、占空比;四個(gè)按鍵的功能:A鍵用于測(cè)量頻率;B鍵用于測(cè)量周期;C鍵用于測(cè)量脈寬;D鍵用于測(cè)量占空比;</p>

12、<p> ?。?)、以上兩個(gè)課題可以任選其一或全選,學(xué)生也可以自定課題;</p><p>  (4)、編程語(yǔ)言:匯編或C51;</p><p>  (5)、計(jì)算機(jī)打印《單片機(jī)技術(shù)》課程設(shè)計(jì)說(shuō)明書一份;</p><p> ?。?)、設(shè)計(jì)時(shí)間:二周;</p><p> ?。?)、實(shí)物制作或Proteus仿真;</p>&l

13、t;p>  (8)、人員分組:一人一組或多人一組(不超4人)。</p><p>  五、《單片機(jī)技術(shù)》課程設(shè)計(jì)說(shuō)明書正文主要內(nèi)容</p><p>  參照“《單片機(jī)技術(shù)》課程設(shè)計(jì)說(shuō)明書正文主要內(nèi)容”文件。</p><p>  六、《單片機(jī)技術(shù)》課程設(shè)計(jì)說(shuō)明書書寫格式</p><p>  參照“《單片機(jī)技術(shù)》課程設(shè)計(jì)說(shuō)明書書寫格式”文件。

14、</p><p><b>  七、參考資料</b></p><p>  1、曹巧媛,單片機(jī)原理及應(yīng)用[M],北京:電子工業(yè)出版社,1997.7;</p><p>  2、趙秀珍,單永磊,單片微型計(jì)算機(jī)原理及其應(yīng)用[M],北京:中國(guó)水利水電出版社,2001.8;</p><p>  3、張毅剛,修林成,胡振江,MCS-51

15、單片機(jī)應(yīng)用設(shè)計(jì)[M],哈爾濱:哈爾濱工業(yè)大學(xué)出版社,1990.8;</p><p>  4、張洪潤(rùn),蘭清華,單片機(jī)應(yīng)用技術(shù)教程[M],北京:清華大學(xué)出版社,1997.11;。</p><p>  5、李華,MCS-51系列單片機(jī)實(shí)用接口技術(shù)[M],北京:北京航空航天大學(xué)出版社,1993.8;</p><p>  6、陳景初,單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與實(shí)踐[M],北京:北京

16、航空航天大學(xué)出版社;</p><p>  7、馬忠梅,單片機(jī)的C語(yǔ)言Windows環(huán)境編程寶典[M], 北京:北京航空航天大學(xué)出版社,2003.6;    </p><p>  8、李光飛,單片機(jī)C程序設(shè)計(jì)指導(dǎo)[M],北京:北京航空航天大學(xué)出版社,2003.01 ;</p><p>  9、李光飛,單片機(jī)課程設(shè)計(jì)實(shí)例指導(dǎo)[M],北京:北京航空航天大學(xué)出版社,2004

17、.9。</p><p><b>  電氣自動(dòng)化教研室</b></p><p>  2007年9月10日</p><p><b>  摘 要</b></p><p>  時(shí)鐘,自從它發(fā)明的那天起,就成為人類的朋友,但隨著時(shí)間的推移,科學(xué)技術(shù)的不斷發(fā)展,人們對(duì)時(shí)間計(jì)量的精度要求越來(lái)越高,應(yīng)用越來(lái)越廣。怎

18、樣讓時(shí)鐘更好的為人民服務(wù),怎樣讓我們的老朋友煥發(fā)青春呢?這就要求人們不斷設(shè)計(jì)出新型時(shí)鐘。 數(shù)字電子鐘的設(shè)計(jì)方法有多種,其中,利用單片機(jī)實(shí)現(xiàn)的電子鐘具有編程靈活,便于電子鐘功能的擴(kuò)充,即可用該電子鐘發(fā)出各種控制信號(hào),精確度高等特點(diǎn),同時(shí)可以用該電子鐘發(fā)出各種控制信號(hào)。</p><p>  本文主要介紹用單片機(jī)內(nèi)部的定時(shí)/計(jì)數(shù)器來(lái)實(shí)現(xiàn)電子時(shí)鐘的方法,本設(shè)計(jì)由單片機(jī)AT89S52芯片和LED數(shù)碼管為核心,輔以

19、必要的電路,構(gòu)成了一個(gè)單片機(jī)電子時(shí)鐘。與傳統(tǒng)機(jī)械表相比,它具有走時(shí)精確,顯示直觀等特點(diǎn)。它的計(jì)時(shí)周期為24小時(shí),顯滿刻度為“23時(shí)59分59秒”,另外具有校時(shí)功能等特點(diǎn)。該電子鐘可以做到的功能:</p><p>  上電或按鍵復(fù)位后能自動(dòng)顯示系統(tǒng)提示符“P.”進(jìn)入時(shí)鐘準(zhǔn)備狀態(tài)2.第一次按電子鐘啟動(dòng)/調(diào)整鍵,電子鐘從0時(shí)0分0秒開(kāi)始運(yùn)行,進(jìn)入時(shí)鐘運(yùn)行狀態(tài)。再次按電子鐘啟動(dòng)/調(diào)整鍵,則電子鐘進(jìn)入時(shí)鐘調(diào)整狀態(tài),此時(shí)可利

20、用各調(diào)整鍵調(diào)整時(shí)間,調(diào)整結(jié)束后可按啟動(dòng)/調(diào)整鍵再次進(jìn)入時(shí)鐘運(yùn)行狀態(tài)。通過(guò)設(shè)置的A、B、C、D四個(gè)鍵來(lái)調(diào)整運(yùn)行,并且利用了8位LED顯示時(shí)分秒。</p><p>  此電子鐘嚴(yán)格按照要求設(shè)計(jì),最終達(dá)到預(yù)期的效果,能夠正確顯示“P”點(diǎn)以及時(shí)分秒的計(jì)時(shí),算是一次比較成功的設(shè)計(jì)了。</p><p>  關(guān)鍵詞:電子鐘,單片機(jī),匯編</p><p><b>  目

21、 錄</b></p><p>  第1章 電子鐘功能及總體方案的介紹1</p><p>  1.1電子鐘功能介紹1</p><p>  1.1.1基本功能要求1</p><p>  1.1.2擴(kuò)展功能要求1</p><p>  1.2總體方案介紹2</p><p>  

22、1.2.1計(jì)時(shí)方案2</p><p>  1.2.2鍵盤/顯示方案2</p><p>  第2章 電子鐘的工作原理3</p><p>  2.1實(shí)現(xiàn)時(shí)鐘計(jì)時(shí)的基本方法3</p><p>  2.2電子鐘的時(shí)間顯示3</p><p>  2.3電子鐘的啟、停及時(shí)間調(diào)整3</p><p&

23、gt;  第3章 電子鐘原理圖及元件清單4</p><p>  3.1電子鐘電路原理圖4</p><p><b>  3.2元件清單4</b></p><p>  第4章 軟件系統(tǒng)設(shè)計(jì)5</p><p>  4.1電子鐘程序流程框圖5</p><p>  4.1.1主程序流程框圖

24、5</p><p>  4.1.2鍵掃子程序流程框圖6</p><p>  4.1.3中斷服務(wù)程序流程框圖7</p><p>  4.1.5顯示子程序流程框圖9</p><p>  4.1.6加一子程序流程框圖10</p><p>  4.2電子鐘總體程序清單11</p><p> 

25、 第5章 電子鐘的使用說(shuō)明及調(diào)試運(yùn)行19</p><p>  5.1使用說(shuō)明書19</p><p>  5.1.1操作說(shuō)明19</p><p>  5.2電子鐘運(yùn)行結(jié)果19</p><p>  5.2.1待機(jī)19</p><p>  5.2.2啟動(dòng)19</p><p>  5.2

26、.3運(yùn)行20</p><p>  第6章 誤差分析21</p><p>  第7章 設(shè)計(jì)體會(huì)22</p><p><b>  教學(xué)建議23</b></p><p><b>  參考資料24</b></p><p><b>  附 錄25</

27、b></p><p><b>  致 謝26</b></p><p>  第1章電子鐘功能及總體方案的介紹</p><p>  1.1電子鐘功能介紹</p><p>  1.1.1基本功能要求</p><p>  可調(diào)整運(yùn)行的電子鐘具有三種工作狀態(tài):“P.”狀態(tài)、運(yùn)行狀態(tài)、調(diào)整狀態(tài)。&l

28、t;/p><p> ?。?)、“P.”狀態(tài),依靠上電或按復(fù)位鍵進(jìn)入,在此狀態(tài)下,按B、C、D鍵均無(wú)效,按A鍵有效,進(jìn)入運(yùn)行狀態(tài);</p><p> ?。?)、運(yùn)行狀態(tài),按奇數(shù)次A鍵進(jìn)入,在此狀態(tài)下,按B、C、D鍵均無(wú)效,只有按A鍵有效,按下A鍵后,退出運(yùn)行狀態(tài),進(jìn)入調(diào)整狀態(tài);</p><p> ?。?)、調(diào)整狀態(tài),按偶數(shù)次A鍵進(jìn)入,在此狀態(tài)下,按A、B、C、D鍵均有效。

29、如按下A鍵,則退出調(diào)整狀態(tài),進(jìn)入運(yùn)行狀態(tài);按下B、C、D鍵,則分別對(duì)時(shí)、分、秒加1,調(diào)整結(jié)束后必須按A鍵,即可退出調(diào)整狀態(tài),進(jìn)入運(yùn)行狀態(tài)。</p><p><b>  基本功能要求:</b></p><p>  “P.”穩(wěn)定地顯示在LED顯示器的最左端數(shù)碼管(LED5)上,無(wú)A鍵按下(在“P.”狀態(tài)下,按下B、C、D鍵無(wú)效),則不進(jìn)入電子鐘的運(yùn)行狀態(tài),繼續(xù)顯示“P.”

30、。</p><p>  按下A 鍵后,電子鐘以起始時(shí)間:00時(shí)00分00秒開(kāi)始運(yùn)行。</p><p>  再次按下A 鍵后,電子鐘退出運(yùn)行狀態(tài),進(jìn)入調(diào)整狀態(tài),利用B、C、D鍵把電子鐘的顯示時(shí)間修改為當(dāng)前實(shí)時(shí)時(shí)間,時(shí)間修改正確后可再次按下A鍵,電子鐘則退出調(diào)整狀態(tài),進(jìn)入運(yùn)行狀態(tài)。</p><p>  注意:每次按下B、C、D鍵,只允許加一,不允許連加。</p&g

31、t;<p>  1.1.2擴(kuò)展功能要求</p><p> ?。?)、在調(diào)整狀態(tài)下,按下B、C、D鍵,允許連加,而A鍵無(wú)論在何種狀態(tài)下,均不允許連擊;</p><p> ?。?)、時(shí)、分、秒的間隔符“。”以一定頻率閃爍;</p><p> ?。?)、時(shí)間顯示以“滅零”方式進(jìn)行;</p><p> ?。?)、可調(diào)整運(yùn)行的電子鐘用兩個(gè)

32、按鍵(例如:A鍵、B鍵)來(lái)控制。</p><p><b>  1.2總體方案介紹</b></p><p><b>  1.2.1計(jì)時(shí)方案</b></p><p>  利用AT89S52單片機(jī)內(nèi)部的定時(shí)/計(jì)數(shù)器進(jìn)行中斷定時(shí),配合軟件延時(shí)實(shí)現(xiàn)時(shí)、分、秒的計(jì)時(shí)。該方案節(jié)省硬件成本,且能使讀者在定時(shí)/計(jì)數(shù)器的使用、中斷及程序設(shè)計(jì)方

33、面得到鍛煉與提高,對(duì)單片機(jī)的指令系統(tǒng)能有更深入的了解,從而對(duì)學(xué)好單片機(jī)技術(shù)這門課程起到一定的作用。</p><p>  1.2.2鍵盤/顯示方案</p><p>  AT89S52的P0口和P2口外接由六個(gè)LED數(shù)碼管(LED5~LED0)構(gòu)成的顯示器,用P0口作LED的段碼輸出口,P2口作六個(gè)LED數(shù)碼管的位控輸出線,P1口外接四個(gè)按鍵A、B、C、D構(gòu)成鍵盤電路。</p>

34、<p>  AT89S52 是一種低功耗,高性能的CMOS 8位微型計(jì)算機(jī)。它帶有8K Flash 可編程和擦除的只讀存儲(chǔ)器(EPROM),該器件采用ATMEL的高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)上標(biāo)準(zhǔn)的80C51和80C52的指令系統(tǒng)及引腳兼容,片內(nèi)Flash 集成在一個(gè)芯片上,可用與解決復(fù)雜的問(wèn)題,且成本較低。簡(jiǎn)易電子鐘的功能不復(fù)雜,采用其現(xiàn)有的I/O便可完成,所以本書中采用此的設(shè)計(jì)方案,結(jié)構(gòu)如圖1-1如示。</p

35、><p>  第2章電子鐘的工作原理</p><p>  2.1實(shí)現(xiàn)時(shí)鐘計(jì)時(shí)的基本方法</p><p>  利用MCS-51系列單片機(jī)的可編程定時(shí)/計(jì)數(shù)器、中斷系統(tǒng)來(lái)實(shí)現(xiàn)時(shí)鐘計(jì)數(shù)。</p><p>  (1) 計(jì)數(shù)初值計(jì)算:</p><p>  把定時(shí)器設(shè)為工作方式1,定時(shí)時(shí)間為50ms,則計(jì)數(shù)溢出20次即得時(shí)鐘計(jì)時(shí)最小

36、單位秒,而100次計(jì)數(shù)可用軟件方法實(shí)現(xiàn)。</p><p>  假設(shè)使用T/C0,方式1,50ms定時(shí),fosc=12MHz。</p><p>  則初值X滿足(216-X)×1/12MHz×12μs =50000μs</p><p>  X=15536→0011110010110000→3CB0H</p><p>  (2

37、) 采用中斷方式進(jìn)行溢出次數(shù)累計(jì),計(jì)滿20次為秒計(jì)時(shí)(1秒);</p><p>  (3) 從秒到分和從分到時(shí)的計(jì)時(shí)是通過(guò)累加和數(shù)值比較實(shí)現(xiàn)。</p><p>  2.2電子鐘的時(shí)間顯示</p><p>  電子鐘的時(shí)鐘時(shí)間在六位數(shù)碼管上進(jìn)行顯示,因此,在內(nèi)部RAM中設(shè)置顯示緩沖區(qū)共8個(gè)單元。</p><p>  LED8LED7LED6

38、LED5LED4LED3LED2LED1</p><p>  37H36H35H34H33H32H31H30H</p><p>  時(shí)十位時(shí)個(gè)位分隔分十位分個(gè)位分隔秒十位秒個(gè)位</p><p>  2.3電子鐘的啟、停及時(shí)間調(diào)整</p><p>  電子鐘設(shè)置4個(gè)按鍵通過(guò)程序控制來(lái)完成電子鐘的啟、停及時(shí)間

39、調(diào)整。</p><p>  A鍵控制電子鐘的啟、停;</p><p><b>  B鍵調(diào)整時(shí);</b></p><p><b>  C鍵調(diào)整分;</b></p><p><b>  D鍵調(diào)整秒。</b></p><p>  第3章 電子鐘原理圖及元件清

40、單</p><p>  3.1電子鐘電路原理圖</p><p>  電子鐘原理圖 (見(jiàn)附錄1)</p><p><b>  3.2元件清單</b></p><p>  電子鐘元件清單如表1所示:</p><p>  表1 電子鐘元器件清單</p><p>  第4章軟件系

41、統(tǒng)設(shè)計(jì)</p><p>  4.1電子鐘程序流程框圖</p><p>  4.1.1主程序流程框圖</p><p><b>  見(jiàn)圖4-1所示</b></p><p>  4.1.2鍵掃子程序流程框圖</p><p><b>  見(jiàn)圖4-2所示</b></p>

42、<p>  4.1.3中斷服務(wù)程序流程框圖</p><p><b>  見(jiàn)圖4-3所示</b></p><p>  4.1.4“P.”點(diǎn)顯示子程序流程框圖</p><p><b>  見(jiàn)圖4-4所示</b></p><p>  4.1.5顯示子程序流程框圖</p><p

43、><b>  見(jiàn)圖4-5所示</b></p><p>  4.1.6加一子程序流程框圖</p><p><b>  見(jiàn)圖4-6所示</b></p><p>  4.2電子鐘總體程序清單</p><p>  ORG 0000H</p><p>  AJMP

44、MAIN</p><p>  ORG 000BH</p><p>  LJMP INTT0</p><p>  ORG 0030H</p><p>  MAIN: MOV SP, #60H;確立堆棧區(qū)</p><p>  MOV PSW, #00H

45、 ;</p><p>  MOV R0, #20H ;RAM區(qū)首地址</p><p>  MOV R7, #5FH ;RAM區(qū)單元個(gè)數(shù)</p><p>  QL: MOV @R0, #00H ;RAM清零<

46、;/p><p>  INC R0</p><p>  DJNZ R7, QL</p><p>  MOV IP, #02H ;IP初始化,優(yōu)先定時(shí)器0</p><p>  MOV IE, #82H ;IE初始化, </

47、p><p>  MOV TMOD, #01H ;定時(shí)器0方式1工作</p><p>  LCALL PP;調(diào)P.子程序</p><p>  NEXT: LCALL KEY ;按鍵檢測(cè)子程序</p><p>  JBACC.0, RUNF

48、 ;A鍵按下運(yùn)行</p><p>  LCALL DISP ;調(diào)用顯示子程序</p><p>  SJMP NEXT</p><p>  RUNF: LCALL OUTT;調(diào)傳送子程序</p><p>  LCALL TIME

49、;開(kāi)電子鐘</p><p>  JK: LCALL DISP;調(diào)用顯示子程序</p><p>  LCALL KEY ;按鍵檢測(cè)子程序</p><p>  JZ JK</p><p>  LCALL ANKEY</p><p>  L

50、CALL DISP ;調(diào)用顯示子程序</p><p>  SJMP JK</p><p>  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;</p><p>  ;;;;;;;;;;; P點(diǎn)顯示 ;;;;;;;;;;;</p><p>

51、  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;</p><p>  PP: MOV 37H, #12;P點(diǎn)編碼送寄存器</p><p>  MOV R0, #30H;P點(diǎn)編碼送寄存器</p><p>  MOV R7, #07H</p>

52、<p>  PPP: MOV @R0, #10</p><p>  INC R0</p><p>  DJNZ R7, PPP</p><p><b>  RET</b></p><p>  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

53、;;;;;</p><p>  ;;;;;;;;;;; 鍵掃子程序 ;;;;;;;;;;;</p><p>  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;</p><p>  KEY: LCALL KEYS ;調(diào)鍵值處理子程序</p><p>  JZ EXIT

54、 ;沒(méi)有鍵按下轉(zhuǎn)到返回</p><p>  LCALL DISP</p><p>  LCALL DISP ;調(diào)顯示去抖動(dòng)</p><p>  LCALL KEYS </p><p>  JZ EXIT</p><p>  MOV B, 20

55、H ;保存鍵值</p><p>  KEYSF: LCALL KEYS ;調(diào)鍵值處理子程序</p><p>  JZ KEYY ;鍵釋放,轉(zhuǎn)到恢復(fù)鍵值</p><p>  LCALL DISP ;調(diào)顯示子程序延時(shí)</p><p>  AJMP KEYSF

56、 ;等到鍵釋放</p><p>  KEYY: MOV A, B ;鍵值送20H單元保存</p><p>  EXIT: RET ;返回</p><p>  KEYS:MOV P1, #0FFH ;先向P1口寫1</p><p>  MOV

57、A, P1 ;P1口值送累加器A</p><p>  CPL A ;A值取反</p><p>  ANL A, #0FH ;保存P1口的低4位</p><p>  MOV 20H, A ;A值送20H保存</p><p><b&g

58、t;  RET</b></p><p>  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;</p><p>  ;;;;;;;;;;; 鍵功能子程序 ;;;;;;;;;;;</p><p>  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;</p><p>  

59、ANKEY: CLR EA;關(guān)中斷</p><p>  CHECK: JB TR0, YXZ;判斷是否運(yùn)行</p><p>  K0: CJNE A, #01H, K1</p><p>  AJMP RUN ;轉(zhuǎn)運(yùn)行</p

60、><p>  K1: CJNE A, #02H, K2</p><p>  AJMP KEY1 ;轉(zhuǎn)時(shí)調(diào)整</p><p>  K2: CJNE A, #04H, K3</p><p>  AJMP KEY2

61、 ;轉(zhuǎn)分調(diào)整</p><p>  K3: CJNE A, #08H, OUT</p><p>  AJMP KEY3 ;轉(zhuǎn)秒調(diào)整</p><p>  YXZ: JB ACC.0, STOP</p><p>  AJMP

62、 OUT</p><p>  KEY1: MOV R0, #45H;時(shí)調(diào)整</p><p>  LCALL ADD1</p><p><b>  CLR C</b></p><p>  CJNE A, #24H, OUTT</p>&l

63、t;p>  ACALL CLR0</p><p>  AJMP OUTT</p><p>  KEY2: MOV R0, #43H;分調(diào)整</p><p>  LCALL ADD1</p><p><b>  CLR C</b></p><p

64、>  CJNE A, #60H, OUTT</p><p>  ACALL CLR0</p><p>  AJMP OUTT</p><p>  KEY3: MOV R0,#41H ;秒調(diào)整</p><p>  ACALL ADD1 </p><p&g

65、t;<b>  CLR C</b></p><p>  CJNE A,#60H,OUTT </p><p>  ACALL CLR0</p><p>  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;</p><p>  ;;;;;;;;;;; 傳送顯示數(shù)據(jù)

66、;;;;;;;;;;;</p><p>  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;</p><p>  OUTT: MOV 30H,40H;秒顯示單元41H-42H</p><p>  MOV 31H,41H </p><p>  MOV 32H,#11 ;

67、"-"</p><p>  MOV 33H,42H ;分顯示單元43H-44H</p><p>  MOV 34H,43H</p><p>  MOV 35H,#11 ; "-"</p><p>  MOV 36H, 44H ;時(shí)顯示單元44

68、-45H</p><p>  MOV 37H, 45H</p><p><b>  RET</b></p><p>  STOP: CLRTR0 ;關(guān)電子鐘并跳出</p><p><b>  RET</b></p><p>

69、  RUN: LCALL TIME;運(yùn)行電子鐘</p><p>  OUT: SETB EA ;無(wú)鍵按下或完成功能跳出</p><p><b>  RET</b></p><p>  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;&

70、lt;/p><p>  ;;;;;;;;;;; 運(yùn)行電子鐘 ;;;;;;;;;;;</p><p>  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;</p><p>  TIME: SETB EA</p><p>  MOV TL0, #0B0H </p>

71、;<p>  MOV TH0, #3CH ;3CB0H</p><p>  MOV R4, #20 ;50ms,20次循環(huán)</p><p>  SETB TR0 ;啟動(dòng)定時(shí)器0</p><p><b

72、>  RET</b></p><p>  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;</p><p>  ;;;;;;;;;;; 定時(shí)中斷 ;;;;;;;;;;;</p><p>  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;</p><p&g

73、t;  INTT0: PUSH ACC</p><p>  PUSH PSW</p><p><b>  CLRET0</b></p><p>  CLR TR0</p><p>  MOV TL0, #0B0H ;重新設(shè)定定時(shí)初值</p>

74、<p>  MOV TH0, #3CH</p><p>  SETB TR0 ;啟動(dòng)定時(shí)器0</p><p>  DJNZ R4, OUTT0 ;1秒到</p><p>  ADDSS:MOV R4,#14H ;20次計(jì)數(shù)&l

75、t;/p><p>  MOV R0,#41H;秒十位</p><p>  ACALL ADD1 ;加1程序 </p><p><b>  CLR C</b></p><p>  CJNE A,#60H,ADDMM ;1分到</p><p&

76、gt;  ADDMM: JC OUTT0</p><p>  ACALL CLR0</p><p>  MOV R0,#43H</p><p>  ACALL ADD1 ;加1程序</p><p><b>  CLR C</b></p><p>  CJN

77、E A,#60H,ADDHH ;1小時(shí)到</p><p>  ADDHH: JC OUTT0</p><p>  ACALL CLR0</p><p>  MOV R0,#45H</p><p>  ACALL ADD1 ;加1程序 </p><p><b&g

78、t;  CLR C</b></p><p>  CJNE A,#24H,HOUR ;1天到</p><p>  HOUR: JCOUTT0 </p><p>  ACALL CLR0</p><p>  OUTT0:MOV 30H,40H;秒顯示單元41H-42H</p&

79、gt;<p>  MOV 31H,41H </p><p>  MOV 32H,#11 ; "-"</p><p>  MOV 33H,42H ;分顯示單元43H-44H</p><p>  MOV 34H,43H</p><p>  MOV 35H,#

80、11 ; "-"</p><p>  MOV 36H, 44H ;時(shí)顯示單元44-45H</p><p>  MOV 37H, 45H</p><p><b>  POP PSW</b></p><p><b>  POP ACC</b&g

81、t;</p><p>  SETB ET0</p><p><b>  RETI</b></p><p>  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;</p><p>  ;;;;;;;;;;; 時(shí)間清零子程序 ;;;;;;;;;;;</p><p> 

82、 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;</p><p>  CLR0: CLR A</p><p>  MOV @R0,A</p><p><b>  DEC R0</b></p><p>  MOV @R0,A</p><p>

83、<b>  RET</b></p><p>  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;</p><p>  ;;;;;;;;;;; 加一子程序 ;;;;;;;;;;;</p><p>  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;</p><

84、;p>  ADD1: MOV A,@R0 ;取十位</p><p>  DEC R0 </p><p>  SWAP A </p><p>  ORL A,@R0 ;組合十位與個(gè)位</p><p>  ADD A,#01H ;加1</p><p&

85、gt;  DAA ;十進(jìn)制調(diào)整</p><p>  MOV R3,A ;暫存</p><p>  ANL A,#0FH ;屏蔽十位</p><p>  MOV @R0,A ;放入個(gè)位單元</p><p>  MOV A,R3 ;取值<

86、/p><p>  INC R0 </p><p><b>  SWAP A </b></p><p>  ANL A,#0FH ;屏蔽個(gè)位</p><p>  MOV @R0,A ;放入十位單元</p><p>  MOV A, R3

87、;數(shù)值放入A中等待判斷</p><p><b>  RET</b></p><p>  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;</p><p>  ;;;;;;;;;;;顯示子程序 30H ;;;;;;;;;;;</p><p>  ;;;;;;;;;;;;;;;;;;;;

88、;;;;;;;;;;;;;;;;;;;</p><p>  DISP:MOV R1, #30H ;顯示緩沖存儲(chǔ)單元首地址</p><p>  MOV R2, #80H ;從右至左顯示</p><p>  DISP1:MOVP2, R2

89、;送位控</p><p>  MOVA, @R1</p><p>  MOVDPTR, #TAB</p><p>  MOVCA, @A+DPTR</p><p>  MOVP0, A;送段控</p><p>  ACALLDL

90、 ;延時(shí)</p><p>  MOVA, R2</p><p>  JBACC.0, DISP2</p><p><b>  RRA</b></p><p><b>  INCR1</b></p><p>

91、  MOVR2, A</p><p>  AJMPDISP1</p><p>  DISP2: RET</p><p>  TAB: DB 0C0H, 0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH,0BFH,0CH </p><p>  DL:MOV R6,#14H

92、;顯示延時(shí)子程序</p><p>  DL1: MOV R7,#19H ;</p><p>  DL2: DJNZ R7,DL2</p><p>  DJNZ R6,DL1</p><p><b>  RET</b></p><p><b>  

93、END</b></p><p>  第5章 電子鐘的使用說(shuō)明及調(diào)試運(yùn)行</p><p><b>  5.1使用說(shuō)明書</b></p><p><b>  5.1.1操作說(shuō)明</b></p><p><b>  時(shí)間顯示:</b></p><p&

94、gt;  電子鐘上電后,8個(gè)數(shù)碼管顯示初始狀態(tài)即最左邊的一個(gè)數(shù)碼管顯示P.。如果未顯示P.,只需按一下復(fù)位鍵即可使其顯示出P.。按下A鍵后電子鐘進(jìn)入自動(dòng)計(jì)時(shí)狀態(tài),電子鐘顯示00時(shí)00分00秒并開(kāi)始運(yùn)行。</p><p><b>  時(shí)間調(diào)整:</b></p><p>  若要進(jìn)行時(shí)間調(diào)整,則需再次按下A鍵,進(jìn)入時(shí)間調(diào)整狀態(tài),然后分別按下B鍵調(diào)時(shí),按下C鍵調(diào)分,按下D鍵

95、調(diào)秒,按下B、C、D鍵并松開(kāi)可使電子鐘的時(shí),分,秒分別加一。調(diào)整好時(shí)間后,按下A鍵就可以回到調(diào)整好的時(shí)間為基礎(chǔ)的自動(dòng)計(jì)時(shí)狀態(tài)。無(wú)論是在自動(dòng)計(jì)時(shí),還是在調(diào)整校正時(shí),都可按下復(fù)位鍵使系統(tǒng)回到顯示P.的初始狀態(tài)。其中B鍵顯示范圍為0-23,0為24點(diǎn);C,D鍵顯示范圍為0-59,0 為60分。</p><p>  5.2電子鐘運(yùn)行結(jié)果</p><p><b>  5.2.1待機(jī)<

96、/b></p><p><b> ?。ㄈ鐖D5-1所示)</b></p><p><b>  5.2.2啟動(dòng)</b></p><p><b>  (如圖5-2所示)</b></p><p><b>  5.2.3運(yùn)行</b></p>&l

97、t;p><b> ?。ㄈ鐖D5-3所示)</b></p><p><b>  第6章 誤差分析</b></p><p>  在調(diào)試運(yùn)行過(guò)程中,在所有參數(shù)正確的情況下,我的結(jié)果仍出現(xiàn)運(yùn)行緩慢情況。產(chǎn)生誤差的主要原因是我們用軟件計(jì)時(shí),計(jì)時(shí)1秒是采用定時(shí)器的中斷服務(wù)程序。當(dāng)電子鐘運(yùn)行1秒,執(zhí)行中斷程序需要一定時(shí)間,這個(gè)時(shí)間就是所產(chǎn)生的誤差,這個(gè)誤

98、差是不可避免的。同時(shí),單片機(jī)工作也會(huì)受到環(huán)境的影響,比如溫度、濕度,以及其它電子設(shè)備的干擾。</p><p>  因此,應(yīng)該讓電子鐘工作在適度溫度、干燥和電子干擾較少的環(huán)境下,還有一種方法就是采用實(shí)時(shí)時(shí)鐘芯片,這樣可以使誤差降低到最少。</p><p><b>  第7章 設(shè)計(jì)體會(huì)</b></p><p>  這次課程設(shè)計(jì)持續(xù)了幾周時(shí)間,開(kāi)始

99、一直就想著等別人做出來(lái)再去請(qǐng)教別人,沒(méi)想到,自己做出來(lái)的人并不多,也沒(méi)有誰(shuí)能夠幫我的,于是就和吳娟去圖書館借書自己琢磨。借了胡輝主編的《單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與訓(xùn)練》,細(xì)細(xì)閱讀了里面關(guān)于電子鐘設(shè)計(jì)的介紹,學(xué)到了蠻多知識(shí)的。后來(lái)在二班汪宇那里又弄來(lái)了xx老師關(guān)于電子鐘設(shè)計(jì)的課件包,借鑒了相當(dāng)一部分內(nèi)容,不管怎么樣我也終于是自己搞定了。但是自己還是去認(rèn)真再次學(xué)習(xí)了匯編語(yǔ)言的,還有熟練了PROTEUS和KEIL軟件的運(yùn)用,還用了蠻久沒(méi)用的PROT

100、EL99 SE畫了電路原理圖,還更好的鍛煉了用VISIO畫流程圖。雖然大部分都是借鑒的,只是照著描描但自己還是用心去弄懂了。有時(shí)間還是會(huì)更多鍛煉的。感覺(jué)這些軟件都越來(lái)越順手了。挺開(kāi)心。發(fā)現(xiàn)自己真是不逼就不學(xué)的人啦。</p><p><b>  教學(xué)建議</b></p><p>  所謂的教學(xué)建議是第一次寫,也不知道應(yīng)該寫些什么。只知道自己沒(méi)學(xué)好,也似乎不愛(ài)學(xué)這方面的東

101、西。xx老師您是個(gè)好老師,雖然我感覺(jué)您上學(xué)期的教學(xué)比這學(xué)期的吸引人,當(dāng)然這其中的大部分的原因也都是因?yàn)檫@學(xué)期時(shí)間太松,加上我們這些大四學(xué)生太放任自流了的原因吧。</p><p>  如果要我提出建議,我想,以下這些不成熟也沒(méi)條理性可言的語(yǔ)句就算是我的所謂“建議”吧。</p><p>  教學(xué),教與學(xué),本來(lái)就時(shí)老師與學(xué)生的互動(dòng)。老師教得再好,學(xué)生沒(méi)去認(rèn)真有什么用處?所以我覺(jué)得一個(gè)好老師可能應(yīng)

102、該更多的去帶動(dòng)學(xué)生去學(xué),勾起學(xué)生學(xué)習(xí)的興趣。雖然xx老師您在這方面已經(jīng)下了很多功夫,但似乎成效并不大,適得其反,一部分根本不想學(xué)的人反而還覺(jué)得您逼迫得太緊了,對(duì)您意見(jiàn)頗多。形成了這樣的局面,我想也不時(shí)您所希望見(jiàn)到的,所以為什么您要對(duì)每個(gè)人都做一樣的要求呢?</p><p>  教學(xué),并不是抓學(xué)生抓得緊他們就一定學(xué)得好的。不是說(shuō),上有政策,下有對(duì)策嗎?您不管怎么樣嚴(yán)格要求,可最后,真正不想學(xué)的仍舊老油條一根。您的腦

103、細(xì)胞卻在以極大的速度消亡。</p><p>  您現(xiàn)在已經(jīng)不時(shí)青春年華了,為了您自己的身體著想,請(qǐng)適當(dāng)?shù)膶?duì)學(xué)生施壓,對(duì)某些對(duì)這方面感興趣的同學(xué)嚴(yán)格要求些。以后又并不是每個(gè)學(xué)過(guò)單片機(jī)這一科的人都會(huì)走上單片機(jī)這條路,為什么不讓那些對(duì)單片機(jī)沒(méi)興趣的人有多些時(shí)間做別的事情?</p><p>  我知道自己提的意見(jiàn)很不討您歡心,但是,上學(xué)期我就覺(jué)得每個(gè)人都在您的嚴(yán)格要求下?lián)v鼓單片機(jī)??勺罱K的成效呢?

104、這學(xué)期所表現(xiàn)處理的“成效”好像也并不如您意吧?</p><p><b>  請(qǐng)恕我愚昧!</b></p><p><b>  參考資料</b></p><p>  [1]胡輝,單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與訓(xùn)練[M],中國(guó)水利水電出版社,2004.9。 </p><p>  [2]曹巧媛,單片機(jī)原理及應(yīng)用[M

105、],北京:電子工業(yè)出版社,1997.7。</p><p>  [3]趙秀珍,單永磊,單片微型計(jì)算機(jī)原理及其應(yīng)用[M],北京:中國(guó)水利水電出版社,2001.8。</p><p>  [4]張毅剛,修林成,胡振江,MCS-51單片機(jī)應(yīng)用設(shè)計(jì)[M],哈爾濱:哈爾濱工業(yè)大學(xué)出版社,1990.8。</p><p>  [5]張洪潤(rùn),蘭清華,單片機(jī)應(yīng)用技術(shù)教程[M],北京:清華

106、大學(xué)出版社,1997.11。</p><p>  [6]李華,MCS-51系列單片機(jī)實(shí)用接口技術(shù)[M],北京:北京航空航天大學(xué)出版社,1993.8。</p><p><b>  附 錄</b></p><p><b>  致 謝</b></p><p>  這次的課程設(shè)計(jì),所謂是一波三折啊。但終于還

107、是完成了!這個(gè)歷史性時(shí)刻的來(lái)臨,要感謝的人太多太多!</p><p>  首先,感謝我們尊敬的xx老師,有了他的諄諄教誨,處處提點(diǎn),我才得以成功的完成。是他在課堂上將電子鐘的原理及設(shè)計(jì)思路詳細(xì)講解給我們聽(tīng),也是xx老師一次次給我們指出原理圖的錯(cuò)誤,讓我們修改再重新繪制。老師在課堂上嚴(yán)格要求我們,這是對(duì)我們的負(fù)責(zé),畢竟嚴(yán)師出高徒。而我自由散漫的性格弱點(diǎn)也說(shuō)明了我需要這樣的老師來(lái)對(duì)我進(jìn)行督促和鞭策,我學(xué)到的不僅僅只有

108、書本上的知識(shí),還有做人的道理。他嚴(yán)肅的科學(xué)態(tài)度,嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神,精益求精的工作作風(fēng),深深地感染和激勵(lì)著我。在此謹(jǐn)向xx老師致以誠(chéng)摯的謝意和崇高的敬意。</p><p>  其次,是我親愛(ài)的寢室姐妹們,如果沒(méi)有她們的對(duì)我的幫助和關(guān)照還有鞭策,我想,我對(duì)KEIL和PROTEUS這些軟件根本就不會(huì)這么熟練起來(lái)的。感謝廖雪平,感謝吳娟,感謝周女考,感謝汪宇,謝謝她們給我提供資料,幫我修改圖和程序,真的很感謝她們!<

溫馨提示

  • 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ù)僅提供信息存儲(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)論