電子課程設計報告 1.1 設計任務 (1)實現計時范圍00.00-99.99秒表 (2)實現秒表精確到0.01秒 (3)實現秒表的三個控制鍵;開啟計時鍵,暫停鍵和復位鍵 1.2 設計要求 用單片機設計一個計時范圍在00.00致99.99的秒表,秒表精確在0.01秒秒表有三個控制鍵分別是;秒表計時開啟鍵,計時暫停鍵和秒表復位鍵。 2 設計思想 2.1 硬件設計思想 建立最小單片機系統,在AT89C51單片機的P0端口接一個74LS47(BCD-7段數碼管譯碼器),在譯碼器數碼輸出端接上4位七段共陽極數碼管,P2.0腳接第一位數碼管片選端,P2.1腳接第二位數碼管片選端,P2.2腳接第三位數碼片選端,P2.3腳接第四位數碼管片選端,這四位分別顯示秒時間的十位,個位,小數點后一位 ,小數點后兩位顯示的片選控制端。P2.4腳接小數點控制端。 秒表控制鍵盤。用P3.0接鍵盤開啟計時鍵,P3.1接鍵盤計時暫停鍵,P3.2接鍵盤計時復位鍵。 2.2 軟件設計思想 采用匯編語言編寫程序,程序共有四部分; 第一部分是主程序,用于對程序的中斷控制、數據等的初始化,并且對秒表控制鍵盤的掃描。 第二部分時間產生程序,用定時/計數器0中斷程序用時產生時間,利用每10m進入本中斷程序一次,用R0,R1,R2和R3四個寄存存儲中斷次數用于時間,R3到R0分別是時間顯示的高低位,當這個四個寄存器加大于10時,本寄存器歸零用于存儲顯示高一位時間的寄存器加一依此類推實現對時間產生。 第三部分4位七段共陽極數碼管動態顯示程序,用定時/計數1中斷程序每50ms對數碼管各掃描一次,是利用人眼視覺暫留實現數碼管的顯示。 第四部分動態掃描延時程序,用于在對數碼管動態掃描時,每掃描一個數碼管后的延時程序。以實現四位數碼時間同時顯示的效果。 3 電路原理與電路圖 3.1 電路原理 AT89C51單片機做為控制電路,用P1口做為數據輸出端,P2口做為4位七段共陰極數碼管的片選控制輸出口,P3.0,P3.1,P3.2做為鍵盤接口。時間顯示器,由4位七段共陰極數碼管構成。用74LS47為數碼管的譯碼器。 3.2 電路原理圖
1.001.jpg (71.03 KB, 下載次數: 116)
下載附件
2017-6-21 21:34 上傳
4 流程圖與算法描述 4.1 流程圖
1.002.jpg (26.07 KB, 下載次數: 120)
下載附件
2017-6-21 21:34 上傳
主程序流程圖
1.003.jpg (15.92 KB, 下載次數: 110)
下載附件
2017-6-21 21:34 上傳
4.2 算法描述
6 仿真圖
1.006.jpg (71.76 KB, 下載次數: 126)
下載附件
2017-6-21 21:34 上傳
7 設計總結 7.1 設計體會課程設計總算圓滿完成了,在本次的課程設計中我深深體會到單片機在實踐中的作用,通過對單片機的學習,在本次課程設計中 我明白了一件的完成必然在背后夾雜著汗水 ,雖然有汗水,但更多的是完成之后的欣喜 ,悉數算來 大學里的課程設計也做了幾個,這次的團隊配合時最好的,我們互相討論問題,使得原本復雜的設計在我們三人的共同努力下慢慢的被我們攻克 這次課程設計中,我們做的是設計秒表計數器。這次課程設計能夠順利,我的努力,但同時也離不開指導傅籬老師的答疑解惑。通過這次的課程設計作品的制作讓我對單片機的理論有了更加深入的了解
7.2 存在問題與建議通過此次課程設計 ,發現了自身的不足。編程方面與耐力方面有待提高 ,同時希望以后課程設計的題目能夠更加貼近生活上的實際應用 參考文獻: [1]侯炳輝,沈林興,彭澎. 計算機信息管理專業(本科)畢業設計案例摘選[M]. 北京:清華大學出版社,2002.1:24-35,37. [2]武俊良. PowerBuilder課程設計與系統開發案例[M]. 北京:清華大學出版社,2003.1:56-78. [3]何宏.單片機原理與接口技術[M]. 北京:國防工業出版社,2006 [4]樓然苗,李光飛.單片機課程設計指導.[M].北京:北京航空航天大學出版社.2007 [5]唐朔飛.計算機組成原理.[M].北京:高等教育出版社.2007 [6]李廣弟.單片機基礎[M].北京:北京航空航天大學出版社,1994 [7]閻石.數字電子技術基礎(第三版). 北京:高等教育出版社,1989
- ORG 0000H
- LJMP STAR
- ORG 000BH
- LJMP INT0
- ORG 001BH
- LJMP SCAN
- ;---------------------------------------------
- START BIT P3.0
- STOP BIT P3.1
- REST BIT P3.2
- ;---------------------------------------------
- ORG 0100H
- STAR: SETB EA
- SETB ET0
- SETB ET1
- SETB TR1
- MOV TMOD,#11H
- MOV TH0,#216
- MOV TL0,#239
- MOV TH1,#60
- MOV TL1,#176
- MOV R0,#00H
- MOV R1,#00H
- MOV R2,#00H
- MOV R3,#00H
- MOV P3,#00H
- MAIN: CLR START ;掃描鍵盤
- JNB START,MA0 ;判斷是否-開啟計時
- SETB TR0 ;開啟-中斷記時
- MA0: CLR STOP
- JNB STOP,MA1 ;判斷是否-暫停計時
- CLR TR0 ;關閉-中斷計時
- MA1: CLR REST
- JNB REST,MAIN ;判斷是否-復位
- CLR TR0
- LJMP STAR
- …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
本設計的單片機源碼從下面的地址下載: 完整論文下載(word格式 可編輯):http://www.zg4o1577.cn/bbs/dpj-88464-1.html
|