8255LED跑馬燈參考模板_第1頁
8255LED跑馬燈參考模板_第2頁
8255LED跑馬燈參考模板_第3頁
8255LED跑馬燈參考模板_第4頁
8255LED跑馬燈參考模板_第5頁
已閱讀5頁,還剩1頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、實驗名稱 8255LED跑馬燈 實驗時間 年 月 日專 業(yè) 17電信 教師評語:姓 名 何明星 成 績 教師簽名 一、 實驗目的1. 掌握8255的編程方法;2. 利用8086,8255實現LED跑馬燈控制;二、 實驗原理 8255有三個8位數據端口,即端口A,即端口B,即端口C。可以通過控制字來使它們分別作為輸入端口或輸出端口。端口A對應一個8位數據輸入鎖存器和一個8位數據輸出鎖存器/緩沖器,所以用A端口作為輸入口或輸出口時,數據均受到鎖存;端口B對應一個8位數據輸入緩沖器和一個8位數據輸出鎖存器/緩沖器;端口C對應一個8位數據輸入緩沖器和一個8位數據輸出鎖存器/緩沖器。端口C作為輸入端口時

2、,對數據不作緩存,而作為輸出端口時,對數據進行緩存。在使用中,端口A和端口B常常作為獨立的輸入端口或者輸出端口,端口C則配合端口A和端口B工作。本實驗中讓端口A作為輸出端口,通過程序來控制端口A的輸出內容,輸出結果通過LED燈亮滅情況來顯示。 8255芯片引腳:1 / 6 三、 實驗連線 CS0«CS8255 PA0PA7 «LED1LED8四、 實驗內容 對8255寫入控制字后,通過軟件延時來實現LED跑馬燈控制;五、 實驗結果 跑馬燈:1. LED1LED8先從左到右,然后從右到左點亮2. 紅燈依次先亮,然后綠燈依次再亮,回到1重復點亮。六、 程序代碼 1.8255LE

3、D跑馬燈 IO8255A EQU 04A0H IO8255B EQU 04A2H IO8255C EQU 04A4H IO8255CTRL EQU 04A6H ASSUME CS:CODE CODE SEGMENT PUBLICORG 100HSTART: MOV DX, IO8255CTRL MOV AL, 10000000B ;80H=10000000B,工作方式0,A,B,C口全輸出 OUT DX, AL MOV BH,11111111B ;讓LED燈全部熄滅MOV AL,11111110B ;點亮第一個LED燈;=第一次循環(huán)從左到右點亮LED燈 =MOV CX,7H ;控制移動循環(huán)次數

4、DISPLAY1: MOV DX, IO8255A ;A口地址,讓A口輸出 OUT DX, AL ROL AL, 1 ;循環(huán)左移實現LED燈從左到右點亮 CALL DELAY ;調用軟件延時程序 PUSH AX MOV AL,BH ;讓LED燈全部熄滅 OUT DX,AL POP AX LOOP DISPLAY1;=第二次循環(huán)從右到左點亮LED燈= MOV CX,7H;控制移動循環(huán)次數DISPLAY2: MOV DX, IO8255A ;A口地址,讓A口輸出 OUT DX, AL ROR AL, 1 ;循環(huán)右移實現LED燈從右到左點亮 CALL DELAY ;調用軟件延時程序 PUSH AX

5、MOV AL,BH ;讓LED燈全部熄滅 OUT DX,AL POP AX LOOP DISPLAY2; =第三次循環(huán)從左到右點亮紅燈= MOV CX,3 ;控制移動循環(huán)次數 DISPLAY3: MOV DX, IO8255A ;A口地址,讓A口輸出 OUT DX, AL PUSH CX MOV CL,02 ;控制移位,每次移2位 ROL AL,CL ;循環(huán)左移2位,實現紅燈從左到右點亮紅燈 POP CX CALL DELAY ;調用軟件延時程序 PUSH AX MOV AL,BH ;讓LED燈全部熄滅 OUT DX,AL POP AX LOOP DISPLAY3; =第四次循環(huán)從LED7紅燈

6、跳到LED8綠燈= MOV CX,1 DISPLAY4: MOV DX, IO8255A ;A口地址,讓A口輸出 OUT DX, AL ROL AL,1 ;左移一位,讓LED從LED7跳到LED8 CALL DELAY ;調用軟件延時程序 PUSH AX MOV AL,BH ;讓LED燈全部熄滅 OUT DX,AL POP AX LOOP DISPLAY4; =第五次循環(huán)從右到左點亮綠燈= MOV CX,3 ;控制移動循環(huán)次數 DISPLAY5: MOV DX, IO8255A ;A口地址,讓A口輸出 OUT DX, AL PUSH CX MOV CL,02 ;控制移位,每次移2位 ROR A

7、L,CL ;循環(huán)右移2位,實現紅燈從右到左點亮綠燈 POP CX CALL DELAY ;調用軟件延時程序 PUSH AX MOV AL,BH ;讓LED燈全部熄滅 OUT DX,AL POP AX LOOP DISPLAY5; =第六次循環(huán)從LED2跳到LED1= MOV CX,1 ;控制移動循環(huán)次數 DISPLAY6: MOV DX, IO8255A ;A口地址,讓A口輸出 OUT DX, AL ROR AL,1 ;右移一位,實現LED2到LED1點亮 CALL DELAY ;調用軟件延時程序 PUSH AX MOV AL,BH ;讓LED燈全部熄滅 OUT DX,AL POP AX LOOP DISPLAY6; =設置CX的值為7,重復上述循環(huán) = MOV CX,7 JMP DISPLAY1; =軟件延時

溫馨提示

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

評論

0/150

提交評論