版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 單片機課程設計報告</b></p><p> 院系:_____________</p><p> 班級:_____________</p><p> 學號:_____________</p><p> 姓名:_____________</p><p> 日期
2、:_____________</p><p><b> 一、課程設計內(nèi)容</b></p><p> 該課程設計是利用80C51單片機內(nèi)部的定時/計數(shù)器、中斷系統(tǒng)和LED顯示器等部件,設計一個單片機數(shù)字時鐘。設計的數(shù)字時鐘通過數(shù)碼管顯示。</p><p><b> 二、課程設計題目</b></p><
3、;p><b> 1、作息時間控制鐘</b></p><p> ?、俟δ芤螅簳r鐘計時及顯示(每秒刷新)、到設定時間指示燈提示(幾秒)。</p><p> ②原理及方法:結合實驗設備實現(xiàn)時硬件電路、原理、方法、說明(初始化、存儲分配、工作方式)等。</p><p> ?、鄢绦蛟O計:計時、比較、顯示提示。</p><p
4、> ④調(diào)試:遇到的問題、解決方法。。</p><p> 三、80C51單片機內(nèi)部定時器\計數(shù)器、中斷系統(tǒng)</p><p><b> 定時器\計數(shù)器</b></p><p> 1、80C51系列中51子系列有兩個16位的可編程定時\計數(shù)器可:定時\計數(shù)器T0和定時\計數(shù)器T1。它由加法計數(shù)器、方式寄存器TMOD、控制寄存器TCON等
5、組成。方式寄存器用于設定定時計數(shù)器T0和T1的工作方式,控制寄存器用于對定時計數(shù)器啟動、停止進行控制。</p><p> 2、每個定時計數(shù)器既可以對系統(tǒng)時鐘計數(shù)實現(xiàn)定時,也可以外部信號計數(shù)實現(xiàn)計數(shù)功能通過編程設定來實現(xiàn)。</p><p> 3、每個定時計數(shù)器都有多種工作方式,其中T0有四種工作方式,T1有三種工作方式,T2有三種工作方式。通過編程可設定工作于某種方式。四種工作方式為:1
6、3位定時\計數(shù)器、16位定時\計數(shù)器、8位自動重置定時\計數(shù)器、兩個8位定時\計數(shù)器(只有T0有)</p><p> 4、每一個定時計數(shù)器定時計數(shù)時間到時產(chǎn)生溢出,使相應的溢出位置位,溢出可通過查詢或中斷方式處理。</p><p><b> 中斷系統(tǒng):</b></p><p> 1、80C51單片機提供5個硬件中斷源,2個外部中斷源,2個
7、定時計數(shù)器T0和T1的溢出中斷TF0和TF1,1個串行口發(fā)送TI和接收RI中斷。</p><p> 2、80C51單片機中沒有專門的開中斷和關中斷指令,對各個中斷源的允許和屏蔽是由內(nèi)部的中斷允許寄存器IE的各位來控制的。中斷允許寄存器IE的字節(jié)地址為A8H,可以進行位尋址。系統(tǒng)復位時,中斷允許寄存器IE的內(nèi)容為00H,如果要開放某個中斷源,則必須使IE中的總控置位和對應的中斷允許位置“1”。</p>
8、<p> 3、80C51單片機有5個中斷源,為了處理方便,每個中斷源有兩級控制,高優(yōu)先級和低優(yōu)先級。通過由內(nèi)部的中斷優(yōu)先級寄存器IP來設置,中斷優(yōu)先級寄存器IP的字節(jié)地址為B8H,可以進行位尋址。如果某位被置“1”,則對應的中斷源被設為高優(yōu)先級;如果某位被清零,則對應的中斷源被設為低優(yōu)先級。對于同級中斷源,系統(tǒng)有默認的優(yōu)先權順序,從高到低優(yōu)先權順序為外部中斷0、定時計數(shù)器T0中斷、外部中斷1、定時計數(shù)器T1中斷、串行口中
9、斷。通過設置中斷優(yōu)先級寄存器IP能夠改變系統(tǒng)默認的優(yōu)先級順序。</p><p> 4、80C51單片機響應中斷的條件為:中斷源有請求且中斷允許。</p><p> 四、LED數(shù)碼管顯示器</p><p> 在單片機應用系統(tǒng)中,經(jīng)常用到LED數(shù)碼管作為顯示輸出設備,LED數(shù)碼管顯示器雖然顯示信息簡單,但它具有顯示清晰、亮度高、使用電壓低、壽命長、與單片機接口方便
10、等特點,基本上能夠滿足單片機應用系統(tǒng)的需要,所以在單片機應用系統(tǒng)中經(jīng)常用到。LED數(shù)碼管顯示器是由發(fā)光二極管按一定的結構組合起來的顯示器件。在單片機應用系統(tǒng)中通常使用的是8段式LED數(shù)碼管顯示器,它有共陰極和共陽極兩種。所謂譯碼方式是指由顯示字符轉(zhuǎn)換得到對應的字段碼的方式。對于LED數(shù)碼管顯示器,通常的譯碼方式有兩種:硬件譯碼方式和軟件譯碼方式。LED數(shù)碼管在顯示時,通常有兩種顯示方式:靜態(tài)顯示方式和動態(tài)顯示方式。在使用時可以把它們組合
11、起來。在實際應用時,如果數(shù)碼管個數(shù)較少,通常用硬件譯碼靜態(tài)顯示,在數(shù)碼管個數(shù)較多時,則通常用軟件譯碼動態(tài)顯示。</p><p><b> 五、基本原理</b></p><p> 軟時鐘是利用單片機內(nèi)部的定時器\計數(shù)器來實現(xiàn)的,它的處理過程如下:首先設定單片機內(nèi)部的一個定時器\計數(shù)器工作于定時方式,對機器周期計數(shù)形成基準時間,然后用另一個定時器\計數(shù)器或軟件計數(shù)的方
12、法對基準時間計數(shù)形成秒,秒計60次形成分,分計60次形成小時,小時計24次則計滿一天。然后通過數(shù)碼管把它們的內(nèi)容在相應位置顯示出來。</p><p> 數(shù)碼管顯示可以采用靜態(tài)顯示方法或動態(tài)顯示方法。靜態(tài)顯示方法需要數(shù)據(jù)鎖存器等硬件,接口復雜,時鐘顯示用6個數(shù)碼管。由于系統(tǒng)沒有其他的復雜的任務處理,而且顯示的時鐘信息隨時都可能變化,一般采用動態(tài)顯示方式。動態(tài)顯示方法線路相對簡單,但需動態(tài)掃描,掃描頻率要大于人眼視
13、覺暫留頻率,信息看起來才穩(wěn)定。譯碼方式可分為軟件譯碼和硬件譯碼,軟件譯碼通過譯碼程序查得顯示信息的字段碼;硬件譯碼通過硬件譯碼器得到顯示信息的字段碼,實際中通常采用軟件譯碼。</p><p> 在具體處理時,定時器計數(shù)器采用中斷方式工作,對時鐘的形成在中斷服務程序中實現(xiàn)。在主程序中只需對定時器計數(shù)器初始化、調(diào)用顯示子程序和控制子程序。</p><p> 六、系統(tǒng)硬件電路的設計</
14、p><p> 本實驗設置的時鐘初始時間是06:00:00,設置到06:01:00時燈亮五秒后自動關閉,本實驗的硬件連接圖如下:</p><p> 如圖,P0口通過接鎖存器74LS373來實現(xiàn)低位地址和數(shù)據(jù)線的共用,Q0口德Q0和Q1接8355的A0和A1口來選通8255的各端口,用8255的PA口來作為6個數(shù)碼管的段選碼,其地址為0FFDCH, 用8255的PB口來作為6個數(shù)碼管的位選碼
15、,其地址為0FFDDH。</p><p> 實驗中,設置8255的工作方式為:PA口和PB口均為方式0下的輸出模式,通過PB口依次輸出不同的值來實現(xiàn)6個數(shù)碼管的循環(huán)選通,通過PA口輸出不同的值使選通的數(shù)碼管顯示0—9之間不同的數(shù)值。</p><p> 程序中通過定時器0中斷的方式來實現(xiàn)秒位的每秒加一,設置50ms中斷發(fā)生一次,寄存器R0內(nèi)容加一,當R0內(nèi)容加到20時,R0內(nèi)容清零,并實
16、現(xiàn)秒位加一,寄存器R7—R2依次存放秒的個位十位,分的個位十位,小時的個位十位。</p><p><b> 七、程序</b></p><p><b> 顯示子程序流程圖</b></p><p><b> 主程序流程圖</b></p><p><b> 是<
17、;/b></p><p><b> 否</b></p><p><b> 是</b></p><p><b> 否</b></p><p><b> 是</b></p><p><b> 否</b&g
18、t;</p><p><b> 是</b></p><p><b> 是</b></p><p><b> 中斷流程圖</b></p><p><b> 否</b></p><p><b> 是</b>
19、;</p><p><b> 否</b></p><p><b> 是</b></p><p><b> 否</b></p><p><b> 是</b></p><p><b> 否</b><
20、/p><p><b> 是</b></p><p><b> 是</b></p><p><b> 程序代碼</b></p><p> SEC EQU 00</p><p> MIN EQU 00</p><p> H
21、 EQU 06</p><p> SECEND EQU 00</p><p> MINEND EQU 01</p><p> HEND EQU 06</p><p><b> ORG 0000H</b></p><p><b> LJMP MAIN</b&
22、gt;</p><p> ORG 000BH ;中斷入口</p><p><b> LJMP TIME</b></p><p> MAIN:MOV SP,#30H</p><p> SETB EA ; 開總中斷</p><p> SETB
23、ET0 ; 啟用定時器0</p><p> MOV TMOD,#01H ;定時器0工作方式1</p><p> MOV TH0,#3CH ;裝入初值</p><p> MOV TL0,#0B0H</p><p> SETB TR0 ;計時開啟</p&g
24、t;<p> MOV DPTR,#BIAO</p><p> MOV P2,#0FFH</p><p> MOV R0,#0DDH</p><p> MOV R1,#0DCH</p><p> MOV R3,#SEC</p><p> MOV R4,#MIN</p><p&
25、gt;<b> MOV R5,#H</b></p><p><b> MOV R7,#0</b></p><p><b> MOV P1,#0</b></p><p> LOOP: MOV A,R3</p><p><b> MOV R2,A</b&g
26、t;</p><p> MOV R6,#01</p><p> LCALL DISPLAY ;絕對調(diào)用</p><p> MOV R6,#04H</p><p><b> MOV A,R4</b></p><p><b> MOV R2,A</b&g
27、t;</p><p> LCALL DISPLAY</p><p> MOV R6,#10H</p><p><b> MOV A,R5</b></p><p><b> MOV R2,A</b></p><p> LCALL DISPLAY</p>
28、<p> CJNE R7,#10,LOOP</p><p><b> MOV R7,#0</b></p><p><b> INC R3</b></p><p> CJNE R3,#60,LOOP1</p><p><b> MOV R3,#0</b><
29、;/p><p><b> INC R4</b></p><p> CJNE R4,#60,LOOP1</p><p><b> MOV R4,#0</b></p><p><b> INC R5</b></p><p> CJNE R5,#24,L
30、OOP1</p><p><b> MOV R5,#0</b></p><p> LOOP1:CJNE R5,#HEND,LOOP3 ;定時比較</p><p> CJNE R4,#MINEND,LOOP3</p><p> MOV P1,#0FFH</p><p>&
31、lt;b> LJMP LOOP</b></p><p> LOOP3:MOV P1,#0</p><p><b> LJMP LOOP</b></p><p> DISPLAY:MOV B,#10</p><p><b> MOV A,R6</b></p>
32、<p> MOVX @R0,A</p><p><b> MOV A,R2</b></p><p><b> DIV AB</b></p><p><b> MOV R2,A</b></p><p><b> MOV A,B</b>&l
33、t;/p><p> MOVC A,@A+DPTR</p><p> MOVX @R1,A</p><p> LCALL DELAY</p><p><b> MOV A,R6</b></p><p><b> RL A</b></p><p>
34、 MOVX @R0,A</p><p><b> MOV A,R2</b></p><p> MOVC A,@A+DPTR</p><p> MOVX @R1,A</p><p> LCALL DELAY</p><p><b> RET</b></p>
35、<p> DELAY: MOV 7FH,#25</p><p> LOOP2: NOP</p><p> DJNZ 7FH,LOOP2</p><p><b> RET</b></p><p> BIAO:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,
36、90H</p><p> TIME:MOV TH0,#3CH ;重裝初值</p><p> MOV TL0,#0B0H</p><p><b> INC R7</b></p><p><b> RETI</b></p><p><b&g
37、t; END</b></p><p> 八、系統(tǒng)調(diào)試與存在的問題</p><p><b> 軟件調(diào)試</b></p><p> 軟件調(diào)試一般分為以下四個階段:</p><p> 1、 編寫程序并查錯;</p><p> 2、在mcs-51編譯系統(tǒng)中編譯源程序</p&g
38、t;<p> 3、對程序進行編譯連接,并及時發(fā)現(xiàn)程序中存在的錯誤;</p><p><b> 4、改正錯誤。</b></p><p> 在軟件調(diào)試過程中,對出現(xiàn)的錯誤進行了認真的分析和修改,多次調(diào)試成功后,能夠很好的達到既定的設計效果:</p><p> 1..在試驗中發(fā)現(xiàn)驅(qū)動數(shù)碼管顯示的都是亂碼,不是預定的值,把顯示程序
39、單獨拿出來后發(fā)現(xiàn)只驅(qū)動一位數(shù)碼管時可以顯示,但多位就不行,查找課本后發(fā)現(xiàn),驅(qū)動完每位數(shù)碼管后都必須加一毫秒左右的延時程序來確保每位數(shù)碼管的亮度,更改后顯示正常。</p><p> 2.程序中使用CJNE語句,編譯后提示跳轉(zhuǎn)長度不夠,更改為不相等時跳到就進的某個地方,再通過LJMP指令來實現(xiàn)轉(zhuǎn)移。</p><p><b> 九、小結</b></p>&
40、lt;p> 這次單片機課程設計不僅鞏固了以前所學過的知識,而且學到了很多在書本上沒有學到過的知識,掌握了一種系統(tǒng)的研究方法,可以進行一些簡單的編程。通過這次課程設計使我懂得了理論與實際相結合是很重要的,只有理論知識是遠遠不夠的,只有把所學的理論知識與實踐相結合起來,從理論中得出結論,從而提高自己的實際動手能力和獨立思考的能力。同時在設計的過程中發(fā)現(xiàn)了自己的不足之處. 這是一個磨練意志的過程。從課題的選擇開始,計算器的設計、硬件和
41、軟件系統(tǒng)的設計、到最后的上機實踐,直至報告完成這其中經(jīng)歷了很多困難,但是更重要的是在這個過程中我得到了很大的鍛煉。一方面通過80C51單片機等一些器件的設計讓我學習和掌握了單片機技術的基礎知識和技術要點,也使以前學的很多知識都得到了運用;這是一個需要不斷的嘗試,不斷的校核,不斷的修改,最后完成一個合理的設計的過程。需要的是細心和耐心。在很大程度上培養(yǎng)了我拼搏的工作精神。使我受益匪淺,更加明確了自己專業(yè)的方向。</p>&l
42、t;p> 通過本次課設,我不僅學到了關于單片機技術方面的許多專業(yè)知識,同時也讓我感覺到團隊合作的重要性。其實如何有效和快速的找到資料也是課設給我的啟發(fā),利用好圖書館和網(wǎng)絡,是資源的到最好的利用。與他人交流思想是取得成功的關鍵,在交流中,不僅強化了自己原有的知識體系,也擴展了自己的思維。課設是一個通過思考、發(fā)問、自己解惑并動手、提高的過程。我會在以后的學習中不斷學習,積累經(jīng)驗,完善自己。</p><p>
43、 通過單片機課程設計,我不僅加深了對單片機理論的理解,將理論很好地應用到實際當中去,而且我還學會了如何去培養(yǎng)我們的創(chuàng)新精神,從而不斷地戰(zhàn)勝自己,超越自己。創(chuàng)新,是要我們學會將理論很好地聯(lián)系實際,并不斷地去開動自己的大腦,從為人類造福的意愿出發(fā),做自己力所能及的,別人卻沒想到的事。使之不斷地戰(zhàn)勝別人,超越前人。同時,更重要的是,我在這一設計過程中,學會了堅持不懈,不輕易言棄。設計過程,也好比是我們?nèi)祟惓砷L的歷程,常有一些不如意,也許這就是
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機課程設計---單片機數(shù)字時鐘
- 單片機課程設計---單片機數(shù)字時鐘.doc
- 單片機課程設計報告---基于單片機的數(shù)字時鐘設計
- 單片機數(shù)字時鐘課程設計報告
- 單片機課程設計--基于單片機的數(shù)字時鐘設計
- 課程設計-單片機基于單片機的數(shù)字時鐘設計
- 單片機課程設計--數(shù)字時鐘
- 單片機數(shù)字時鐘課程設計
- 單片機課程設計--數(shù)字時鐘
- 單片機課程設計(數(shù)字時鐘)
- 單片機課程設計-單片機課程設計---電子時鐘
- 單片機課程設計數(shù)字時鐘
- 單片機數(shù)字時鐘控制課程設計
- 單片機課程設計數(shù)字時鐘
- 單片機課程設計報告--基于單片機的電子時鐘
- 單片機數(shù)字時鐘課程設計--單片機多功能電子鐘設計
- 單片機課程設計---數(shù)字時鐘的設計
- 單片機課程設計--單片機模擬電子時鐘設計
- 多功能數(shù)字時鐘 單片機課程設計
- 數(shù)字電子時鐘-單片機課程設計
評論
0/150
提交評論