第7章輸入輸出方法及常用的接口電路(2)_第1頁
第7章輸入輸出方法及常用的接口電路(2)_第2頁
第7章輸入輸出方法及常用的接口電路(2)_第3頁
第7章輸入輸出方法及常用的接口電路(2)_第4頁
第7章輸入輸出方法及常用的接口電路(2)_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第七章第七章 輸入輸出方法及常用的輸入輸出方法及常用的接口電路接口電路(2)(2)7.3 8255A并行接口電路及其應(yīng)用并行接口電路及其應(yīng)用數(shù)據(jù)的通信方式分為并行通信并行通信和串行通信串行通信。并行通信:各位數(shù)據(jù)是并行傳輸?shù)?,以字?jié)(或字)為單位與 I/O設(shè)備進(jìn)行數(shù)據(jù)交換。由并行接口來完成,并行接口是連接CPU與并行外設(shè)的通道。串行通信:數(shù)據(jù)一位一位地進(jìn)行傳輸。由串行接口來完成,串行接口通過系統(tǒng)總線與CPU相連。 8255A是一種通用可編程并行I/O接口電路芯片,又稱可編程外圍接口。在8086系統(tǒng)中,8255A常作為鍵盤、揚(yáng)聲器、打印機(jī)等外設(shè)的接口電路芯片。8255A外引腳圖一、一、8255A

2、芯片的外部引腳芯片的外部引腳40個(gè)引腳雙列直插式緩沖器數(shù)據(jù)總線D7D0oooRDWRA0A1RESETCS讀/寫控制邏輯A口上C口下C口B口PA7PA0PC7PC4PC3PC0PB7PB0內(nèi)部總線A組控制B組控制外設(shè)接口CPU接口內(nèi)部邏輯二、二、8255A的結(jié)構(gòu)和功能的結(jié)構(gòu)和功能端口A和端口B可用作8位 數(shù)據(jù)I/O口,端口C既可作為8位I/O口,又可作為兩個(gè)4位I/O口,還常用來配合A口和B口工作,作為控制信號(hào)輸出、或作為狀態(tài)信號(hào)輸入。1、三個(gè)輸入/輸出端口 8255A內(nèi)部包含3個(gè)8位I/O端口A口、B口和C口,通過外部24個(gè)引腳與外設(shè)交換數(shù)據(jù)或進(jìn)行通信聯(lián)絡(luò)。其中C口可分為兩個(gè)4位口使用。A口

3、上C口下C口B口PA7PA0PC7PC4PC3PC0PB7PB0內(nèi)部總線2、讀/寫控制邏輯控制總線的開放與關(guān)閉;控制信息傳送的路徑和方向。CS:片選信號(hào),低電平有效。允許8255A與CPU交換信息。RD:讀信號(hào),低電平有效;允許CPU從8255A端口中讀取數(shù)據(jù)或外設(shè)的狀態(tài)信息。WR:寫信號(hào),低電平有效;允許CPU將數(shù)據(jù)、控制字寫入到8255A中。RESET:復(fù)位信號(hào),高電平有效;它清除8255A所有控制寄存器內(nèi)容,并將各端口都置成輸入方式。A1、A0:8255A片內(nèi)端口尋址線。與RD、WR、CS配合用作選擇端口及內(nèi)部控制寄存器的地址信息,并控制信息傳送的方向。A1 A0RDWRCS功能0001

4、0端口A 數(shù)據(jù)總線01010端口B 數(shù)據(jù)總線10010端口C 數(shù)據(jù)總線00100數(shù)據(jù)總線 端口A01100數(shù)據(jù)總線 端口B10100數(shù)據(jù)總線 端口C11100數(shù)據(jù)總線 控制字寄存器8255A端口選擇表3、A組和B組的控制電路 這是兩組根據(jù)CPU的編程命令控制8255A工作的電路,控制寄存器用來接收CPU送來的命令字,以決定A組、B組的工作方式,或?qū)口的每一個(gè)位執(zhí)行位操作。A組控制電路控制A口和C口的高4為;B組控制電路控制B口和C口的低4位。A組控制B組控制內(nèi)部總線4、數(shù)據(jù)總線緩沖器是雙向三態(tài)的8位緩沖器, 用作8255A和系統(tǒng)數(shù)據(jù)總線的接口。 1)傳送系統(tǒng)對8255A的控制字; 2)傳送各

5、端口的輸入、輸出數(shù)據(jù)。緩沖器數(shù)據(jù)總線DBoooRDWRA0A1RESETCS讀/寫控制邏輯內(nèi)部總線至數(shù)據(jù)端口至控制寄存器5、方式選擇8255ABCBDBRD WRD7D0A0 A1 CSPBPAPC88I/OI/O44PB7 PB0PA7 PA0PC3 PC0 PC7 PC4I/OI/O88 I/OI/OPB7 PB0PA7 PA0PBPAPCB口控制A口控制88 I/OI/O不用PA7 PA0PBPAPCI/O控制方式0:基本輸入輸出方式1:選通輸入輸出方式2:雙向傳送方式0:適用于無條件傳送和查詢方式的接口電路。方式1:適用于查詢和中斷方式的接口電路。方式2:適用于查詢和中斷方式的接口電路

6、。端口A:可工作于方式0、方式1、方式2。端口B:可工作于方式0、方式1。端口C:只能工作于方式0。三、三、8255A的控制字的控制字 8255A的三種工作方式是由CPU輸出到8255A的控制字來控制的。 8255A有兩個(gè)控制字:一個(gè)是工作方式控制字,另一個(gè)是對端口C的“置位/復(fù)位”控制字。1、工作方式控制字D7 D6 D5 D4 D3 D2 D1 D0下C口 I/O1=輸入0=輸出B口I/O1=輸入0=輸出B口方式0=方式0 1=方式1上C口I/O1=輸入0=輸出特征位 D7=1A口方式: 00=方式0 01=方式1 1x=方式2A口I/O1=輸入0=輸出例:在一個(gè)8086系統(tǒng)中,有一片82

7、55芯片,其各個(gè)端口的地址分別為0F8H0FBH,現(xiàn)要求各個(gè)端口的工作方式為:端口A 方式0 輸入端口B 方式1 輸出端口C(上半部) PC7 PC4 輸出端口C(下半部) PC3 PC0 輸入要求:進(jìn)行初始化編程10011001分析:根據(jù)8255工作模式可確定方式控制字95H初始化編程:MOV AL,95HOUT 0FBH,AL2、C口按位置位/復(fù)位控制字端口C常用作控制或應(yīng)答信號(hào),通過對8255A的控制口寫入按位置位/復(fù)位控制字,可使C口的任一個(gè)引腳的輸出單獨(dú)置1或置0。D7 D6 D5 D4 D3 D2D1 D01 置位 0 復(fù)位無關(guān)位特征位 D7 = 0000 選中PC0 001 選中

8、PC1 111 選中PC7位選擇C口按位置位/復(fù)位控制字格式:例:要使端口C的bit3置位的控制字為:00000111B; MOV AL,00000111B OUT 0FBH,AL 而使端口C的bit3復(fù)位的控制字為:00000110B ; MOV AL,00000110B OUT 0FBH,AL四、四、8255A的三種工作方式及應(yīng)用舉例的三種工作方式及應(yīng)用舉例1、方式 0基本輸入輸出方式A口和B口可作為8位端口,C口的高4位和低4位可作為兩個(gè)4位的端口,且每個(gè)端口均可作為輸入口或輸出口用。數(shù)據(jù)輸出有鎖存,輸入無鎖存。方式0一般用于無條件傳送的場合,不需要應(yīng)答式聯(lián)絡(luò)信號(hào),外設(shè)總是處于準(zhǔn)備好的狀

9、態(tài)。也可以用作查詢式傳送,查詢式傳送時(shí),需要有應(yīng)答信號(hào)??梢詫端口、B端口作為數(shù)據(jù)口使用。C端口則可用來輸出一些控制信息,或輸入外設(shè)的狀態(tài)。利用C端口配合A端口和B端口完成查詢式的I/O操作。例 8255A作為開關(guān)K0K3及七段LED顯示器接口。要求開關(guān)設(shè)置的二進(jìn)制信息,由PC0PC3輸入,經(jīng)程序轉(zhuǎn)換為對應(yīng)的七段LED顯示器的字形代碼后,由PA口輸出顯示。8255APA7PA0驅(qū)動(dòng)器+5V5VK0K1K2K3PC3PC2PC1PC0D7D0RD WR A1 A2 A B C G2A G2B G1 Y0 Y1 Y2 O O OD7D0 RD WR A0 A1 CSA0 A3A4A78086系統(tǒng)

10、總線LS138接口電路M/IO&A5A6各端口地址為:E8HEEH8255A各端口地址確定:由圖可知: A7 A6 A5 A4 A3 A2 A1 A01 1 1 0 1 08255A方式選擇控制字:CSA B C G2A G2B G1 Y0 Y1 Y2 A0 A3A4 A7LS138 M/IO&A5A6按題意設(shè)置端口A方式0輸出,下C口輸入.1000181HLED顯示器的字形代碼表存放在TABLE單元開始的內(nèi)存中.數(shù)據(jù)段中定義:TABLE DB 0C0H, 0F9H, 0A4H, 0B0H, 99H, 92H, 82H, DB 0F8H 80H, 98H, 88H, 83H,

11、0C6H, 0A1H, DB 86H, 8EH代碼段實(shí)現(xiàn)操作的具體程序如下:MOV DX, 0E8H ;指向端口AOUT DX, AL ;輸出字形碼HLTMOV DX,0EEH ;設(shè)置8255A工作方式 MOV AL,81H OUT DX,ALMOV DX,0ECH ;指向端口C,讀開關(guān)狀態(tài) IN AL,DX AND AL,0FHLEA BX,TABLE ;顯示代碼表首地址送BXXLAT ;查表,取出相應(yīng)的字形碼送AL 當(dāng)A端口和B端口以方式1進(jìn)行輸入輸出時(shí),必須利用C端口提供的固定的選通和應(yīng)答信號(hào),該方式也稱選通輸入/輸出方式。 方式1的基本定義是: 分成A組和B組,每組包含一個(gè)8位的數(shù)據(jù)端

12、口和1個(gè)4位的控制/數(shù)據(jù)端口。 可作輸入,也可作輸出,且輸入和輸出都可以被鎖存。 2、方式1-選通輸入/輸出方式規(guī)定:PC3PC5分配給A端口作聯(lián)絡(luò)線,PC0PC2分配給B端口作聯(lián)絡(luò)線, C端口剩下的2位PC7、PC6可作為簡單的輸入/輸出線使用。 1) 選通的輸入方式方式1選通輸入時(shí)的鏈接方式(a) 對A端口;(b) 對B端口1011I/O1011I/O11111D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D0A組工作于方式1輸入的控制字A組和B組工作于方式1輸入的控制字B組工作于方式1輸入的控制字方式1B端口為輸入PC7、PC61輸入0輸出P

13、C7、PC61輸入0輸出A端口為輸入方式1STBAIBFAINTRAI/OPC4PC5PC3INTEA&PC7PC6PA7PA02RD8PC2PC1PC0INTEB&PB7PB0RD8INTRBIBFBSTBB(a)(b)方式1選通輸入方式下各控制信號(hào)的意義: STB(Strobe):選通輸入信號(hào),低電平有效。A組方式控制字中對應(yīng)PC4;B組方式控制字中對應(yīng)PC2。IBF(Input Buffer Full):輸入緩沖器滿信號(hào),高電平有效。 是8255A送給外設(shè)的聯(lián)絡(luò)信號(hào),A組方式控制字中對應(yīng)PC5;B組方式控制字中對應(yīng)PC1,該信號(hào)可供CPU查詢。INTR(Interrupt

14、 Request):中斷請求信號(hào),高電平有效。A組方式控制字中對應(yīng)PC3;B組方式控制字中對應(yīng)PC0。當(dāng)STB信號(hào)撤消變?yōu)楦唠娖胶?,并且IBF信號(hào)也為高電平,INTR信號(hào)變?yōu)橛行У母唠娖健?當(dāng)CPU發(fā)出的RD信號(hào)有效后,400 ns的時(shí)間內(nèi)INTR信號(hào)將撤消,變?yōu)榈碗娖?。INTE(Interrupt Enable):中斷允許信號(hào),高電平有效。否則屏蔽中斷請求。 INTE的狀態(tài)是用軟件通過由C端口置1/置0控制字來控制的,在A組中,使PC4置“1”后INTEA變高;在B組中,使PC2置“1”后INTEB變高,A端口和B端口才允許中斷。如果PC4和PC2都置“0”,與之對應(yīng)的INTE信號(hào)為低,則禁

15、止中斷。采用查詢式輸入,CPU先查詢IBF是否為高。 若IBF為高,8255A的輸入緩沖器就為滿,則CPU可從8255A讀入數(shù)據(jù)。采用中斷方式傳送數(shù)據(jù),先用C端口置1/置0的控制字使相應(yīng)的端口允許中斷,也就是要使PC4或PC2置1。 這種方式的工作過程與選通輸入的情況相類似。對應(yīng)的C端口也是固定分配。規(guī)定:PC3、PC6、PC7分配給A端口;PC2、PC1、PC0分配給B端口,剩下的2位PC4、PC5可作為簡單的輸入/輸出線使用。 當(dāng)控制字的D3位為“1”時(shí),PC4、PC5作輸入;當(dāng)控制字的D3位為“0”時(shí),PC4、PC5作輸出。 2) 選通的輸出方式方式l輸出時(shí)C端口對A、B端口的控制圖(a

16、) 對A端口;(b) 對B端口1010I/O1010I/O10110D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D0A組工作于方式1輸出的控制字A組和B組工作于方式1輸出的控制字B組工作于方式1輸出的控制字方式1B端口為輸出PC5、PC41輸入0輸出PC5、PC41輸入0輸出A端口為輸出方式1ACKAOBFAINTRAI/OPC6PC7PC3INTEA&PC5PC4PA7PA02WR8PC2PC1PC0INTEB&PB7PB0WR8INTRBOBFBACKB(a)(b) 方式1選通輸出方式各控制信號(hào)的意義: OBF(Output

17、Buffer Fu11):輸出緩沖器滿信號(hào),低電平有效。A組方式控制字中對應(yīng)PC7;B組方式控制字中對應(yīng)PC1,由8255A向外設(shè)發(fā)出低電平的OBF信號(hào)。ACK(Acknowledge):數(shù)據(jù)接收應(yīng)答信號(hào),低電平有效。A組方式控制字中對應(yīng)PC6;B組方式控制字中對應(yīng)PC2,是外設(shè)的響應(yīng)信號(hào)。 ACK信號(hào)有效后使OBF變成無效的高電平,同時(shí)使INTR信號(hào)變?yōu)橛行У母唠娖?。INTR:中斷請求信號(hào),高電平有效。A組方式控制字中對應(yīng)PC3;B組方式控制字中對應(yīng)PC0。由8255A向CPU發(fā)出中斷請求,要求CPU輸出新的數(shù)據(jù)。INTE:中斷允許信號(hào),高電平有效。當(dāng)該信號(hào)為“1”時(shí),允許中斷。INTE是用

18、軟件通過對C端口置1/置0的控制字來設(shè)置的。當(dāng)PC6置1時(shí),A端口允許中斷;PC2置1,B端口允許中斷。反之,不允許中斷。PC總線打印機(jī)IOWRDA0A1譯碼器DBWRIORA0A1CSDBPAPC7PC6PC3STBACKDBAB8255去8259IR2例:用8255實(shí)現(xiàn)與打印機(jī)的接口,8255的PA口作為數(shù)據(jù)輸出端口,工作在方式1;PC7作為OBF信號(hào)輸出端;PC6作為ACK信號(hào)輸入端; PC3作為INTR信號(hào)輸出端,接8259的IR2,因此中斷類型號(hào)為0AH。8255的端口地址為0FCH-0FFH。輸出時(shí),先輸出一個(gè)空字符,以引起中斷,在中斷服務(wù)程序中輸出打印字符。打印機(jī)接收到打印字符后

19、,發(fā)出ACK響應(yīng)信號(hào),清除OBF標(biāo)志,使8255產(chǎn)生新的中斷請求,再輸出下一個(gè)打印字符。主程序完成中斷的準(zhǔn)備工作和設(shè)置8255A的工作方式控制字等中斷服務(wù)程序完成字符的輸出。PUSH DSLEA DX,ROUTMOV AX,SEG ROUTMOV DS,AXMOV AL,0AHMOV AH,25HINT 21HPOP DS ; 設(shè)置中斷向量MOV AL,0A0H ;方式字OUT 0FFH,ALMOV AL,0DH ;PC6置1OUT 0FFH,AL;中斷允許MOV AL,20H ;輸出空格字符OUT 0FCH,ALLEA BX,F(xiàn)LAGSTIROUT: PUSH AX MOV AL,BX ;取

20、字符 OUT 0FCH,AL ;輸出 INC BX POP AX IRET 雙向方式8255A可以向外設(shè)發(fā)送數(shù)據(jù),同時(shí)CPU通過這8位數(shù)據(jù)線又接收外設(shè)的數(shù)據(jù)。傳輸過程由C端口對A端口進(jìn)行控制,所以稱為帶選通的雙向傳輸方式。方式2的基本定義: 只能適用于A端口,一個(gè)8位的雙向端口(A端口)和1個(gè)5位的控制端口(C端口)。 A端口的輸入和輸出都可以被鎖存。在這種方式下,C端口中高5位PC7PC3作為控制信號(hào)和狀態(tài)信息使用,剩下的3位PC2PC0可作為簡單的輸入/輸出線使用。3、方式2-帶選通的雙向傳輸方式方式2時(shí)C端口對A端口的控制信號(hào)圖PC3&PC2PC0PA7PA0PC7PC6PC4PC5INTE2INTE11&WRRDINTRA8OBFAACKASTBAIBFAI/O11D7D6D5D4D3D2D1D0A組工作于方式2輸入的控制字PC2PC01輸入0輸出B端口方式A端口方式1輸入0輸出B組方式0方式01方式13方式0:基本輸入

溫馨提示

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

評論

0/150

提交評論