版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 課程設計任務書</b></p><p> 用AT89C51設計一個2位LED數(shù)碼顯示“秒表”,顯示時間為00~99秒,每秒自動加一。另設計一個“開始”按鍵和一個“復位”按鍵。再增加一個“暫?!卑存I和一個“快加”按鍵(每10ms快速加一)。按鍵說明:按“開始”按鍵,開始計數(shù),數(shù)碼管顯示從00開始每秒自動加一;按“復位”按鍵,系統(tǒng)清零,數(shù)碼管顯示00;按“暫停”按
2、鍵,系統(tǒng)暫停計數(shù),數(shù)碼管顯示當時的計數(shù);按“快加”按鍵,系統(tǒng)每10ms快速加一,即數(shù)碼顯示管在原先的計數(shù)上快速加一。</p><p> 指導老師(簽名)_____</p><p><b> 年月日</b></p><p><b> 目錄</b></p><p> 設計內容及要求………
3、………………………………………1</p><p> 1.1設計內容…………………………………………………1</p><p> 1.2設計要求…………………………………………………1</p><p> 課題研究目的和意義及介紹…………………………………2</p><p> 2. 1目的意義…………………………………………………
4、2</p><p> 2.2單片機的簡單介紹……………………………………2</p><p> 設計思路及描述…………………………………………4</p><p> 硬件設計……………………………………………………5</p><p> 接口電路…………………………………………………5</p><p>
5、硬件連線圖………………………………………………6</p><p> 軟件設計………………………………………………………7</p><p> 數(shù)字秒表工作流程圖 ……………………………………7</p><p> 用51單片機實現(xiàn)數(shù)字秒表工作源程序…………………7</p><p> 實驗心得及體會………………………………………………13&
6、lt;/p><p> 總結……………………………………………………………………14</p><p> 參考文獻………………………………………………………………15</p><p><b> 設計內容及要求</b></p><p><b> 1.1、設計內容</b></p><
7、p> 用AT89C51設計一個2位LED數(shù)碼顯示“秒表”,顯示時間為00~99秒,每秒自動加一。另設計一個“開始”按鍵和一個“復位”按鍵。再增加一個“暫?!卑存I和一個“快加”按鍵(每10ms快速加一)。按鍵說明:按“開始”按鍵,開始計數(shù),數(shù)碼管顯示從00開始每秒自動加一;按“復位”按鍵,系統(tǒng)清零,數(shù)碼管顯示00;按“暫?!卑存I,系統(tǒng)暫停計數(shù),數(shù)碼管顯示當時的計數(shù);按“快加”按鍵,系統(tǒng)每10ms快速加一,即數(shù)碼顯示管在原先的計數(shù)上
8、快速加一。</p><p><b> 1.2、設計要求</b></p><p> 了解8051芯片的的工作原理和工作方式 ,使用該芯片對LED數(shù)碼管進行顯示控制,實現(xiàn)用單片機的端口控制數(shù)碼管,顯示分、秒,并能用按鈕實現(xiàn)秒表起動、停止、清零功能,精確到0.1秒。</p><p> 要求選用定時器的工作方式,畫出使用單片機控制LED數(shù)碼管顯示
9、的電路圖,并在實驗箱實現(xiàn)其硬件電路,并編程完成軟件部分,最后調試秒表起動、停止、清零功能。</p><p> 課題研究目的和意義及介紹</p><p><b> 2.1、目的意義</b></p><p> 通過本次課程設計加深對單片機課程的全面認識復習和掌握,對單片機課程的應用進一步的了解。</p><p> 掌
10、握定時器、外部中斷的設置和編程原理。</p><p> 通過此次課程設計能夠將單片機軟硬件結合起來,對程序進行編輯,校驗。</p><p> 該實驗通過單片機的定時器/計數(shù)器定時和計數(shù)原理,設計簡單的計時器系統(tǒng),擁有正確的計時、暫停、清零、快加功能,并同時可以用數(shù)碼管顯示,在現(xiàn)實生活中應用廣泛,具有現(xiàn)實意義</p><p> 2.2、單片機的簡單介紹</
11、p><p> AT89C51是一種低功耗、高性能的片內含有4KB快閃可編程/擦除只讀存儲器(FPEROM-Flash Programmable and Eraseable Read Only Memory)的8位CMOS微控制器,使用高密度、非易失存儲技術制造,并且與80C51引腳和指令系統(tǒng)完全兼容。</p><p><b> 主要性能:</b></p>
12、<p> 與MCS-51 微控制器產品系列兼容。 </p><p> 片內有4KB可在線重復編程的快閃擦寫存儲器 </p><p> 存儲數(shù)據保存時間為10年 </p><p> 寬工作電壓范圍:Vcc可為2.7V到6V </p><p> 全靜態(tài)工作:可從0Hz至16MHz </p><p>
13、 程序存儲器具有3級加密保護 </p><p> 128*8位內部RAM </p><p> 32條可編程I/O線 </p><p> 兩個16位定時器/計數(shù)器 </p><p> 中斷結構具有5個中斷源和2個優(yōu)先級 </p><p> 可編程全雙工串行通道 </p><p> 空閑
14、狀態(tài)維持低功耗和掉電狀態(tài)保存存儲內容</p><p><b> 設計思路及描述</b></p><p> 該實驗要求進行計時并在數(shù)碼管上顯示時間,則可利用DVCC系列單片機微機仿真實驗系統(tǒng)中的芯片8032(芯片的功能類似于芯片AT89C51,其管腳功能也和AT89C51的管腳功能類似)中的P3.2管腳做為外部中斷0的入口地址,并實現(xiàn)“開始”按鍵的功能;將P3.3做
15、為外部中斷1的入口地址,并實現(xiàn)“清零”按鍵的功能;將P3.0做為數(shù)據信號DATA輸入的入口地址;將P3.1做為時鐘信號CLK輸入的入口地址。定時器T0作為每秒加一的定時器;定時器T1作為“快加”鍵的定時器。其中“開始”按鍵當開關由1撥向0(由上向下?lián)埽r開始計時;“清零”按鍵當開關由1撥向0(由上向下?lián)埽r數(shù)碼管清零,此時若再撥“開始”按鍵則又可重新開始計時。</p><p><b> 方框圖如下圖:
16、</b></p><p> 圖3 數(shù)字秒表設計導向圖</p><p><b> 硬件設計</b></p><p><b> 4.1、接口電路</b></p><p> 利用12M晶振的一個機器周期為1微秒,通過循環(huán)產生1秒時間延遲,掃描單片機中所存放的時間的值(可正記時,也可倒計
17、時),并通過輸出顯示在數(shù)碼管上。</p><p><b> 如圖:</b></p><p> 圖4。1 秒表系統(tǒng)連線圖</p><p> p0.0—p0.7對應了兩個接數(shù)碼管的A,B,C,D,E,F,G和小數(shù)點位,p2.6接顯示個位數(shù)的數(shù)碼管的3、8引角,p2.7則接十位數(shù)的。p3.6、p3.7分別接按鍵。</p><
18、p><b> 4.2、硬件連線圖</b></p><p> 圖4.2 數(shù)字秒表程序硬件電路連線圖</p><p><b> 軟件設計</b></p><p> 5.1、數(shù)字秒表工作流程圖</p><p> 圖5 數(shù)字秒表工作整體流程圖</p><p> 5.
19、2、用51單片機實現(xiàn)數(shù)字秒表工作源程序</p><p> OUTBIT EQU 08002H ;位控制口</p><p> OUTSEG EQU 08004H ;段控制口</p><p> LSEC EQU 31H </p>
20、<p> SEC EQU 32H </p><p> MIN EQU 33H </p><p> FLAG BIT 20H.0 ;位定義</p><p> KEY1 BIT P3.6
21、 </p><p> KEY2 BIT P3.7 </p><p> ORG 0000H </p><p> LJMP START
22、 ;初始程序入口地址</p><p> ORG 000BH </p><p> LJMP TIMER0 ;加一子程序入口地址</p><p><b> ORG 0060H</b></p><p>
23、START: LCALL INITIAL ;調用啟動LCM子程序進行初始化</p><p> LOOP: LCALL DISPLAY ;退出時鐘調整時鍵釋放等待</p><p> JNB KEY1,WAIT ;判斷KEY1.等待</p><p> JNB KEY2,RESET
24、 </p><p> LJMP LOOP </p><p> CONTROL: CLR TR0 ;關定時器</p><p> LCALL DISPLAY </p><p> JNB KEY1,CONTROL
25、 </p><p> CPL FLAG </p><p> JB FLAG,BEGIN </p><p> SETB TR0 ;重置定時器</p><p> LJMP LOOP
26、 </p><p> WAIT: LCALL DISPLAY </p><p> JNB KEY1,CONTROL </p><p> LJMP LOOP </p><p> B
27、EGIN: CLR TR0 </p><p> LJMP LOOP </p><p> RESET: JNB TR0,CLE </p><p> LCALL LOOP
28、 </p><p> CLE: LCALL CLEAR </p><p> LJMP LOOP </p><p> INITIAL: LCALL CLEAR </p><p
29、> SETB FLAG </p><p> MOV DPTR,#TAB </p><p> MOV TMOD,#01H ;定時器0,方式一</p><p> MOV TL0,#0F0H <
30、/p><p> MOV TH0,#0D8H </p><p> SETB EA ;開中斷</p><p> SETB ET0 ;開T0中斷</p><p> RET
31、 </p><p> TIMER0:CLR TR0 </p><p> MOV TL0,#0F0H </p><p> MOV TH0,#0D8H ; 重新賦值</p><p> SETB T
32、R0 </p><p> INC LSEC </p><p> MOV A,LSEC </p><p> CJNE A,#100,EXIT </p>
33、;<p> MOV SEC,#00H </p><p> INC SEC </p><p> MOV A,SEC </p><p> CJNE A,#60,EXIT
34、 </p><p> MOV SEC,#00H </p><p> INC MIN </p><p> MOV A,MIN </p><p> CJN
35、E A,#60,EXIT </p><p> MOV MIN,#00H </p><p> EXIT: SETB TR0 </p><p> RETI
36、 </p><p> CLEAR: MOV A,#00H </p><p> MOV LSEC,A </p><p> MOV SEC,A </p><p>
37、 MOV MIN,A </p><p> RET </p><p> DISPLAY: MOV R3,#01H </p><p> MOV R0,#31H
38、 </p><p> MOV R4,#3 ;選擇3組工作寄存器</p><p> DISPLAY1: MOV A,@R0 </p><p> MOV B,#0AH </p><p&
39、gt; DIV AB </p><p> MOV R5,A </p><p> MOV A,B </p><p> MOV DPTR,#TAB
40、 </p><p> MOVC A,@A+DPTR ;查字形碼表</p><p> MOV DPTR,#OUTSEG ;設置顯示起始位置</p><p> MOVX @DPTR,A ;設定顯示位置</p><p> MOV DPTR,#OUTB
41、IT </p><p> MOV A,R3 </p><p> MOVX @DPTR,A ;顯示數(shù)據</p><p> LCALL DELAY100US </p><
42、p> MOV A,#00H </p><p> MOVX @DPTR,A </p><p> MOV A,R3 </p><p> RL A
43、 </p><p> MOV R3,A </p><p> MOV A,R5 </p><p> MOV DPTR,#TAB </p>
44、<p> MOVC A,@A+DPTR </p><p> MOV DPTR,#OUTSEG </p><p> MOVX @DPTR,A </p><p> MOV DPTR,#OUTBIT
45、 </p><p> MOV A,R3 </p><p> MOVX @DPTR,A </p><p> LCALL DELAY100US </p><
46、p> MOV A,#00H </p><p> MOVX @DPTR,A </p><p> MOV A,R3 </p><p> RL A
47、 </p><p> MOV R3,A </p><p> INC R0 </p><p> DJNZ R4,DISPLAY1 </p&g
48、t;<p> RET </p><p> DELAY100US:MOV R7,#50 ;循環(huán)50次</p><p> DJNZ R7,$ ;r7- 1不為0,執(zhí)行本指令</p><p> RET
49、 ;//////////查表指令</p><p> TAB: DB 3FH, 06H, 5BH, 4FH, 66H, 6DH</p><p> DB 7DH, 07H, 7FH, 6FH</p><p><b> 實驗心得及體會</b></p><p> 認真審題,看懂題目的要求!選擇適當
50、的課題,不益太簡單或者太難。做到既能把課題完成又能鍛煉自己的能力。</p><p> 根據課題要求,復習相關的知識,查詢相關的資料。</p><p> 根據實驗條件,找到適合的方案,找到需要的元器件及工具,準備實驗。</p><p> 根據課程設計的要求和自己所要增加的功能寫好程序流程圖,在程序流程圖的基礎上,根據芯片的功能寫出相應的程序。然后再進行程序調試和
51、相應的修改,以達到能夠實現(xiàn)所要求的功能的目的。</p><p> 還要根據實驗的實際情況,添加些額外程序來使系統(tǒng)更加的穩(wěn)定,如開關的消震蕩(采用延遲)。</p><p> 程序要盡量做到由各個子程序組成,在有些程序后面最好加注釋,這樣在程序出錯的檢查過程中可以更容易查找的到,也更簡潔,更明白易懂。</p><p> 該實驗的程序可以參考DVCC系列單片機微機仿
52、真實驗系統(tǒng)實驗指導書中的串并轉換實驗,也可自己根據自己熟悉的方法來編程。</p><p> 在設計控制開關時,注意2個中斷的打開和關閉的先后順序,否則就會出錯。</p><p><b> 總結</b></p><p> 本文主要從硬件方面說明設計的總體思路和設計的實現(xiàn)過程,預期的設計目的是:能夠實現(xiàn)時鐘的基本功能,正常顯示時分秒.在設計過
53、程中,曾經遇到很多的障礙,設計圖經過許多次的修改最后才定下來,但在調試的過程中又出現(xiàn)了問題,需要修改原理圖;比如硬件的布局,要作到使連接的線路最短,并不沒有想象中的那么容易;再焊接過程中稍不注意就會出現(xiàn)管腳的錯位,有些在硬件測試過程中才檢查出來。</p><p> 在設計中有好多問題都是因為理論知識不扎實,在有些管腳的置零置一上,概念的模糊,這使作者明白要把所學到的理論轉化為實踐需要一段努力學習的過程;在做一個
54、設計的過程中,一定要注意理論和實踐同步進行,光有理論知識還是遠遠不夠的,要用時間去檢驗理論,用理論指導實踐。</p><p> 最近幾年,科學發(fā)展很快,滲透在工農業(yè)生產的許多領域。通過畢業(yè)論文的設計我們有了更深的認識,只有在設計制作的過程中不斷的學習才能有更新的進步.不論在什么地方,什么崗位我門都要以學為主.學以學以置用.才能把我們的工作做的更好.</p><p><b>
55、參考文獻</b></p><p> [1] 吳金戎,沈慶陽,郭庭吉. 8051單片機實踐與應用[M]. 北京:清華大學出版社,2002 </p><p> [2] 樓然苗,李光飛. 51系列單片機設計實例[M]. 北京:航空航天大學出版社,2003 </p><p> [4] 李鴻. 單片機原理及應用[M]. 湖南:湖南大學出版社,2004<
56、/p><p> [5] 何立民. 單片機高級教程[M]. 第1版.北京:北京航空航天大學出版社,2001[6] 徐惠民、安德寧. 單片微型計算機原理接口與應用[M]. 第1版. 北京:北京郵電大學出版社,1996[7] 肖洪兵. 跟我學用單片機[M]. 北京:北京航空航天大學出版社,2002.8[8]李廣第. 單片機基礎[M]. 第1版.北京:北京航空航天大學出版社,1999 [9] 趙曉安. MCS-51
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論