并行接口實驗_第1頁
并行接口實驗_第2頁
并行接口實驗_第3頁
并行接口實驗_第4頁
并行接口實驗_第5頁
已閱讀5頁,還剩12頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

并行接口實驗第1頁,共17頁,2023年,2月20日,星期一實驗目的

熟悉并行接口電路,掌握并行接口芯片8255A的應用及其編程技術。第2頁,共17頁,2023年,2月20日,星期一實驗內容

通過對8255芯片的編程,使得實驗臺上的顯示燈(發(fā)光二極管)輪流交替發(fā)光。具體過程如下:

1.按下開關SW1時,顯示燈朝一個方向循環(huán)點亮,按下開關SW4時,顯示燈改變方向循環(huán)點亮。

2.按下開關SW1時,顯示燈朝一個方向循環(huán)點亮;再次按下開關SW1時,顯示燈改變方向循環(huán)點亮。第3頁,共17頁,2023年,2月20日,星期一實驗原理將8255設置工作在“A組方式0”下(A口輸出/C口輸入),PA0-PA7輸出信號控制顯示燈順序點亮,PC0和PC7輸入信號控制顯示燈點亮的方向。PA0-PA7輸出的一個8位二進制數(shù)值決定了顯示燈點亮順序和方向。例如輸出的二進制數(shù)是1000,0000B(0111,1111B)時,控制左(右)邊第1個燈亮;輸出值是0100,0000(1011,1111B)時,控制左(右)邊第2個燈亮,依次類推。第4頁,共17頁,2023年,2月20日,星期一實驗中的相關硬件配置1.用導線將8255芯片的PA0-PA7端口與顯示燈L1-L8連接。2.用導線將8255芯片的PC0/PC7端口與開關SW1/SW4連接。3.模塊電源JP7(L區(qū))跳接。4.用導線將74LS245(M區(qū)U102)的OE#與地(GND)連接。第5頁,共17頁,2023年,2月20日,星期一8255端口說明

8255提供A、B、C

三個數(shù)據端口和一個命令端口進行并行數(shù)據的輸入/輸出和控制,這些端口對應的端口地址分別是:

A端口:300H

B端口:301H

C端口:302H

命令口:303H

選擇不同的工作方式,可對端口進行不同的配置。第6頁,共17頁,2023年,2月20日,星期一8255工作方式說明

8255有3種工作方式:方式0、方式1、方式2。在方式0下8255提供:兩個8位端口(PA0-PA7和PB0-PB7)兩個4位端口(PC0-PC3和PC4-PC7)任何一個端口都可用做輸入或輸出(單向),由CPU發(fā)出簡單的I/O指令(IN、OUT)來進行讀/寫。

習慣上將A口和B口作為數(shù)據輸出口,將C口作為控制或狀態(tài)輸入口。第7頁,共17頁,2023年,2月20日,星期一8255命令字說明1.指定8255工作方式的控制字(303H)標志位=1時,用于工作方式的選擇

=0時,用作按位置位/復位控制第8頁,共17頁,2023年,2月20日,星期一8255命令字說明標志位=0時,用作按位置位/復位控制.當D0=1時,D3~D1的輸出有效,反之無效。2.8255C口實現(xiàn)按位置位/復位功能的控制字(303H)第9頁,共17頁,2023年,2月20日,星期一8255編程要領18255初始化 置8255為方式0(A口輸出,C口輸入):

movdx,303h ;命令口地址->DX

moval,89h ;10001001B(方式字)->AL

outdx,al ;方式字->命令口其中方式字10001001B表示:

1.8255工作在方式0

2.A口和B口為輸出

3.C口高4位和低4為分別為輸入第10頁,共17頁,2023年,2月20日,星期一8255編程要領2通過8255的A口輸出數(shù)據控制顯示燈亮:

movdx,300h

;數(shù)據口地址->DX

moval,11111110B

;顯示數(shù)據->AL

outdx,al

;顯示數(shù)據->命令口其中,顯示數(shù)據11111110B(00000001B)為初始顯示數(shù)據,然后使用循環(huán)移位來控制數(shù)據的變化,使得顯示燈循環(huán)點亮。第11頁,共17頁,2023年,2月20日,星期一8255編程要領3檢測8255的C口輸入,判斷按鍵開關是否按下:L: MOV DX,302H

;C口地址->DX

IN AL,DX ;讀取C口數(shù)據

AND AL,01H ;檢測數(shù)據是否=00000001B

JNZ L ;檢測零標志位被檢測數(shù)據與C口所接的開關相關: 如PC0接SW1,則測試數(shù)據是否=00000001B

如PC7接SW4,則測試數(shù)據是否=10000000B第12頁,共17頁,2023年,2月20日,星期一8255編程要領4

由于顯示燈的閃亮速度慢于程序執(zhí)行速度,所以在每次向A口輸出數(shù)據后都應該進行一個小的延時,延時用一段空循環(huán)程序來實現(xiàn),如:

MOV BX,0FFFFH ;循環(huán)次數(shù)

DELAY:DEC BX ;延時

JNZ DELAY

或使用LOOP語句第13頁,共17頁,2023年,2月20日,星期一編寫和調試程序要領1.程序按功能分段編寫并調試2.功能可劃分為:8255初始化、讀C口狀態(tài)并進行判斷、從A口輸出數(shù)據及數(shù)據左移位、從A口輸出數(shù)據及數(shù)據右移位、時間延遲等幾部分。3.可在程序中適當加入提示信息,這樣可以幫助分析程序是否按設計的思路運行。第14頁,共17頁,2023年,2月20日,星期一實驗報告要求一.實驗報告格式

1.實驗目的

2.實驗內容

3.實驗原理(含原理圖和程序流程框圖)

4.程序代碼

5.實驗體會二.使用A4紙打印,封面包括實驗名稱、實驗者姓名、實驗時間等第15頁,共17頁,2023年,2月20日,星期一附加實驗:步進電機控制實驗步進電機控制實驗中的項序表及使用:1.項序表(控制電機的正反轉方向和轉動角度)PTABLE1DB05H,15H,14H,54H,50H,51H,41H,45H;順時針相序表

PTABLE2DB45H,41H,51H,50H,54,14H,15H,05H;逆時針相序表2.項序表使用

LEA SI,PTABLE1 ;裝入相序表地址(正轉)

MOVDX,300H ;300H=PA口

MOVAL,BYTEPTR[SI] ;取相序表中一個數(shù)據

OUT DX,AL ;驅動電機轉動第16頁,共17頁,2023年,2月20日,星期一指令test與and的區(qū)別test只改變標志位,例如:

test

al,0ffh

若zf=1,即零標志位為1,表示al為全零

and

一樣

但是若不是與0ffh

溫馨提示

  • 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

提交評論