單片機(jī)課程設(shè)計(jì)--基于單片機(jī)的控制循環(huán)燈設(shè)計(jì)_第1頁(yè)
已閱讀1頁(yè),還剩7頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p>  單片機(jī)原理及系統(tǒng)課程設(shè)計(jì)</p><p>  專 業(yè): 電氣工程及其自動(dòng)化 </p><p>  班 級(jí): </p><p>  姓 名: </p><p>  學(xué) 號(hào):

2、 </p><p>  指導(dǎo)教師: </p><p>  2012 年 7月 1日</p><p><b>  1 引言 </b></p><p>  基于單片機(jī)的控制循環(huán)燈設(shè)計(jì)。</p><p><b>  2 設(shè)計(jì)方

3、案及原理</b></p><p><b>  2.1 題目要求</b></p><p>  在單片機(jī)的P1口接8個(gè)發(fā)光二極管,通過(guò)中斷方式控制實(shí)現(xiàn)每個(gè)發(fā)光二極管指示燈閃爍10次,并依次循環(huán)。正常狀態(tài)下,這8個(gè)燈(發(fā)光二極管)先按一定流速?gòu)淖笙蛴伊鲃?dòng),再按一定流速?gòu)挠彝罅鲃?dòng)(假設(shè)這8個(gè)燈依次從左向右接在P1.0-P1.7上)。</p><

4、;p><b>  2.2 設(shè)計(jì)原理</b></p><p>  單片機(jī)循環(huán)燈是現(xiàn)今人們最普及的方法,本次設(shè)計(jì)用外接石英晶體振蕩器作為8051的時(shí)鐘電路,將P0.0-P0.7作為發(fā)光二極管的片選口,同時(shí)利用8051單片機(jī)的基本原理,來(lái)控制八個(gè)LED指示燈的依次往復(fù)循環(huán)閃爍10次。此次課設(shè)中選擇了共陽(yáng)極的二極管接法,所以通過(guò)給P0口輸送低電平0,就可以使二極管發(fā)光,輸送高電平1可使二極管熄

5、滅。</p><p>  設(shè)計(jì)框圖如圖1所示。</p><p><b>  圖1 設(shè)計(jì)框圖</b></p><p><b>  3 硬件設(shè)計(jì)</b></p><p>  此次芯片選用的是8051,8051芯片的外部時(shí)鐘是用外接石英晶體振蕩器來(lái)實(shí)現(xiàn)的,時(shí)鐘電路用于產(chǎn)生單片機(jī)工作所需的時(shí)鐘信號(hào)。在MC

6、S-51系列單片機(jī)芯片外部,X1和X2之間跨接晶體振蕩器和微調(diào)電容,從而構(gòu)成一個(gè)穩(wěn)定的自激振蕩器,這就是單片機(jī)的時(shí)鐘電路。發(fā)光二極管有共陽(yáng)和共陰接法,此次設(shè)計(jì)選擇了共陽(yáng)接法,所以可通過(guò)給P0口輸送低電平就可驅(qū)動(dòng)發(fā)光二極管發(fā)光,輸送高電平就可使發(fā)光二極管熄滅。</p><p>  硬件原理圖如圖2所示。</p><p><b>  圖2 硬件原理圖</b></p

7、><p><b>  4 軟件設(shè)計(jì)</b></p><p>  循環(huán)燈設(shè)計(jì)大概的設(shè)計(jì)思路可概括為以下8個(gè)步驟:</p><p>  (1) 給累加器A送0FEH,送閃爍個(gè)數(shù)8給R2,送閃爍次數(shù)10給寄存器R0。</p><p>  (2) 通過(guò)累加器A給P1口送二進(jìn)制數(shù),驅(qū)動(dòng)八個(gè)發(fā)光二極管,低電平發(fā)光,高電平熄滅。</

8、p><p>  (3) 調(diào)用DELAY延時(shí)程序。</p><p>  (4) 送0FFH給P1口,使發(fā)光二極管熄滅,再調(diào)用DELAY延時(shí)程序使發(fā)光二極管延時(shí)1S。</p><p>  (5) 重復(fù)(2)、(3)、(4)至發(fā)光二極管閃爍十次后結(jié)束循環(huán)。</p><p>  (6) 執(zhí)行RL(循環(huán)左移)指令,指向下一個(gè)二極管,重復(fù)第5步。</p

9、><p>  (7) 當(dāng)8個(gè)發(fā)光二極管從左至右依次閃爍完畢后,給累加器A送07FH,執(zhí)行第5步,使二極管從最右邊開始閃爍。同時(shí)執(zhí)行RR(循環(huán)右移)指令,當(dāng)每個(gè)發(fā)光二極管閃爍完10后指向下一個(gè)二極管。</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>  按照單片機(jī)系統(tǒng)擴(kuò)展與系統(tǒng)配置狀況,單片機(jī)應(yīng)用系統(tǒng)可分為最小系統(tǒng)、最小功耗系統(tǒng)及典型系統(tǒng)。8051單片機(jī)是Intel公司生產(chǎn)的,除無(wú)片內(nèi)ROM外,其余特性與MCS-51單片機(jī)基本一樣。8051單片機(jī)都采用40引腳的直插封裝(DIP方式),在單片機(jī)的40條

11、引腳中有2條專用于主電源的引腳,2條外接晶體的引腳,4條控制或與其它電源復(fù)用的引腳,32條輸入/輸出(I/O)引腳。8051單片機(jī)的引腳除了電源、復(fù)位、時(shí)鐘接入,用戶I/O口外,其余管腳是為實(shí)現(xiàn)系統(tǒng)擴(kuò)展而設(shè)置的。因此,本控制循環(huán)燈實(shí)際上就是一個(gè)帶有8個(gè)發(fā)光二極管的單片機(jī)最小應(yīng)用系統(tǒng),即為由單片機(jī)8051、發(fā)光二極管和必要的軟件組成的單個(gè)單片機(jī)系統(tǒng)。此系統(tǒng)利用單片機(jī)的P1.0-P1.7作為8段顯示LED的段控碼輸入,當(dāng)位控線輸入高電平時(shí)對(duì)

12、應(yīng)的LED點(diǎn)亮。再利用單片機(jī)內(nèi)部的定時(shí)器對(duì)每一個(gè)輸出口的電平做時(shí)間控制,實(shí)現(xiàn)每一個(gè)接口出現(xiàn)循環(huán)的高低電平,從而實(shí)現(xiàn)對(duì)每一個(gè)接口所接燈的循環(huán)控制,使8盞燈各依次亮滅10次。</p><p><b>  參考文獻(xiàn)</b></p><p>  [1] 李剛民.陳盅平.單片機(jī)原理及使用技術(shù).北京高等教育出版社.2005</p><p>  [2] 李華

13、.王思明.單片機(jī)應(yīng)用及原理[M].蘭州大學(xué)出版社.2001</p><p>  [3] 李全利.單片機(jī)原理及應(yīng)用技術(shù).高等教育出版社.2001 </p><p>  [4] 丁愛民.單片機(jī)應(yīng)用技術(shù).北京理工大學(xué)出版社.2002</p><p><b>  附錄</b></p><p><b>  附錄一: 調(diào)

14、試結(jié)果</b></p><p>  附錄二:循環(huán)燈控制設(shè)計(jì)程序</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 ;使最左邊的一個(gè)二極管發(fā)光</p><p>  LCALL DELAY

18、 ;調(diào)用延時(shí)1s的子程序</p><p>  MOV P1,#0FFH ;使最左邊的一個(gè)二極管熄滅</p><p>  LCALL DELAY ;調(diào)用延時(shí)1s的子程序</p><p>  DJNZ R0,LOOP ;循環(huán)閃爍

19、十次</p><p>  RL A ;指向下一個(gè)二極管</p><p>  MOV R0,#10 ;再次將閃爍次數(shù)10次送入R0</p><p>  DJNZ R2,LOOP ;8個(gè)燈從左到右依次閃爍完畢</p><p

20、>  MOV R2,#8 </p><p>  MOV A,#07FH </p><p>  LOOP1: MOV P1,A ;使最右邊的一個(gè)二極管發(fā)光</p><p>  LCALL DELAY

21、 ;調(diào)用延時(shí)1s的子程序</p><p>  MOV P1,#0FFH ;使最右邊的一個(gè)二極管熄滅</p><p>  LCALL DELAY ;調(diào)用延時(shí)1s的子程序</p><p>  DJNZ R0,LOOP ;循環(huán)閃爍十次</p><

22、p>  RR A ;指向下一個(gè)二極管</p><p>  MOV R0,#10 ;再次將閃爍次數(shù)10次送入R0</p><p>  DJNZ R2,LOOP1 ;8個(gè)燈從右到左依次閃爍完畢</p><p>  LJMP MAIN

23、 ;轉(zhuǎn)向主程序</p><p>  DELAY: MOV R5,#200 ;延時(shí)1s的DELAY子程序</p><p>  MOV R7,#10</p><p>  LOOP2: MOV TMOD,#20H ;定時(shí)器1工作于方式2</p>&l

24、t;p>  MOV TH1,#06H ;送初值</p><p>  MOV TL1,#06H</p><p>  SETB ET1 ;允許定時(shí)器1中斷</p><p>  SETB P2.0 ;P2.0輸出置1</p>

25、<p>  SETB TR1 ;啟動(dòng)定時(shí)器1</p><p>  LOOP3: JBC TF1,LOOP4 ;定時(shí)500us到,轉(zhuǎn)向LOOP4執(zhí)行</p><p>  SJMP LOOP3</p><p>  LOOP4: CLR TR1

26、 ;停止定時(shí)器1</p><p>  CLR P2.0 ;P2.0輸出取反</p><p><b>  DJNZ R7,$</b></p><p>  DJNZ R5,LOOP2 ;循環(huán)2000次定時(shí)程序,延時(shí)1s</p><p>  

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論