2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、<p>  單片機原理及系統(tǒng)課程設計</p><p>  專 業(yè):電氣工程及其自動化 </p><p>  班 級: 電氣1003班 </p><p>  姓 名: </p><p>  學 號: </p><p>  指導教師

2、: </p><p>  2013 年 3 月 7 日</p><p> 評語:</p><p> 考勤(10)守紀(10)過程(40)設計報告(30)答辯(10)總成績(100)</p><p><b>  摘 要</b></p><p>  現(xiàn)代的電子時鐘是基于單

3、片機的一種計時工具,采用延時程序產(chǎn)生一定的時間中斷,用于一秒的定義,通過計數(shù)方式進行滿六十秒分鐘進一,滿六十分小時進一,滿二十四小時小時清零。從而達到計時的功能,是人民日常生活不可缺少的工具。數(shù)字式電子鐘用集成電路計時時,譯碼代替機械式傳動,用LED顯示器代替指針顯示進而顯示時間,減小了計時誤差,這種表具有時、分、秒顯示時間的功能,還可以進行時和分的校對,片選的靈活性好。在這里我們將已學過的比較零散的數(shù)字電路的知識有機的、系統(tǒng)的聯(lián)系起來

4、用于實際,來培養(yǎng)我們的綜合分析和設計電路,寫程序、調(diào)試電路的能力。</p><p>  關鍵詞:單片機;電子時鐘;鍵盤控制</p><p><b>  Abstract</b></p><p>  Modern electronic clock is based on a timing tool, using the delay procedu

5、re has a certain time interrupt, is used to define a second, for a full sixty seconds minutes into one by counting mode, full six hours into a full twenty-four hours, clear. In order to achieve the function of timing, is

6、 indispensable in people's daily life tool. Digital electronic clock integrated circuit timing, decoding instead of mechanical transmission, with LED display instead of pointer display and display the time,</p>

7、<p>  Keywords: single chip microcomputer; electronic clock; the keyboard control</p><p><b>  引言:</b></p><p>  通過理論設計和實物制作解決相應的實際問題,鞏固和運用在《單片機技術》中所學的理論知識和實驗技能,掌握單片機應用系統(tǒng)的一般設計方法

8、,提高設計能力和實踐動手能力,為以后從事電子電路設計、研發(fā)電子產(chǎn)品打下良好的基礎。</p><p>  設計一個具有特定功能的電子鐘。該電子鐘上電或按鍵復位后顯示0時0分0秒;第一次按電子鐘啟動/調(diào)整鍵,電子鐘從0時0分0秒開始運行,進入時鐘運行狀態(tài);再次按電子鐘啟動/調(diào)整鍵,則電子鐘進入時鐘調(diào)整狀態(tài),此時可利用各調(diào)整鍵調(diào)整時間,調(diào)整結(jié)束后可按啟動/調(diào)整鍵再次進入時鐘運行狀態(tài)。</p><p&

9、gt;<b>  1 整體設計方案</b></p><p>  1.1 硬件總體設計</p><p>  硬件系統(tǒng)總體設計如圖2.1所示。</p><p>  圖2.1 硬件系統(tǒng)總體設計</p><p>  (1) 功能芯片:本次設計采用ATMEL公司生產(chǎn)的AT89C51芯片,低功耗、高性能CMOS8位微控制器,具有8K

10、在系統(tǒng)可編程Flash存儲器。</p><p>  (2) 電源和復位模塊:AT89C51需5V電壓,所以可以采用USB接口的5V電源對其供電,復位電路采用按鍵脈沖復位 </p><p>  (3) 顯示模塊:該模塊由8位8段共陽極數(shù)碼管組成。</p><p>  (4) 鍵盤模塊:鍵盤由4個獨立式按鍵組成,P0.0-P0.2鍵分別接在單片機的P1.0-P1.2口。

11、P0.3為復位鍵,接RST。</p><p>  (5) 時鐘模塊:為了保證同步工作方式的思想,單片機必須有時鐘信號,以使其系統(tǒng)在時鐘信號的控制下按時序協(xié)調(diào)工作。如電路原理圖中的晶振電路。</p><p>  2 數(shù)字鐘的軟件設計</p><p>  2.1 系統(tǒng)軟件設計流程圖 </p><p>  這次的數(shù)字電子鐘設計用到很多子程序,它們的

12、流程圖如下所示主程序是先開始,啟動定時器,定時器啟動后在進行按鍵檢測,檢測完后,就可以顯示時間</p><p>  圖2.1 主程序流程圖</p><p>  按鍵處理是先檢測秒按鍵是否按下,秒按鍵按下,秒就加1;如果沒有按下,就檢測分按鍵是否按下,分按鍵按下,分就加1;如果沒有按下,就檢測時按鍵是否按下,時按鍵如果按下,時就加1;如果沒有按下,就把時間顯示出來。</p>&

13、lt;p>  圖2.2 按鍵處理流程圖</p><p>  定時器中斷時是先檢測1秒是否到,1秒如果到,秒單元就加1;如果沒到,就檢測1分鐘是否到,1分鐘如果到,分單元就加1;如果沒到,就檢測1小時是否到,1小時如果到,時單元就加1,如果沒到,就顯示時間。</p><p>  圖2.3 定時器中斷流程圖</p><p>  時間顯示是先秒個位計算顯示,然后是秒

14、十位計算顯示,再是分個位計算顯示,再然后是分十位顯示,再就是時個位計算顯示,最后是時十位顯示。</p><p>  圖2.4 時間顯示流程圖</p><p>  2.2 數(shù)字鐘的原理圖</p><p>  用PROTUES軟件,根據(jù)要求畫出數(shù)字電子鐘的原理圖如下所示</p><p>  圖2.5 數(shù)字鐘的原理圖</p><

15、p>  數(shù)字電子鐘的工作原理 :數(shù)字電子鐘是一個將“ 時”,“分”,“秒”顯示于人的視覺器官的計時裝置。它的計時周期為24小時,顯示滿刻度為23時59分59秒,另外還有校時功能。因此,一個基本的數(shù)字鐘電路主要由顯示器“時”,“分”,“秒”和單片機,還有校時電路組成。8個數(shù)碼管的段選接到單片機的P0口,位選接到單片機的P2口。數(shù)碼管按照數(shù)碼管動態(tài)顯示的工作原理工作,將標準秒信號送入“秒單元”,“秒單元”采用60進制計數(shù)器,每累計60

16、秒發(fā)出一個“分脈沖”信號,該信號將作為“分單元”的時鐘脈沖。“分單元”也采用60進制計數(shù)器,每累計60分鐘,發(fā)出一個“時脈沖”信號,該信號將被送到“時單元”?!皶r單元”采用24進制計時器,可實現(xiàn)對一天24小時的累計。</p><p><b>  2.3 功能說明</b></p><p>  1. 開機時,顯示00:00:00的時間開始計時。</p

17、><p>  2. P0.0為功能選擇鍵,第一次按下開始計時,第二次按下計時停止并開始“分”的調(diào)整,第三次按下開始進行“時”的調(diào)整,按下第四次再次開始計時。</p><p>  P0.1控制“分”的調(diào)整,每按一次加1分。 </p><p>  P0.2控制“時”的調(diào)整,每按一次加1個小時。</p><p>  P0.3

18、為復位鍵,按下后顯示00:00:00的時間。</p><p><b>  2.4 設計主程序</b></p><p><b>  程序見附錄1</b></p><p>  2.5 電子鐘系統(tǒng)PROTUES仿真</p><p>  用PROTUES軟件,根據(jù)數(shù)字電子鐘的原理圖,畫出仿真圖,得到的圖如下

19、所示。</p><p>  圖5-1 數(shù)字鐘的PROTES仿真</p><p><b>  結(jié)束語</b></p><p>  我在這一次數(shù)字電子鐘的設計過程中,很是受益匪淺。通過對自己在大學三年時間里所學的知識的回顧,并充分發(fā)揮對所學知識的理解和對課程設計的思考及書面表達能力,最終完成了。這為自己今后進一步深化學習,積累了一定寶貴的經(jīng)驗。撰寫

20、論文的過程也是專業(yè)知識的學習過程,它使我運用已有的專業(yè)基礎知識,對其進行設計,分析和解決一個理論問題或?qū)嶋H問題,把知識轉(zhuǎn)化為能力的實際訓練。培養(yǎng)了我運用所學知識解決實際問題的能力。</p><p>  通過這次課程設計我發(fā)現(xiàn),只有理論水平提高了;才能夠?qū)⒄n本知識與實踐相整合,理論知識服務于教學實踐,以增強自己的動手能力。這個實驗十分有意義 我獲得很深刻的經(jīng)驗。通過這次課程設計,我們知道了理論和實際的距離,也知道了

21、理論和實際想結(jié)合的重要性,,也從中得知了很多書本上無法得知的知識。</p><p>  我們的學習不但要立足于書本,以解決理論和實際教學中的實際問題為目的,還要以實踐相結(jié)合,理論問題即實踐課題,解決問題即課程研究,學生自己就是一個專家,通過自己的手來解決問題比用腦子解決問題更加深刻。學習就應該采取理論與實踐結(jié)合的方式,理論的問題,也就是實踐性的課題。這種做法既有助于完成理論知識的鞏固,又有助于帶動實踐,解決實際問

22、題,加強我們的動手能力和解決問題的能力。</p><p><b>  參考文獻</b></p><p>  [1] 王思明.單片機原理及應用系統(tǒng)設計.北京:科學出版社,2012.:64-103</p><p>  [2] 閻石.數(shù)字電子技術基礎(第四版)北京:高等教育出版社,1998.07:42-56 </p><p&

23、gt;  [3] 邱光源.電路(第五版).北京:高等教育出版社,2006.05:75-95 </p><p>  [4] 李廣弟.單片機基礎[M].北京:北京航空航天大學出版社,2007.06:26-55 </p><p><b>  附錄一</b></p><p>  ORG 00H ;主程序起始地址&

24、lt;/p><p>  JMP START ;跳至主程序</p><p>  ORG 00H ;TIMER0中斷起始地址</p><p>  JMP TIM0 ;跳至TIMER0中斷子程序TIM0 </p><p>  START: MOV

25、 SP,#70H ;設置堆棧在70H </p><p>  MOV 28H, #00 ;顯示寄存器初值為00</p><p>  MOV 2AH, #12H ;“時”寄存器初值為12H</p><p>  MOV 2BH, #00 ;“分”寄存器初值為00H</p>

26、;<p>  MOV 2CH, #00 ;“秒”寄存器初值為00H</p><p>  MOV TMOD,#00000001B ;設TIMER0為MODE1</p><p>  MOV TH0,#HIGH (65536-4000) ;計時中斷為4000微妙</p><p>  MOV

27、 TL0,#LOW (65536-4000) </p><p>  MOV IE, #10000010B ;TIMER0中斷使能</p><p>  MOV R4, #250 ;中斷250次</p><p>  SETB TR0 ;啟動TIMER0

28、 </p><p>  LOOP: JB P0.0 ,N2 ;P0.0(秒)按了?不是跳至N2檢查P0.1</p><p>  CALL DELAY ;消除抖動</p><p>  MOV A, 2CH ;將秒寄存器的值載入A</p><p

29、>  ADD A, #01 ;A的內(nèi)容加1</p><p>  DA A ;做十進位調(diào)整</p><p>  MOV 2CH, A ;將A的值存入秒寄存器</p><p>  CJNE A, #60H, N1 ;是否等于60秒?不是跳

30、轉(zhuǎn)至N1</p><p>  MOV 2CH, #00 ;是則清除秒寄存器的值為00 </p><p>  N1: JNB P0.0, $ ;P0.0(秒)放開了?</p><p>  CALL DELAY ;消除抖動 </p

31、><p>  N2: JB P0.1, N4 ;P0.1(分)按下了嗎?不是則跳至N4檢查P0.2</p><p>  CALL DELAY ;消除抖動</p><p>  MOV A, 2BH ;將分寄存器的值載入A</p><p>  ADD A,

32、#01 ;A的內(nèi)容加1</p><p>  DA A ;做十進位調(diào)整</p><p>  MOV 2BH, A ;將A的值存入分寄存器</p><p>  CJNE A, #60H, N3 ;是否等于60分?不是則跳至N1<

33、/p><p>  MOV 2BH, #00 ;是則清楚分寄存器的值為00</p><p>  N3: JNB P0.1 ,$ ;P0.1(秒)放開了?</p><p>  CALL DELAY ;消除抖動</p><p>  N4:

34、 JB P0.2 ,LOOP ;P0.2(秒)按下了嗎?不是則跳轉(zhuǎn)LOOP </p><p>  CALL DELAY ;消除抖動 </p><p>  MOV A, 2AH ;將時寄存器的值載入A</p><p>  ADD A, #01 ;A

35、的內(nèi)容加1</p><p>  DA A ;做十進位調(diào)整</p><p>  MOV 2AH , A ;將A的值存入時寄存器</p><p>  CJNE A ,#24H, N5 ;是否等于24小時?不是則跳至N5</p><

36、;p>  MOV 2AH, #00 ;是則清除時寄存器的值為00</p><p>  N5: JNB P0.2 , $ ;P0.2(秒)放開了? </p><p>  CALL DELAY ;消除抖動 </p><p>  JMP LOOP

37、</p><p>  TIM0: MOV TH0, #HIGH(65536-4000) ;重設計時4000微妙</p><p>  MOV TL0, #LOW(65536-4000) </p><p>  PUSH ACC ;將A的值暫存于堆棧</p>&

38、lt;p>  PUSH PSW ;將PSW的值暫存于堆棧</p><p>  DJNZ R4 , X2 ;計時1秒</p><p>  MOV R4 ,#250</p><p>  CALL CLOCK ;調(diào)用計時子程序

39、CLOCK</p><p>  CALL DISP ;調(diào)用顯示子程序</p><p>  X2: CALL SCAN ;調(diào)用掃描子程序</p><p>  POP PSW ;至堆棧取回PSW的值</p><p>

40、;  POP ACC ;至堆棧取回ACC的值</p><p>  RETI</p><p>  SCAN: MOV R0 ,#28H ;(28H)為掃描指針</p><p>  INC @R0 ;掃描指針加1

41、</p><p>  CJNE @R0 ,#06 ,X3 ;掃描完6個顯示器?不是跳至X3 </p><p>  MOV @R0 ,#0 ;是則掃描指針為0</p><p>  X3: MOV A , @R0 ;掃描指針載入A</p><

42、;p>  ADD A , #20H ;A加常數(shù)20H(顯示寄存器地址)=各時間 </p><p>  MOV R1 , A ;掃描指針存入A</p><p>  MOV A ,@R0 ;將A高低4位交換(P1高4位為掃描值,</p><p>  SWAP A ;低4位為顯示

43、數(shù)據(jù)值)</p><p>  ORL A , @R1 ;掃描值+顯示值</p><p>  MOV P1 , A ;輸出至P1</p><p>  RET</p><p>  CLOCK: MOV A ,2CH

44、 ;(2CH)為秒寄存器</p><p>  ADD A , #1 ;加1秒</p><p>  DA A ;做十進制調(diào)整</p><p>  MOV 2CH ,A ;存入秒寄存器</p><p>  CJN

45、E A , #60H ,X4 ;是否超過60秒?不是則跳轉(zhuǎn)X4</p><p>  MOV 2CH ,#00 ;是則清除為00</p><p>  MOV A ,2BH ;(2BH)為分寄存器</p><p>  ADD A ,#1 ;加1分

46、</p><p>  DA A ;做十進制調(diào)整</p><p>  MOV 2BH , A ;存入分寄存器 </p><p>  CJNE A, #60H, X4 ;是否超過60分?不是則跳至X4</p><p&g

47、t;  MOV 2BH , #00 ;是則清除為00</p><p>  MOV A , 2AH ;(2AH)為時寄存器</p><p>  ADD A ,#1 ;加1時</p><p>  DA A ;做十進制調(diào)整

48、</p><p>  MOV 2AH , A ;存入時寄存器</p><p>  CJNE A ,#24H ,X4 ;是否超過24時?不是則跳至X4</p><p>  MOV 2AH ,#00 ; 是則清除為00</p><p>  X4

49、: RET</p><p>  DISP: </p><p>  MOV R1 ,#20H ;(20H)為顯示寄存器,R1=20H</p><p>  MOV A , 2CH ;將秒寄存器的內(nèi)容存入A</p><

50、;p>  MOV B , #10H ;設B累加器的值為10H</p><p>  DIV AB ;A ÷B ,商(十位數(shù))存入A, 余數(shù)(個位數(shù)) ;存入B </p><p>  MOV @R1 , B ;將B的內(nèi)容存入(20H)</p&

51、gt;<p>  INC R1 ;R1=21H</p><p>  MOV @R1 , A ;將A 的內(nèi)容存入(21H)</p><p>  INC R1 ;R1=22H</p><p>  MOV A ,2BH

52、 ;將分寄存器的內(nèi)容存入A</p><p>  MOV B ,#10H ;將B累加器的值為10</p><p>  DIV AB ;A ÷B ,商(十位數(shù))存入A, 余數(shù)(個位數(shù)) ;存入B </p><p>  MOV @

53、R1 , B ;將B的內(nèi)容存入(22H)</p><p>  INC R1 ;R1=23H</p><p>  MOV @R1 , A ;將A 的內(nèi)容存入(23H)</p><p>  INC R1 ;R1=24H

54、</p><p>  MOV A ,2AH ;將時寄存器的內(nèi)容存入A</p><p>  MOV B ,#10H ;將B累加器的值為10H</p><p>  DIV AB ;A ÷B ,商(十位數(shù))存入A, 余數(shù)(個位數(shù)) ;存

55、入B </p><p>  MOV @R1 , A ;將B的內(nèi)容存入(24H)</p><p>  INC R1 ;R1=25H</p><p>  MOV @R1 ,A ;將A的內(nèi)容存入(25H)</p><p

56、>  RET</p><p>  DELAY: MOV R6 , #60 ;5毫秒</p><p>  D1: MOV R7 , #248 </p><p>  DJNZ R7 , $</p><p>

溫馨提示

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

評論

0/150

提交評論