

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p> 單片機原理及系統(tǒng)課程設(shè)計</p><p> 專 業(yè): 電氣工程及其自動化 </p><p> 班 級: </p><p> 姓 名: </p><p> 學(xué) 號:
2、 </p><p> 指導(dǎo)教師: </p><p> 2012 年 7月 1日</p><p><b> 1 引言 </b></p><p> 基于單片機的控制循環(huán)燈設(shè)計。</p><p><b> 2 設(shè)計方
3、案及原理</b></p><p><b> 2.1 題目要求</b></p><p> 在單片機的P1口接8個發(fā)光二極管,通過中斷方式控制實現(xiàn)每個發(fā)光二極管指示燈閃爍10次,并依次循環(huán)。正常狀態(tài)下,這8個燈(發(fā)光二極管)先按一定流速從左向右流動,再按一定流速從右往左流動(假設(shè)這8個燈依次從左向右接在P1.0-P1.7上)。</p><
4、;p><b> 2.2 設(shè)計原理</b></p><p> 單片機循環(huán)燈是現(xiàn)今人們最普及的方法,本次設(shè)計用外接石英晶體振蕩器作為8051的時鐘電路,將P0.0-P0.7作為發(fā)光二極管的片選口,同時利用8051單片機的基本原理,來控制八個LED指示燈的依次往復(fù)循環(huán)閃爍10次。此次課設(shè)中選擇了共陽極的二極管接法,所以通過給P0口輸送低電平0,就可以使二極管發(fā)光,輸送高電平1可使二極管熄
5、滅。</p><p> 設(shè)計框圖如圖1所示。</p><p><b> 圖1 設(shè)計框圖</b></p><p><b> 3 硬件設(shè)計</b></p><p> 此次芯片選用的是8051,8051芯片的外部時鐘是用外接石英晶體振蕩器來實現(xiàn)的,時鐘電路用于產(chǎn)生單片機工作所需的時鐘信號。在MC
6、S-51系列單片機芯片外部,X1和X2之間跨接晶體振蕩器和微調(diào)電容,從而構(gòu)成一個穩(wěn)定的自激振蕩器,這就是單片機的時鐘電路。發(fā)光二極管有共陽和共陰接法,此次設(shè)計選擇了共陽接法,所以可通過給P0口輸送低電平就可驅(qū)動發(fā)光二極管發(fā)光,輸送高電平就可使發(fā)光二極管熄滅。</p><p> 硬件原理圖如圖2所示。</p><p><b> 圖2 硬件原理圖</b></p
7、><p><b> 4 軟件設(shè)計</b></p><p> 循環(huán)燈設(shè)計大概的設(shè)計思路可概括為以下8個步驟:</p><p> (1) 給累加器A送0FEH,送閃爍個數(shù)8給R2,送閃爍次數(shù)10給寄存器R0。</p><p> (2) 通過累加器A給P1口送二進制數(shù),驅(qū)動八個發(fā)光二極管,低電平發(fā)光,高電平熄滅。</
8、p><p> (3) 調(diào)用DELAY延時程序。</p><p> (4) 送0FFH給P1口,使發(fā)光二極管熄滅,再調(diào)用DELAY延時程序使發(fā)光二極管延時1S。</p><p> (5) 重復(fù)(2)、(3)、(4)至發(fā)光二極管閃爍十次后結(jié)束循環(huán)。</p><p> (6) 執(zhí)行RL(循環(huán)左移)指令,指向下一個二極管,重復(fù)第5步。</p
9、><p> (7) 當(dāng)8個發(fā)光二極管從左至右依次閃爍完畢后,給累加器A送07FH,執(zhí)行第5步,使二極管從最右邊開始閃爍。同時執(zhí)行RR(循環(huán)右移)指令,當(dāng)每個發(fā)光二極管閃爍完10后指向下一個二極管。</p><p> (8) 當(dāng)從右至左循環(huán)結(jié)束后,又回到第(1)步,循環(huán)往復(fù)。</p><p> 程序流程圖如圖3所示。</p><p><
10、b> 圖3 程序流程圖</b></p><p><b> 5 總結(jié)</b></p><p> 按照單片機系統(tǒng)擴展與系統(tǒng)配置狀況,單片機應(yīng)用系統(tǒng)可分為最小系統(tǒng)、最小功耗系統(tǒng)及典型系統(tǒng)。8051單片機是Intel公司生產(chǎn)的,除無片內(nèi)ROM外,其余特性與MCS-51單片機基本一樣。8051單片機都采用40引腳的直插封裝(DIP方式),在單片機的40條
11、引腳中有2條專用于主電源的引腳,2條外接晶體的引腳,4條控制或與其它電源復(fù)用的引腳,32條輸入/輸出(I/O)引腳。8051單片機的引腳除了電源、復(fù)位、時鐘接入,用戶I/O口外,其余管腳是為實現(xiàn)系統(tǒng)擴展而設(shè)置的。因此,本控制循環(huán)燈實際上就是一個帶有8個發(fā)光二極管的單片機最小應(yīng)用系統(tǒng),即為由單片機8051、發(fā)光二極管和必要的軟件組成的單個單片機系統(tǒng)。此系統(tǒng)利用單片機的P1.0-P1.7作為8段顯示LED的段控碼輸入,當(dāng)位控線輸入高電平時對
12、應(yīng)的LED點亮。再利用單片機內(nèi)部的定時器對每一個輸出口的電平做時間控制,實現(xiàn)每一個接口出現(xiàn)循環(huán)的高低電平,從而實現(xiàn)對每一個接口所接燈的循環(huán)控制,使8盞燈各依次亮滅10次。</p><p><b> 參考文獻</b></p><p> [1] 李剛民.陳盅平.單片機原理及使用技術(shù).北京高等教育出版社.2005</p><p> [2] 李華
13、.王思明.單片機應(yīng)用及原理[M].蘭州大學(xué)出版社.2001</p><p> [3] 李全利.單片機原理及應(yīng)用技術(shù).高等教育出版社.2001 </p><p> [4] 丁愛民.單片機應(yīng)用技術(shù).北京理工大學(xué)出版社.2002</p><p><b> 附錄</b></p><p><b> 附錄一: 調(diào)
14、試結(jié)果</b></p><p> 附錄二:循環(huán)燈控制設(shè)計程序</p><p> ORG 0000H ;程序存放的起始地址</p><p> AJMP MAIN ;上電,轉(zhuǎn)向主程序 </p><p> ORG 0003H
15、 ;外部中斷0入口地址</p><p> AJMP LOOP ;轉(zhuǎn)向中斷服務(wù)程序</p><p> ORG 0030H ;主程序</p><p> MAIN: SETB EX0 ;允許外部
16、中斷0中斷</p><p> SETB IT0 ;選擇邊沿觸發(fā)方式</p><p> SETB EA ;CPU開中斷</p><p> MOV R0,#10 ;將閃爍次數(shù)10送入R0</p><p&
17、gt; MOV R2,#8 ;將燈的數(shù)量8送入R2</p><p> MOV A,#0FEH </p><p> LOOP: MOV P1,A ;使最左邊的一個二極管發(fā)光</p><p> LCALL DELAY
18、 ;調(diào)用延時1s的子程序</p><p> MOV P1,#0FFH ;使最左邊的一個二極管熄滅</p><p> LCALL DELAY ;調(diào)用延時1s的子程序</p><p> DJNZ R0,LOOP ;循環(huán)閃爍
19、十次</p><p> RL A ;指向下一個二極管</p><p> MOV R0,#10 ;再次將閃爍次數(shù)10次送入R0</p><p> DJNZ R2,LOOP ;8個燈從左到右依次閃爍完畢</p><p
20、> MOV R2,#8 </p><p> MOV A,#07FH </p><p> LOOP1: MOV P1,A ;使最右邊的一個二極管發(fā)光</p><p> LCALL DELAY
21、 ;調(diào)用延時1s的子程序</p><p> MOV P1,#0FFH ;使最右邊的一個二極管熄滅</p><p> LCALL DELAY ;調(diào)用延時1s的子程序</p><p> DJNZ R0,LOOP ;循環(huán)閃爍十次</p><
22、p> RR A ;指向下一個二極管</p><p> MOV R0,#10 ;再次將閃爍次數(shù)10次送入R0</p><p> DJNZ R2,LOOP1 ;8個燈從右到左依次閃爍完畢</p><p> LJMP MAIN
23、 ;轉(zhuǎn)向主程序</p><p> DELAY: MOV R5,#200 ;延時1s的DELAY子程序</p><p> MOV R7,#10</p><p> LOOP2: MOV TMOD,#20H ;定時器1工作于方式2</p>&l
24、t;p> MOV TH1,#06H ;送初值</p><p> MOV TL1,#06H</p><p> SETB ET1 ;允許定時器1中斷</p><p> SETB P2.0 ;P2.0輸出置1</p>
25、<p> SETB TR1 ;啟動定時器1</p><p> LOOP3: JBC TF1,LOOP4 ;定時500us到,轉(zhuǎn)向LOOP4執(zhí)行</p><p> SJMP LOOP3</p><p> LOOP4: CLR TR1
26、 ;停止定時器1</p><p> CLR P2.0 ;P2.0輸出取反</p><p><b> DJNZ R7,$</b></p><p> DJNZ R5,LOOP2 ;循環(huán)2000次定時程序,延時1s</p><p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機課程設(shè)計--基于單片機的交通燈設(shè)計
- 單片機交通燈課程設(shè)計--基于單片機的交通燈控制設(shè)計
- 單片機課程設(shè)計--基于單片機的交通燈設(shè)計 (2)
- 單片機課程設(shè)計--基于51單片機的交通燈
- 單片機課程設(shè)計--單片機控制的交通燈控制系統(tǒng)設(shè)計
- 《單片機原理》課程設(shè)計--單片機交通的燈控制設(shè)計與實現(xiàn)
- 單片機課程設(shè)計報告--基于單片機的數(shù)字交通燈
- 單片機課程設(shè)計報告--基于單片機的交通燈控制系統(tǒng)
- 基于單片機的秒表設(shè)計單片機課程設(shè)計
- 單片機課程設(shè)計--單片機控制步進電機
- 單片機課程設(shè)計-單片機控制步進電機
- 單片機課程設(shè)計---廣告燈
- 單片機課程設(shè)計廣告燈
- 單片機課程設(shè)計--單片機控制各種器件
- 單片機課程設(shè)計--基于單片機的步進電機控制
- 單片機交通燈課程設(shè)計--基于單片機的交通燈系統(tǒng)的設(shè)計
- 單片機廣告燈課程設(shè)計
- 單片機控制交通燈課程設(shè)計
- 單片機課程設(shè)計--基于單片機的水位控制系統(tǒng)設(shè)計
- 單片機課程設(shè)計--基于單片機的水位控制系統(tǒng)設(shè)計
評論
0/150
提交評論