西南科技大學(xué)微機(jī)原理10-55_第1頁
西南科技大學(xué)微機(jī)原理10-55_第2頁
西南科技大學(xué)微機(jī)原理10-55_第3頁
西南科技大學(xué)微機(jī)原理10-55_第4頁
西南科技大學(xué)微機(jī)原理10-55_第5頁
已閱讀5頁,還剩39頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第十章 可編程并行接口8255A10.1 可編程并行接口8255A10.2 8255A的控制字10.3 方式0根本的輸入/輸出方式10.4 方式1選通的輸入輸出方式10.5 方式2雙向傳輸方式本章小結(jié)本章習(xí)題并行/串行的含義是指:CPU和I/O設(shè)備間的信息交換方式:并行、串行通信CPU接口電路I/O設(shè)備接口與I/O設(shè)備或被控對象一側(cè)的數(shù)據(jù)傳輸。 并口最根本的特點(diǎn)是在多根數(shù)據(jù)線上以數(shù)據(jù)字節(jié)或字為單位與I/O 設(shè)備或被控對象傳送信息。如打印機(jī)接口、A/D、D/A接口、IEEE-488接口、開關(guān)量接口、控制設(shè)備接口等; 在并行接口中,除了無條件傳送方式外,一般還要在接口與外設(shè)之間設(shè)置兩根握手(聯(lián)絡(luò))

2、信號線; 在并行接口中,8位或16位數(shù)據(jù)線總是一起行動的; 并行接口電路有硬件連接接口和可編程接口之分,前者的工作方式和功能用硬件連接來設(shè)定,而后者可通過軟件編程來改變。10.1 可編程并行接口8255A 8255A是INTEL系列的并行接口芯片。它是可編程的,可以通過軟件來設(shè)置芯片的工作方式。10.1: 8255A的內(nèi)部結(jié)構(gòu)一、8255A的根本特性 1具有兩個8位(A口和B口)和兩個4位(C口高/低各4位)并行I/O端口; 每個端口:輸入帶緩沖存放器, 輸出帶鎖存存放器。 2A組控制和B組控制 3讀/寫控制邏輯電路 4數(shù)據(jù)總線緩沖器10.1: 8255A的內(nèi)部結(jié)構(gòu)5.讀寫控制信號RESET:

3、復(fù)位信號,高電平有效。D7D0 :和數(shù)據(jù)線相連。CS :芯片選擇信號,低電平有效。RD :芯片讀出信號,低電平有效。WR :芯片寫入信號,低電平有效。A1、A0:端口選擇信號。A1A0=00,選中端口A;A1A0=01,選中端口B;A1A0=10,選中端口C;A1A0=11,選中控制端口;10.1:讀寫控制信號與系統(tǒng)總線的連接信號:面向數(shù)據(jù)總線的;面向地址總線的;面向控制總線的。與外部設(shè)備的連接信號:A口輸入/輸出線;B口輸入/輸出線;C口輸入/輸出線。 A、B作為數(shù)據(jù)口, C口作用與工作方式有關(guān)。提問1:并行接口芯片8255與CPU接口有哪些信號線,每個信號的用途是什么? 8255占用幾個端

4、口地址?各個端口分別對應(yīng)什么?端口C可以分為兩組嗎? 10.1:提問10.2 8255A的控制字控制字:分為兩類端口的方式選擇控制字,可使8255A的3個數(shù)據(jù)端口工作在不同的方式。C端口按位置1/0控制字,它可使C端口中的任何一位進(jìn)行置位或復(fù)位。10.2:控制字8255A的3種根本工作方式: 方式0:根本的輸入/輸出方式 方式1:選通的輸入/輸出方式 方式2:雙向的傳輸方式1.方式控制字10.2:方式控制字0, 11=不用 例101:設(shè)A端口工作于方式0,輸出, B端口工作于方式0,輸入。 方式選擇控制字: 1 0 0 0 1/0 0 1 1/0 = 82H 方式選擇A口方式0A口輸出C口高位

5、不用B口輸入C口低位不用10.2:方式控制字例題B口方式0注意:端口A可以工作在方式0、方式1或方式2;端口B只能工作在方式0、方式1;端口C那么常常配合端口A和端口B工作;歸為同一組的兩個端口可以分別工作在輸入 方式和輸出方式,并不要求同為輸入方式或 同為輸出方式,而具體工作在哪個端口,由 方式控制字來決定。10.2:方式控制字本卷須知2. 端口C置1/0控制字1=置10=置00 D7 D6 D5 D4 D3 D2 D1 D0端口C置1/0控制字標(biāo)志0 0 0 PC00 0 1 PC10 1 0 PC20 1 1 PC31 0 0 PC41 0 1 PC51 1 0 PC61 1 1 PC7

6、10.2:端口C置1/0控制字注意:C端口置1/0控制字盡管是對端口C進(jìn)行操作,但此控制字必須寫入控制口,而不是寫入C端口。置1/0控制字的D0決定了是置1操作還是置0操作。置1/0控制字的D3、D2、D1位決定了對C端口的哪一位進(jìn)行操作。A、B口也可以按位輸出高/低電平,但是以送數(shù)據(jù)到A、B口來實(shí)現(xiàn)的。10.2:端口C置1/0控制字注意例102:設(shè)8255A的控制口地址為0EEH,要求對端口C的PC7置1,要求對端口C的PC3置0。10.2:端口C置1/0控制字例題 MOV AL , 0FH ;對PC7置1的控制字 MOV DX , 0EEH ;控制口地址送DX OUT DX , AL ;對

7、PC7置1操作 MOV AL , 06H ;對PC3置0的控制字 OUT DX , AL ;對PC3進(jìn)行置0的操作分析:端口C的PC7置1的控制字:00001111B=0FH端口C的PC3置0的控制字:00000110B=06H。提問2:8255A的方式選擇控制字和置1/置0控制 字都是寫入控制端口的,那么,它們是 由什么來區(qū)分的? 實(shí)際上,兩個控制字的取值分界線是?10.2:控制字提問10.3 8255A的工作方式8255A的3種根本工作方式:方式0:根本的輸入/輸出方式方式1:選通的輸入/輸出方式方式2:雙向的傳輸方式10.3:工作方式一、方式0-根本輸入輸出方式功能 任何一個端口可以作為

8、輸入口,也可以作為輸出口。 是單向I/O,一次只能指定端口作為輸入或作輸出,比能指定端口既作輸入又作輸出。 各個端口輸入或輸出,可以有16種不同的組合,所以可以適用于多種使用場合。方式0使用場合: 一種是同步傳送, 另一種是查詢式傳送。10.3:工作方式0功能二、方式0的時序10.3:工作方式0時序例103:用8255A控制三個發(fā)光二極管依次序循環(huán)點(diǎn)亮。10.3:工作方式0例題 8255AA0A1CS+5V200譯碼器D7 D0地址線8088CPUA0A2 PA0 PA1 PA2L1L2L3用8255A控制三個發(fā)光二極管顯示。8255A的端口地址為: A 端口:340H B 端口:341H C

9、 端口:342H 控制口:343H 試編寫8255初始化程序段和控制三個發(fā)光二極管顯示程序段。10.3:工作方式0例題開始8255A初始化延時BX顯示代碼地址CX=0?YNBX=BX+1CX=CX-1CX 3輸出到A口1、程序框圖:2、軟件設(shè)計1設(shè)A口為輸出口,B口為輸入,方式0下工作,那么方式選擇控制字為82H。2A口輸出代碼: 0000 0110 06H ;1號發(fā)光二極管亮 0000 0101 05H ;2號發(fā)光二極管亮 0000 0011 03H ;3號發(fā)光二極管亮3采用軟件延時10.3:工作方式0例題DATA SEGMENT COTR EQU 343H ;8255A控制口地址PB_A

10、EQU 340H ;8255A的A口地址LED DB 06H,05H,03H ;LED顯示值DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA . MOV DX,COTR MOV AL,82H ;方式0 OUT DX, AL ;A口為輸出,B口為輸入 MOV DX, PB_A ;A口地址10.3:工作方式0例題 LP: MOV CX,3 LEA BX, LED ; 1號燈代碼地址 DON: MOV AL, BX OUT DX, AL ;1,2,3循環(huán)點(diǎn)亮 CALL DELAY ;調(diào)延時程序 INC BX DEC CX JNZ DON JMP LPDEALY

11、PROC NEAR ;軟件延時 .DEALY ENDPCODE ENDS END10.3:工作方式0例題 PA0 PA1 PA28255AA0A1 PB0CS+5V200+5V2K譯碼器D7 D0地址線8088CPUA0A1思考題:用8255A 控制三個發(fā)光二極管依秩序循環(huán)顯示。假設(shè)開關(guān)閉合時,點(diǎn)亮發(fā)光二極管,開關(guān)斷開時熄滅二極管。10.3:工作方式0例題L1L2L3提問3:8255A的方式0一般使用在什么場合?是根本輸入輸出,查詢方式、包括無條件傳送在方式0時,如要使用應(yīng)答信號進(jìn)行聯(lián) 絡(luò),應(yīng)該怎么辦? 任意指定C口中的某根線完成聯(lián)絡(luò)。10.3:工作方式0提問例10-4、8255A作為連接打印

12、的查詢式接口,工作于方式0,如下圖。設(shè)8255A的端口地址為: A 端口:60H B 端口:61H C 端口:62H 控制口:63H 工作過程:當(dāng)主機(jī)要往打印機(jī)輸出字符時,先查詢打印機(jī)忙信號,如果打印機(jī)正在處理一個字符或在打印一行字符,那么忙信號為1,否那么為0。 PC2作為打印機(jī)忙信號,PC6作為數(shù)據(jù)選通信號,將數(shù)據(jù)線上的數(shù)據(jù)送入打印機(jī)緩沖器。10.3:工作方式0例題打印機(jī)打印機(jī)驅(qū)動流程圖:開始8255A初始化 BUSY=0?送數(shù)送STB內(nèi)存+1字節(jié)-1送完?結(jié)束 MOV AL ,00001101B ;PC6置1 OUT 63H ,AL MOV S I , 200H ;打印字符內(nèi)存地址 MO

13、V CX, 0FFH ;打印字符個數(shù)LPST: MOV AL,81H ;8255工作方式字 OUT 63H,AL ; A口方式0,輸出,C47輸出,C03輸入CHA: IN AL, 62H ;讀C口 AND AL, 04H ;查PC2=0? JNZ CHA ;忙,繼續(xù)查詢 MOV AL,SI ;從內(nèi)存取數(shù) OUT 60H,AL ;送數(shù)到A口10.3:工作方式0例題打印機(jī) MOV AL,00001100B ;將PC6置0STB為低 OUT 63H,AL NOP NOP ; 延時 INC AL ;AL0000 1101 B OUT 63H,AL ;再使STBPC6為1 INC SI ;內(nèi)存地址+1

14、 DEC CX ;字符數(shù) - 1 JNZ LPST HLT 10.3:工作方式0例題打印機(jī)10.4 方式1選通的輸入輸出方式數(shù)據(jù)輸入輸出要在選通信號控制下工作。端口A和端口B可以分別作為兩個數(shù)據(jù)口工作于方式1,任何一個端口可以為輸入口或輸出口,但一次初始化只能單向傳送。每個端口(A/B)包含8位數(shù)據(jù)線和3位控制線(固定的)。假設(shè)兩個端口都工作于方式1,端口C剩下的兩位可由用戶指定其I/O,也具有置位/復(fù)位功能。10.4:工作方式1A口方式1輸入有關(guān)信號的規(guī)定RDPA7PA0INTEAPC4PC5PC3PC6/PC7I OINTRAIBFASTBA IBFA INTEA INTRA PC7 PC

15、6 PC5 PC4 PC3 PC2 PC1 PC0 10.4:方式1 A口輸入有關(guān)信號的規(guī)定RDPA7PA0 INTEAPC4PC5PC3PC6.PC7I OINTRAIBFASTBA RDINTEBPC2PC1PC0PB7PB0STBBIBFBINTRB10.4:方式1輸入有關(guān)信號的規(guī)定111 D7 D6 D5 D4 D3 D2 D1 D0B口輸入方式1A組方式1B組方式110111/0 D7 D6 D5 D4 D3 D2 D1 D0PC6/PC71=輸入0=輸出A口方式1輸入例106:8255A端口A工作在方式1,A口輸入;允許A口中斷,編寫初始化程序。10.4:方式1例題MOV DX,P

16、CTR ;控制口地址送DXMOV AL,10110000B ;A口方式1輸入 OUT DX,ALMOV AL,00001001B ;置PC4=1,允許中斷OUT DX,AL10101/0 D7 D6 D5 D4 D3 D2 D1 D0方式1PC4.PC51=輸入0=輸出端口A輸出110 D7 D6 D5 D4 D3 D2 D1 D0端口B輸出方式1WRINTE BPC2PC1PC0PB7PB0ACKBOBFBINTRBWRPA7PA0INTE APC6PC7PC3PC4.PC5I OINTRAOBFAACKA10.4:方式1輸出有關(guān)信號的規(guī)定方式1輸出有關(guān)信號的規(guī)定提問5:8255工作在方式1

17、,輸入和輸出時中斷 效勞程序各完成什么功能?8255工作在方式1,輸入和輸出的執(zhí)行 過程分別是怎樣的? 10.4:方式1提問方式1的使用場合 在采用中斷方式進(jìn)行輸入/輸出的場合,如果外部設(shè)備能為8255A 提供選通信號或數(shù)據(jù)接收應(yīng)答信號,那么,通常使用8255A的工作方式1。10.4:方式1使用穩(wěn)固題1: 8255A的三個端口在使用時,有什么差異?提示:通常A端口與B端口可作為獨(dú)立的輸入輸出端口,C 端口那么配合A、B端口工作,提供控制信號、狀態(tài)信息。穩(wěn)固題2:編一初始化程序,使8255A的PC5 端輸出一個負(fù)跳變。如果要求 PC5 端輸出一個負(fù)脈沖那么初始化程序又是怎樣的? MOV AL,0

18、000 1011 H ;PC5置“1控制字AL MOV DX,343H ;控制口地址DX OUT DX,AL ;置“1控制字控制存放器 MOV AL,00001010B ;PC5置“0控制字AL OUT DX , AL ;置“0控制字控制存放器 如果要求PC5輸出一個負(fù)脈沖那么再加兩條指令: MOV A L ,00001011 OUT DX,AL10.5 方式2雙向傳輸方式 方式2只適用于端口A,雙向并行通信 端口A工作于方式2時,端口C用5個數(shù)位自動配合端口A提供控制。注意:端口A可工作在3種方式中的任意一種;端口B只能工作在方式0或方式1; 端口C被分為高4位和低4位,可以分別工作在輸入方式和輸出方式,并不要求同為輸入方式或同為輸出方式.10.5:工作方式2 D7 D6 D5 D4 D3 D2 D1 D011端口A方式B組方式0=方式01=方式1PC2PC01=輸入0=輸出端口B1=輸入0=輸出圖 10-15 方式2工作的控制信號PC2PC0PC4PC5PC6PC7PC3 INTE1 INTE2I O IBFA STBA ACKA OBFA INTRAWRRDPA7 PA010.5:工作方式2本章小結(jié)82

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論