微機原理與接口技術第9章_第1頁
微機原理與接口技術第9章_第2頁
微機原理與接口技術第9章_第3頁
微機原理與接口技術第9章_第4頁
微機原理與接口技術第9章_第5頁
已閱讀5頁,還剩76頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、第第9 9章章 可編程外圍接口芯片可編程外圍接口芯片8255A8255A及其應用及其應用9.1 9.1 并行通信概述并行通信概述 9.2 8255A9.2 8255A的工作原理的工作原理 9.3 8255A9.3 8255A的應用舉例的應用舉例 并行通信并行通信: : 各位數據都是并行傳輸的,它以字節(或字)各位數據都是并行傳輸的,它以字節(或字)為單位與為單位與I/OI/O設備或被控對象進行數據交換。設備或被控對象進行數據交換。 并行通信由并行接口來完成并行通信由并行接口來完成, ,并行接口是連并行接口是連接接CPUCPU與并行外設的通道。與并行外設的通道。特點:特點: 傳輸速度快;硬件開銷

2、大;只適合近距離傳傳輸速度快;硬件開銷大;只適合近距離傳輸。一個并行接口中包括狀態信息、控制信息和輸。一個并行接口中包括狀態信息、控制信息和數據信息。數據信息。9.1 并行通信并行通信概述概述 交換信息包括交換信息包括: : 狀態信息狀態信息 表示外設當前所處的工作狀態。表示外設當前所處的工作狀態。 例如:例如:準備好信號表示輸入設備已經準備好信息;準備好信號表示輸入設備已經準備好信息; 忙信號忙信號(BUSY)(BUSY)表示輸出設備正在輸出信息,等于指表示輸出設備正在輸出信息,等于指示示CPUCPU要處于等待狀態。要處于等待狀態。 控制信息控制信息 控制信息是由控制信息是由CPUCPU發出

3、的,用于控制外設接口的工作發出的,用于控制外設接口的工作方式以及外設的啟動和停機信息等。方式以及外設的啟動和停機信息等。 數據信息數據信息 CPUCPU與并行外設數據交換的內容。與并行外設數據交換的內容。 狀態信息、控制信息和數據信息狀態信息、控制信息和數據信息,通常,通常都是通過都是通過數據總線數據總線傳送,這些信息在外設接口中分別存取在不同傳送,這些信息在外設接口中分別存取在不同的端口中。的端口中。 對于一個外設接口,常常對于一個外設接口,常常需要幾個端口需要幾個端口才能滿足才能滿足和協調外部設備的工作與要求。和協調外部設備的工作與要求。并行接口與并行接口與CPUCPU、外設的連接、外設的

4、連接控制寄存器控制寄存器狀態寄存器狀態寄存器輸入緩沖寄存器輸入緩沖寄存器輸出緩沖寄存器輸出緩沖寄存器CPU總線系統總線系統輸輸入入設設備備輸輸出出設設備備數據總線數據總線輸出數據準備好輸出數據準備好輸入數據準備好輸入數據準備好中斷請求中斷請求地地 址址譯碼器譯碼器復位復位地址總線地址總線AENCSA0A1IORIOW輸入數據輸入數據輸入數據準備好輸入數據準備好輸入應答輸入應答輸出數據輸出數據輸出數據準備好輸出數據準備好輸出應答輸出應答 并行接口電路,在并行接口電路,在早期的早期的微機中與串行口、軟盤接微機中與串行口、軟盤接口、硬盤接口等都放在一塊口、硬盤接口等都放在一塊多功能接口卡多功能接口卡

5、上,插在微上,插在微機的擴展槽上使用。機的擴展槽上使用?,F在現在這部分電路已在微機的主板這部分電路已在微機的主板上由與上由與CPUCPU配套的配套的北橋芯片組來實現其功能北橋芯片組來實現其功能。 在在電路設計時采用電路設計時采用專用的專用的接口芯片接口芯片, ,可編程的接口可編程的接口芯片芯片8255A8255A是完成并行通信的集成電路芯片。是完成并行通信的集成電路芯片。9.2 8255A的工作原理的工作原理82558255內部結構圖內部結構圖數數 據據總總 線線緩沖器緩沖器讀寫讀寫控制控制邏輯邏輯B組組控制控制端口端口B(8)端口端口C下半部下半部(4)端口端口C上半部上半部(4)端口端口A

6、(8)A組組控制控制DBRDWRA0A1RESETCSCPU接口接口內部邏輯內部邏輯外部接口外部接口PA7PA0PC7PC4PC3PC0PB7PB08位位內部內部數據總線數據總線8255A12345678910111213141516171819204039383736353433323130292827262524232221PA3PA2PA1PA0RDCSGNDA0A1PC7PC6PC5PC4PC0PC1PC2PC3PB0PB1PB2PA4PA5PA6PA7WRRESETD0D1D2D3D4D5D6D7VCCPB7PB6PB5PB4PB38255A8255A外部引腳圖外部引腳圖 可編程并行

7、接口芯片應具有的功能:可編程并行接口芯片應具有的功能:(1 1)具有兩個以上輸入)具有兩個以上輸入/ /輸出數據端口(鎖存輸出數據端口(鎖存/ /緩沖);緩沖);(2 2)每個數據端口有)每個數據端口有與與CPUCPU用應答方式用應答方式交換信息所必須的交換信息所必須的控制和狀態信息;也有控制和狀態信息;也有與外設交換信息與外設交換信息所必須的控制和狀所必須的控制和狀態信息;態信息;(3 3)通常每個數據端口還具有能用)通常每個數據端口還具有能用中斷方式中斷方式與與CPUCPU交換信交換信息所必須的電路;息所必須的電路;(4 4)具有進行片選和讀寫控制的電路;)具有進行片選和讀寫控制的電路;(

8、5 5)可編程(由程序來選擇數據端口,數據傳送方向,)可編程(由程序來選擇數據端口,數據傳送方向,交換信息的方式等)。交換信息的方式等)。緩沖器數據總線D7D0oooRDWRA0A1RESETCS讀/寫控制邏輯A口上C口下C口B口PA7PA0PC7PC4PC3PC0PB7PB0內部總線A組控制B組控制外設接口外設接口CPU接口接口內部邏輯內部邏輯一、8255A8255A的結構和功能的結構和功能端口端口A A和端口和端口B B可用作可用作8 8位位 數據數據I/OI/O口,口,端口端口C C既可既可作為作為8 8位位I/OI/O口口,又可,又可作為兩個作為兩個4 4位位I/OI/O口,還常用來配

9、合口,還常用來配合A A口和口和B B口工作,作為控制信號輸出、口工作,作為控制信號輸出、或作為狀態信號輸入?;蜃鳛闋顟B信號輸入。( (一一) ) 數據端口數據端口 8255A8255A內部內部包含包含3 3個個8 8位位I/OI/O端口端口A A口、口、B B口和口和C C口口。A口上C口下C口B口PA7PA0PC7PC4PC3PC0PB7PB0內部總線內部總線( (二二) A) A組、組、B B組組控制邏輯控制邏輯這是兩組根據這是兩組根據CPUCPU的編的編程命令控制程命令控制8255A8255A工作的工作的電路,控制寄存器用來接電路,控制寄存器用來接收收CPUCPU送來的命令字,以送來的

10、命令字,以決定決定A A組、組、B B組的工作方式組的工作方式,或對或對C C口的每一個位執行口的每一個位執行位操作。位操作。A組控制B組控制內部總線內部總線( (三三) ) 數據總線緩沖器數據總線緩沖器是雙向三態的是雙向三態的8 8位緩沖位緩沖器器, , 用作用作8255A8255A和系統數和系統數據總線的接口。據總線的接口。1)1)傳送傳送系統對系統對8255A8255A的控制字;的控制字;2)2)傳送各端口的輸入、傳送各端口的輸入、輸出數據。輸出數據。緩沖器數據總線DBoooRDWRA0A1RESETCS讀/寫控制邏輯內部總線內部總線至數據端口至控制寄存器( (四四) ) 讀讀/ /寫控

11、制邏輯寫控制邏輯控制信息傳送的路徑和控制信息傳送的路徑和方向。方向。RESET:復位,高電:復位,高電平有效。清零控制寄存器,平有效。清零控制寄存器,所有端口都置成輸入方式。所有端口都置成輸入方式。( (五五) ) 端口尋址端口尋址A1 A0RDWRCS功能00010端口 A 數據總線01010端口 B 數據總線10010端口 C 數據總線00100數據總線 端口 A01100數據總線 端口 B10100數據總線 端口 C11100數據總線 控制字寄存器8255A8255A端口選擇表端口選擇表( (六六) ) 方式選擇方式選擇8255ABCBDBRD WRD7D0A0 A1 CSPBPAPC8

12、8I/OI/O44PB7 PB0PA7 PA0PC3 PC0 PC7 PC4I/OI/O88 I/OI/OPB7 PB0PA7 PA0PBPAPC控制或控制或I/O控制或控制或I/O88 I/OI/OPB7 PB0PA7 PA0PBPAPCI/O控制控制方式方式0 0:基本輸入輸出:基本輸入輸出方式方式1 1:選通輸入輸出:選通輸入輸出方式方式2 2:雙向傳送:雙向傳送二、二、8255A8255A的控制字的控制字8255A8255A的控制字有兩類。的控制字有兩類。 1 1、方式選擇控制字、方式選擇控制字8255A8255A有有3 3種基本的工作方式,對種基本的工作方式,對8255A8255A初

13、始化編程時,初始化編程時,應寫入方式選擇控制字,以規定各端口的工作方式。應寫入方式選擇控制字,以規定各端口的工作方式。方式選擇控制字格式方式選擇控制字格式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=輸出輸出例:例:在一個在一個8086/8088系統中,有一片系統中,有一片8255芯片,其各芯片,其各個端口的地址分別為個

14、端口的地址分別為0F8H0FBH,試,試進行初始化編進行初始化編程,要求各個端口的工作方式為:程,要求各個端口的工作方式為:端口端口A A 方式方式0 0 輸入輸入端口端口B B 方式方式1 1 輸出輸出端口端口C C(上)上)PC7 PC4 輸出輸出端口端口C C(下)下) 輸入輸入確定方式控制字確定方式控制字1001100195H初始化編程:初始化編程:MOV AL,95HOUT 0FBH,AL2 2、C C口按位置位口按位置位/ /復位控制字復位控制字端口端口C C常用作控制或應答信號,通過對常用作控制或應答信號,通過對8255A8255A的控制口的控制口寫入按位置位寫入按位置位/ /復

15、位控制字,可使復位控制字,可使C C口的任一個引腳的輸出口的任一個引腳的輸出單獨置單獨置1 1或置或置0 0。C口按位置位口按位置位/復位控制字格式復位控制字格式D7 D6 D5 D4 D3 D2D1 D01 置位置位 0 復位復位無關位無關位特征位特征位 D7 = 0000 選中選中PC0 001 選中選中PC1 111 選中選中PC7位選擇位選擇例:要使端口例:要使端口C的的bit3置位的控制字為:置位的控制字為:00000111B; MOV AL,00000111B OUT 0FBH,AL 而使端口而使端口C的的bit3復位的控制字為:復位的控制字為:00000110B; MOV AL,

16、00000110B OUT 0FBH,AL三、三、8255A8255A的工作方式的工作方式1 1、方式、方式 0 0基本輸入輸出方式基本輸入輸出方式適用于不需要應答信號的簡單適用于不需要應答信號的簡單I/OI/O場合。場合。A A口和口和B B口可作為口可作為8 8位端口,位端口,C C口的高口的高4 4位和低位和低4 4位可作為兩位可作為兩個個4 4位的端口,且每個端口均可作為輸入口或輸出口用。位的端口,且每個端口均可作為輸入口或輸出口用。數據輸出有數據輸出有鎖存鎖存, , 輸入無輸入無鎖存。鎖存。CS,A0,A1RDD0D7數據有效數據有效輸入輸入數據有效數據有效方式方式0 0的輸入時序的

17、輸入時序例如例如: :要求要求8255A8255A的的A A口和口和B B口均工作于方式口均工作于方式0, A0, A口和下口和下C C口作輸入口口作輸入口, B, B口和上口和上C C口作輸出口口作輸出口, ,設設8255A8255A各端口地址為各端口地址為4040H H43H, 43H, 可用下列指令來設置這種工作方式:可用下列指令來設置這種工作方式:MOV AL,91H ;方式控制字;方式控制字10010001BOUT 43H,AL ;方式控制字送控制寄存器;方式控制字送控制寄存器 CS,A0,A1WR輸出輸出數據有效數據有效D0D7數據有效數據有效方式方式0 0的輸出時序的輸出時序 方

18、式方式0 0一般用于無條件傳送的場合一般用于無條件傳送的場合,不需要應答式,不需要應答式聯絡信號,外設總是處于準備好的狀態。聯絡信號,外設總是處于準備好的狀態。 也可以用作查詢式傳送也可以用作查詢式傳送,查詢式傳送時,需要有,查詢式傳送時,需要有應答信號。可以將應答信號??梢詫 A端口、端口、B B端口作為數據口端口作為數據口使用。使用。C C端端口則可用來輸出一些控制信息,或輸入外設的狀態??趧t可用來輸出一些控制信息,或輸入外設的狀態。利用利用C C端口配合端口配合A A端口和端口和B B端口完成查詢式的端口完成查詢式的I/OI/O操作。操作。 當當A A端口和端口和B B端口以方式端口以

19、方式1 1進行輸入輸出時,必須利用進行輸入輸出時,必須利用C C端口提供的固定的選通和應答信號端口提供的固定的選通和應答信號, ,該方式也稱該方式也稱選通輸選通輸入入/ /輸出方式輸出方式。 方式方式1 1的基本定義是:的基本定義是: 分成分成A A組和組和B B組組,每組包含一個,每組包含一個8 8位的數據端口位的數據端口和和1 1個個4 4位的控制位的控制/ /數據端口數據端口??勺???勺鬏斎胼斎?,也可作,也可作輸出輸出,且,且輸入輸入和輸出都可以被鎖存。和輸出都可以被鎖存。 2. 2. 方式方式1-1-選通輸入選通輸入/ /輸出方式輸出方式規定:規定:PCPC3 3PCPC5 5分配給分

20、配給A A端口作聯絡線端口作聯絡線,PCPC0 0PCPC2 2分配給分配給B B端口作聯絡線,端口作聯絡線,C C端口剩下的端口剩下的2 2位位PCPC7 7、PCPC6 6可作為簡單的輸入可作為簡單的輸入/ /輸出輸出線使用。線使用。 1) 1) 選通的輸入方式選通的輸入方式方式方式1 1選通輸入下對應的控制信號圖選通輸入下對應的控制信號圖(a) (a) 對對A A端口;端口;(b) (b) 對對B B端口端口1011I/O1011I/O 11111D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D0A組工作于方式組工作于方式1輸入的控制字輸入的

21、控制字A組和組和B組工作于方式組工作于方式1輸入的控制字輸入的控制字B組工作于方式組工作于方式1輸入的控制字輸入的控制字方式方式1B端口為輸入端口為輸入PC7、PC61輸入輸入0輸出輸出PC7、PC61輸入輸入0輸出輸出A端口為輸入端口為輸入方式方式1STBAIBFAINTRAI/OPC4PC5PC3INTEA&PC7PC6PA7PA02RD8(a)PC2PC1PC0INTEB&PB7PB0RD8INTRBIBFBSTBB(b)方式方式1 1選通輸入方式下各控制信號的意義:選通輸入方式下各控制信號的意義: STB(Strobe)STB(Strobe):選通輸入信號,低電平有效。

22、選通輸入信號,低電平有效。A A組方式控制字中組方式控制字中對應對應PC4PC4;B B組方式控制字中對應組方式控制字中對應PC2PC2。 IBF(Input Buffer Full)IBF(Input Buffer Full):輸入緩沖器滿信號,高電平有效。輸入緩沖器滿信號,高電平有效。 是是8255A8255A送給外設的聯絡信號,送給外設的聯絡信號,A A組方式控制字中對應組方式控制字中對應PC5PC5;B B組組方式控制字中對應方式控制字中對應PC1PC1,該信號可供,該信號可供CPUCPU查詢。查詢。 該信號在選通輸入信號該信號在選通輸入信號STBSTB變低后,變低后,300 ns30

23、0 ns時間內即變為有時間內即變為有效的高電平。在效的高電平。在RDRD信號撤消后的信號撤消后的300 ns300 ns時間內時間內IBFIBF信號才撤消,信號才撤消,變為無效的低電平,這樣保證了數據傳輸的可靠性。變為無效的低電平,這樣保證了數據傳輸的可靠性。INTR(Interrupt Request)INTR(Interrupt Request):中斷請求信號,高電平有效。中斷請求信號,高電平有效。A A組組方式控制字中對應方式控制字中對應PC3PC3;B B組方式控制字中對應組方式控制字中對應PC0PC0。當。當STBSTB信號信號撤消變為高電平后,并且撤消變為高電平后,并且IBFIBF

24、信號也為高電平,信號也為高電平,INTRINTR信號變為有信號變為有效的高電平。效的高電平。 當當CPUCPU發出的發出的RDRD信號有效后,信號有效后,400 ns400 ns的時間內的時間內INTRINTR信號將撤信號將撤消,變為低電平。消,變為低電平。INTE(Interrupt Enable)INTE(Interrupt Enable):中斷允許信號,高電平有效。中斷允許信號,高電平有效。否則否則屏蔽中斷請求。屏蔽中斷請求。 INTEINTE的狀態的狀態是用軟件通過是用軟件通過由由C C端口置端口置1/1/置置0 0控制字來控制控制字來控制的,的,在在A A組中,使組中,使PC4PC4

25、置置“1”1”后后INTEAINTEA變高變高;在;在B B組中,使組中,使PCPC2 2置置“1”1”后后INTEBINTEB變高變高,A A端口和端口和B B端口才允許中斷。如果端口才允許中斷。如果PCPC4 4和和PCPC2 2都置都置“0”0”,與之對應的,與之對應的INTEINTE信號為低,則禁止中斷。信號為低,則禁止中斷。8255A8255A方式方式l l輸入時序圖輸入時序圖STBIBFINTRRD來自外設的輸入數據數據有效數據有效1234tSTtSIBtSITtRITtPHtPStRIB 輸入緩沖器滿狀態,可供輸入緩沖器滿狀態,可供CPUCPU來查詢。在選通輸入信號結束來查詢。在

26、選通輸入信號結束后向后向CPUCPU發出中斷請求發出中斷請求信號,信號,INTRINTR變高變高( (中斷允許情況下中斷允許情況下) ),如時,如時序圖中表示的序圖中表示的箭頭箭頭。 在中斷服務程序中在中斷服務程序中CPUCPU發出讀信號發出讀信號RDRD,RDRD的下降沿的下降沿清除中斷清除中斷請求,如圖中表示的請求,如圖中表示的箭頭箭頭。當讀信號結束后,。當讀信號結束后,使使輸入緩沖器輸入緩沖器滿信號滿信號IBFIBF變低變低,如圖中表示的,如圖中表示的箭頭箭頭。IBFIBF變低表明輸入緩沖變低表明輸入緩沖器已空,器已空,通知外設可以輸入新的數據通知外設可以輸入新的數據。選通輸入方式的工作

27、過程:選通輸入方式的工作過程: 當外設數據已送到當外設數據已送到8255A8255A某個端口的數據線上時,就發出選某個端口的數據線上時,就發出選通輸入信號通輸入信號STBSTB,將數據通過,將數據通過A A端口或端口或B B端口鎖存到端口鎖存到8255A8255A的數據輸的數據輸入寄存器入寄存器。STBSTB信號變低將信號變低將使使輸入緩沖器滿信號輸入緩沖器滿信號IBFIBF變高變高,如時序,如時序圖中表示的圖中表示的箭頭箭頭。輸入緩沖器滿意味著將。輸入緩沖器滿意味著將阻止外設輸入新的數阻止外設輸入新的數據據。8255A8255A方式方式1 1輸入時序參數說明表輸入時序參數說明表STBSTBR

28、DRD參參 數數說說 明明8255A最小時間最小時間/ns最大時間最大時間/nstST選通脈沖的寬度選通脈沖的寬度500 tSIB選通脈沖有效到選通脈沖有效到IBF有效之間有效之間的時間的時間 300tSIT =1到中斷請求到中斷請求INTR有效之間有效之間的時間的時間 300tPH數據保持時間數據保持時間180 tPS數據有效到數據有效到 無效之間的無效之間的時間時間0 tRIT 有效到中斷請求撤除之間有效到中斷請求撤除之間的時間的時間 400tRIB 為為1到到IBF為為0之間的時間之間的時間 300選通的輸入方式選通的輸入方式CPUCPU如何讀取數據?如何讀取數據?1 1、采用查詢式輸入

29、,、采用查詢式輸入,CPUCPU先查詢先查詢IBFIBF是否為高?是否為高? 若若IBFIBF為高,為高,8255A8255A的輸入緩沖器就為滿,則的輸入緩沖器就為滿,則CPUCPU可從可從8255A8255A讀讀入數據。入數據。2 2、采用中斷方式傳送數據,先用、采用中斷方式傳送數據,先用C C端口置端口置1/1/置置0 0的控制的控制字使相應的端口允許中斷,也就是要使字使相應的端口允許中斷,也就是要使PC4PC4或或PC2PC2置置1 1。 這種方式的工作過程與選通輸入的情況相類似。這種方式的工作過程與選通輸入的情況相類似。對應的對應的C C端口也是端口也是固定分配固定分配。規定:規定:P

30、CPC3 3、PCPC6 6、PCPC7 7分配給分配給A A端口;端口;PCPC2 2、PCPC1 1、PCPC0 0分配給分配給B B端口,端口,剩下的剩下的2 2位位PCPC4 4、PCPC5 5可作為簡單的輸入可作為簡單的輸入/ /輸出線輸出線使用。使用。 當控制字的當控制字的D D3 3位為位為“1”1”時,時,PCPC4 4、PCPC5 5作輸入;當作輸入;當控制字的控制字的D D3 3位為位為“0”0”時,時,PCPC4 4、PCPC5 5作輸出。作輸出。 2) 2) 選通的輸出方式選通的輸出方式方式方式l l輸出時輸出時C C端口對端口對A A、B B端口的控制圖端口的控制圖(

31、a) (a) 對對A A端口;端口;(b) (b) 對對B B端口端口1010I/O1010I/O 10110D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D0A組工作于方式組工作于方式1輸出的控制字輸出的控制字A組和組和B組工作于方式組工作于方式1輸出的控制字輸出的控制字B組工作于方式組工作于方式1輸出的控制字輸出的控制字方式方式1B端口為輸出端口為輸出PC5、PC41輸入輸入0輸出輸出PC5、PC41輸入輸入0輸出輸出A端口為輸出端口為輸出方式方式1ACKAOBFAINTRAI/OPC6PC7PC3INTEA&PC5PC4PA7PA02

32、WR8(a)PC2PC1PC0INTEB&PB7PB0WR8INTRBOBFBACKB(b) 方式方式1 1選通輸出方式各控制信號的意義:選通輸出方式各控制信號的意義: OBF(Output Buffer Fu11)OBF(Output Buffer Fu11):輸出緩沖器滿信號,低電平有效。輸出緩沖器滿信號,低電平有效。A A組方式控制字中對應組方式控制字中對應PCPC7 7;B B組方式控制字中對應組方式控制字中對應PCPC1 1,由,由8255A8255A向向外設發出低電平的外設發出低電平的OBFOBF信號。信號。 輸出指令寫信號輸出指令寫信號WRWR的上升沿的上升沿出現后,將出

33、現后,將OBFOBF信號信號置成有效置成有效低電低電平平,如時序圖中表示的,如時序圖中表示的箭頭箭頭。當應答信號當應答信號ACKACK變為有效低電平后,變為有效低電平后,OBFOBF信號撤消變為高電平,如圖中表示的信號撤消變為高電平,如圖中表示的箭頭箭頭。ACK(Acknowledge)ACK(Acknowledge):數據接收應答信號,低電平有效。數據接收應答信號,低電平有效。A A組方式控組方式控制字中對應制字中對應PC6PC6;B B組方式控制字中對應組方式控制字中對應PC2PC2,是外設的響應信號,是外設的響應信號。 ACKACK信號信號有效后有效后使使OBFOBF變成無效變成無效的高

34、電平,同時的高電平,同時使使INTRINTR信號變為有信號變為有效效的高電平。的高電平。INTRINTR:中斷請求信號,高電平有效。中斷請求信號,高電平有效。A A組方式控制字中對應組方式控制字中對應PC3PC3;B B組方式控制字中對應組方式控制字中對應PC0PC0。由由8255A8255A向向CPUCPU發出中斷請求,要求發出中斷請求,要求CPUCPU輸出新的數據。輸出新的數據。 當當ACKACK撤消后為高電平,撤消后為高電平,OBFOBF也為高電平,中斷允許信號也為高電平,中斷允許信號INTEINTE也為高時,也為高時,INTRINTR中斷請求信號被置位為高電平,如圖中表示的中斷請求信號

35、被置位為高電平,如圖中表示的箭箭頭頭。 中斷請求信號是在中斷請求信號是在WRWR有效的下降沿出現后使它變為無效的低有效的下降沿出現后使它變為無效的低電平,如圖中表示的電平,如圖中表示的箭頭箭頭。INTEINTE:中斷允許信號,高電平有效。中斷允許信號,高電平有效。當該信號為當該信號為“1”1”時,允許中時,允許中斷。斷。INTEINTE是用軟件通過對是用軟件通過對C C端口置端口置1/1/置置0 0的控制字來設置的。當的控制字來設置的。當PCPC6 6置置1 1時,時,A A端口允許中斷;端口允許中斷;PCPC2 2置置1 1,B B端口允許中斷。反之,不允許端口允許中斷。反之,不允許中斷。中

36、斷。 當當8255A8255A的輸出選通方式采用中斷與的輸出選通方式采用中斷與CPUCPU通信時,通信時,CPUCPU響應中響應中斷后,就向斷后,就向8255A8255A輸出數據,輸出數據, WRWR信號信號出現,其上升沿出現,其上升沿一方面一方面撤撤消中斷請求信號消中斷請求信號使使INTRINTR變低變低,表示,表示CPUCPU對上一次中斷已經響應過。對上一次中斷已經響應過。另一方面使另一方面使OBFOBF信號變信號變為有效的為有效的低低電平,以通知外設可以接收下電平,以通知外設可以接收下一個數據。一個數據。8255A8255A方式方式1 1輸出時序圖輸出時序圖WROBFINTRACK送往外

37、設的輸出數據數據有效tAOBtWOBtWITtAKtAITtWB21348255A8255A方式方式1 1輸出時序參數說明表輸出時序參數說明表ACKACK參參 數數說說 明明8255A最小時間最小時間/ns最大時間最大時間/nstWIT從寫信號有效到中斷請求無從寫信號有效到中斷請求無效的時間效的時間 850tWOB從寫信號無效到輸出緩沖器從寫信號無效到輸出緩沖器清的時間清的時間 650tAOB 有效到無效的時間有效到無效的時間 350tAK 脈沖的寬度脈沖的寬度300 tAIT 為為1到發新的中斷請求到發新的中斷請求的時間的時間 350tWB寫信號撤除到數據有效的時寫信號撤除到數據有效的時間間

38、350ACK 雙向方式雙向方式8255A8255A可以向外設發送數據,同時可以向外設發送數據,同時CPUCPU通過這通過這8 8位數據線又接收外設的數據。傳輸過程由位數據線又接收外設的數據。傳輸過程由C C端口對端口對A A端口端口進行控制,所以稱為帶選通的雙向傳輸方式。進行控制,所以稱為帶選通的雙向傳輸方式。方式方式2 2的基本定義:的基本定義: 只能適用于只能適用于A A端口端口,一個,一個8 8位的雙向端口位的雙向端口(A(A端口端口) )和和1 1個個5 5位的控制端口位的控制端口(C(C端口端口) )。 A A端口的輸入和輸出都可以被鎖存。在這種方式下,端口的輸入和輸出都可以被鎖存。

39、在這種方式下,C C端口中高端口中高5 5位位PCPC7 7PCPC3 3作為控制信號和狀態信息使用,剩作為控制信號和狀態信息使用,剩下的下的3 3位位PCPC2 2PCPC0 0可作為簡單的輸入可作為簡單的輸入/ /輸出線使用。輸出線使用。3. 3. 方式方式2-2-帶選通的雙向傳輸方式帶選通的雙向傳輸方式方式方式2 2時時C C端口對端口對A A端口的控制信號圖端口的控制信號圖A A組工作于方式組工作于方式2 2的控制字的控制字11D7D6D5D4D3D2D1D0PC2PC01輸入輸入0輸出輸出B端口方式端口方式A端口端口方式方式1輸入輸入0輸出輸出B組方式組方式0方式方式01方式方式1P

40、C3&PC2PC0PA7PA0PC7PC6PC4PC5INTE2INTE11&WRRDINTRA8OBFAACKASTBAIBFAI/O3方式方式2 2各控制信號的意義:各控制信號的意義:STBSTB:選通信號,低電平有效。選通信號,低電平有效。對應于對應于PCPC4 4,由外設提,由外設提供給供給8255A8255A。該信號負責把外設送到。該信號負責把外設送到8255A8255A的數據送入的數據送入輸入鎖存器。輸入鎖存器。IBFIBF:輸入緩沖器滿信號,高電平有效。輸入緩沖器滿信號,高電平有效。對應對應PCPC5 5,是,是8255A8255A送給送給CPUCPU的狀態信息,

41、供的狀態信息,供CPUCPU查詢用。當該信號有查詢用。當該信號有效時,表示當前已經有一個新的數據送到了輸入鎖存效時,表示當前已經有一個新的數據送到了輸入鎖存器中,器中,CPUCPU可以取走??梢匀∽?。OBFOBF:輸出緩沖器滿信號,低電平有效。輸出緩沖器滿信號,低電平有效。對應對應PCPC7 7,由,由8255A8255A發給外設的選通信號,當發給外設的選通信號,當OBFOBF有效時,表明有效時,表明CPUCPU已已經將一個數據寫入經將一個數據寫入8255A8255A的的A A端口中,通知外設可以取端口中,通知外設可以取走數據。走數據。ACKACK:數據接收應答信號,低電平有效。數據接收應答信

42、號,低電平有效。對應對應PCPC6 6,這,這是外設對信號是外設對信號OBFOBF的響應信號,該信號為低電平時,使的響應信號,該信號為低電平時,使A A端口的輸出緩沖器打開,送出數據到外設。否則,當端口的輸出緩沖器打開,送出數據到外設。否則,當該信號為高電平時,方式該信號為高電平時,方式2 2時輸出緩沖器處于高阻狀態。時輸出緩沖器處于高阻狀態。INTRINTR:中斷請求信號,高電平有效。中斷請求信號,高電平有效。對應對應PCPC3 3,不論,不論A A端口工作端口工作在輸入方式還是工作在輸出方式,當一個操作完成,并且要進在輸入方式還是工作在輸出方式,當一個操作完成,并且要進入下一個操作時,入下

43、一個操作時,8255A8255A都要向都要向CPUCPU發出中斷請求信號。發出中斷請求信號。INTElINTEl:輸出中斷允許信號。輸出中斷允許信號。為為“1”1”時,允許向時,允許向CPUCPU發出由發出由A A端端口輸出數據的中斷請求信號。反之,即使輸出緩沖器空,也不口輸出數據的中斷請求信號。反之,即使輸出緩沖器空,也不允許允許8255A8255A向向CPUCPU發中斷請求信號。發中斷請求信號。INTElINTEl信號的置信號的置1 1或置或置0 0,是用,是用軟件使軟件使C C端口的端口的PCPC6 6置置1 1或置或置0 0來實現的。來實現的。INTE2INTE2:輸入中斷允許信號。輸

44、入中斷允許信號。為為“1”1”時,允許時,允許A A端口的輸入處于端口的輸入處于中斷允許狀態,反之,不允許中斷。中斷允許狀態,反之,不允許中斷。INTE2INTE2信號的置信號的置1 1或置或置0 0,同,同樣是用軟件樣是用軟件通過通過C C端口的端口的PC4PC4置置1 1或置或置0 0來實現。來實現。 * * 方式方式2 2的工作時序基本相當于方式的工作時序基本相當于方式1 1的選通輸入時序和選的選通輸入時序和選通輸出的時序的組合。通輸出的時序的組合。8255A8255A方式方式2 2時序圖時序圖表表9-6 8255A9-6 8255A方式方式2 2時序的參數說明時序的參數說明ASTBOB

45、FOBFACK參參 數數說說 明明8255A最小時間最小時間/ns最大時間最大時間/nstST選通脈沖的寬度選通脈沖的寬度500 tPH數據保持時間數據保持時間180 tSIB選通脈沖有效到選通脈沖有效到IBFA有效之間的時間有效之間的時間 300tPS 數據有效到數據有效到 無效之間的時間無效之間的時間0tWOD從寫信號無效到,從寫信號無效到, 有效的時間有效的時間 650tAOD 有效到有效到 無效的時間無效的時間 350tAD 有效到數據輸出的時間有效到數據輸出的時間 350tHD數據保持時間數據保持時間200 ACK 方式方式0 0:基本輸入輸出方式基本輸入輸出方式 適用于無條件傳送和

46、查詢方式的接口電路,適用于無條件傳送和查詢方式的接口電路,A A、B B、C C三個端口均可三個端口均可 。 方式方式1 1:選通輸入輸出方式選通輸入輸出方式 適用于查詢和中斷方式的接口電路,適用于查詢和中斷方式的接口電路,A A 、B B兩個端口兩個端口均可。均可。 方式方式2 2:雙向選通傳送方式雙向選通傳送方式 適用于雙向傳送數據的外設,只有適用于雙向傳送數據的外設,只有A A端口才有。端口才有。 適用于查詢和中斷方式的接口電路適用于查詢和中斷方式的接口電路 初始化編程后:初始化編程后: 當數據端口作為輸入接口時,執行輸入當數據端口作為輸入接口時,執行輸入ININ指令將從指令將從輸入設備

47、得到外設數據輸入設備得到外設數據 當數據端口作為輸出接口時,執行輸出當數據端口作為輸出接口時,執行輸出OUTOUT指令將把指令將把CPUCPU的數據送給輸出設備的數據送給輸出設備8255A8255A有有三種工作方式三種工作方式,用戶可以通過編程來設置。,用戶可以通過編程來設置。 總結:總結:各工作方式的各工作方式的C C口情況口情況A A口方式口方式B B口方式口方式C C口空余位口空余位C C口各位使用情況口各位使用情況008 1510512A輸入輸入A輸出輸出203104. C4. C口狀態字口狀態字 8255A8255A工作在方式工作在方式0 0時,時,C C口各位作輸入輸出用。當工作口

48、各位作輸入輸出用。當工作在方式在方式1 1和方式和方式2 2時,時,C C口產生與外設的聯絡信號??诋a生與外設的聯絡信號。 用用ININ指令讀入指令讀入C C口各位的內容可檢查或測試外設的狀態??诟魑坏膬热菘蓹z查或測試外設的狀態。C C口的狀態字格式如下:口的狀態字格式如下:(1 1)方式)方式1 1I/O I/O IBFA輸入輸入INTEAINTRAINTEB IBFB INTRBD7 D6 D5 D4 D3 D2 D1 D0I/O I/O輸出輸出INTEAINTRA INTEB OBFB INTRBD7 D6 D5 D4 D3 D2 D1 D0OBFA(2 2)方式)方式2 2*INTE1

49、INTRAINTE2IBFAD7 D6 D5 D4 D3 D2 D1 D0OBFA*9.3 8255A的應用舉例的應用舉例 8255A8255A先要初始化,寫入控制字,指定它先要初始化,寫入控制字,指定它的工作方式,然后才能進行數據的傳輸。的工作方式,然后才能進行數據的傳輸。 對對8255A8255A的編程涉及到兩個內容:的編程涉及到兩個內容: 寫控制字設置寫控制字設置工作方式工作方式等信息,等信息, 使使C C口的指定位口的指定位置位置位/ /復位復位的功能。的功能。 注:均注:均寫入控制端口寫入控制端口 8255A8255A作為開關作為開關K0K3及七段及七段LEDLED顯示器接口。顯示器

50、接口。要求開關設置的二進制信息,由要求開關設置的二進制信息,由PC0PC3輸入,輸入,經程序轉換為對應的七段經程序轉換為對應的七段LEDLED顯示器的字形代碼后,顯示器的字形代碼后,由由PAPA口輸出顯示。口輸出顯示。一、基本輸入輸出應用舉例一、基本輸入輸出應用舉例8255APA7PA0驅動器驅動器+5V5VK0K1K2K3PC3PC2PC1PC0D7D0RD WR A1 A2 A B C G2A G2B G1 Y0 Y1 Y2 O O OD7D0 RD WR A0 A1 CSA0 A3A4A78086系統總線系統總線138接口電路接口電路M/IO&A5A6各端口地址為:各端口地址為:

51、E8HEEH 8255A 8255A各端口地址確定各端口地址確定: : A7 A6 A5 A4 A3 A2 A1 A01 1 1 0 1 0 8255A 8255A方式選擇控制字方式選擇控制字: :LEDLED顯示器的字形代碼表存放在顯示器的字形代碼表存放在TABLETABLE單元開始的內存中單元開始的內存中. .數據段中定義:數據段中定義:TABLE DB 0C0H, 0F9H, 0A4H, 0B0H, 99H, 92H, 82H, 0F8H DB 80H, 98H, 88H, 83H, 0C6H, 0A1H, 86H, 8EHCSCSA A B B C C G2A G2A G2BG2B G

52、1 G1 Y0 Y0 Y1 Y1 Y2 Y2 A0 A0 A3A3A4A4 A7 A7LS138LS138 M/IO M/IO& &A5A5A6A6按題意設置端口按題意設置端口A A方式方式0 0輸出輸出, ,下下C C口輸入口輸入. .1 10 00 00 00 01 181H81H代碼段實現操作的具體程序如下代碼段實現操作的具體程序如下: :MOV DX, 0E8H ;指向端口指向端口A AOUT DX, AL;輸出字形碼顯示輸出字形碼顯示HLTMOV DX,0EEH ;設置設置8255A8255A工作方式工作方式MOV AL,81HOUT DX,ALMOV DX,0ECH

53、 ;指向端口指向端口C C,讀開關狀態,讀開關狀態IN AL,DXAND AL,0FHLEA BX,TABLE ;顯示代碼表首地址送顯示代碼表首地址送BXBXXLAT ;查表,取出相應的字形碼送查表,取出相應的字形碼送ALALabdcefgdpLED顯示器的外形顯示器的外形abcdefgdp共陽極共陽極LED顯示器的結構顯示器的結構abcdefgdp共陰極共陰極LED顯示器的結構顯示器的結構二、七段二、七段LEDLED顯示器接口電路顯示器接口電路1 1、軟件譯碼法、軟件譯碼法方案方案1 1 共陽極共陽極LEDLED顯示器與同相驅動器接口顯示器與同相驅動器接口PA0PA1PA2PA3PA4PA5

54、PA6PA78255DB7-DB0abcdefgep同同相相驅驅動動器器+5V方案方案2 2 共陰極共陰極LEDLED顯示器與反相驅動器接口顯示器與反相驅動器接口PA0PA1PA2PA3PA4PA5PA6PA78255DB7-DB0反反相相驅驅動動器器abcdefgdpabdcefgdpabdcefgdpD7 D6 D5 D4 D3 D2 D1 D0 dp g f e d c b a 0(C0H) 1 1 0 0 0 0 0 0abdcefgdpabdcefgdpabdcefgdpabdcefgdpabdcefgdpabdcefgdpabdcefgdpabdcefgdp9(90H) 1 0 0

55、 1 0 0 0 01(F9H) 1 1 1 1 1 0 0 12(A4H) 1 0 1 0 0 1 0 03(B0H) 1 0 1 1 0 0 0 04(99H) 1 0 0 1 1 0 0 15(92H) 1 0 0 1 0 0 1 06(82H) 1 0 0 0 0 0 1 07(F8H) 1 1 1 1 1 0 0 08(80H) 1 0 0 0 0 0 0 0(低電平輸出點亮)(低電平輸出點亮)D7 D6 D5 D4 D3 D2 D1 D0 dp g f e d c b a 0(3FH) 0 0 1 1 1 1 1 19(6FH) 0 1 1 0 1 1 1 11(05H) 0 0

56、0 0 0 1 1 02(5BH) 0 1 0 1 1 0 1 13(4FH) 0 1 0 0 1 1 1 14(66H) 0 1 1 0 0 1 1 05(6DH) 0 1 1 0 1 1 0 16(7DH) 0 1 1 1 1 1 0 17(07H) 0 0 0 0 0 1 1 18(7FH) 0 1 1 1 1 1 1 1(高電平輸出點亮)(高電平輸出點亮)2 2、利用專用芯片驅動、利用專用芯片驅動LEDLED顯示器顯示器利用利用74477447芯片驅動芯片驅動LEDLED顯示器顯示器74477447為為BCDBCD(09)七段譯碼器)七段譯碼器(1 1)與單個)與單個LEDLED的連接

57、的連接7447a b c d e f g13 12 11 10 9 15 14VccGNDRBIRBOLTA B C D345+5V7 1 2 6+5V1685VR=R=(51.5 0.2)V/ 20mA=168V/ 20mA=168 取限流電阻取限流電阻R=150 R=150 5V1. 5V0. 2VI=20mARBCDBCD輸入輸入(2 2)7447BCD7447BCD七段譯碼器與多個七段譯碼器與多個LEDLED的連接的連接PA0PA1PA2PA3 PA4 PA5PA6 PA77447a b c d e f gA B C D7447a b c d e f gA B C D7447a b c

58、 d e f gA B C D7447a b c d e f gA B C DPB0PB1PB2PB3 PB4 PB5PB6 PB7DB0DB7DB0DB75V靜態顯示器的設計靜態顯示器的設計 (器件多時,增加成本,加大功耗)(器件多時,增加成本,加大功耗) 7447abcdefgABCDPB0PB1PB2PB3PA0PA1PA2PA3PA4PA5PA68255動態顯示器動態顯示器的設計的設計+5V顯示控制程序顯示控制程序LEA SI,BUFFMOV CX,07HMOV DL,0FEH初始化初始化結束結束取顯示數據取顯示數據送段碼通道口送段碼通道口延時延時位碼送位通道口位碼送位通道口是否最后一

59、位是否最后一位修改指針,位碼修改指針,位碼N NY YMOV AL,SIOUT POTB,ALMOV AL,DLOUT POTA,ALINC SIROL DL PB0PA0PA1PA2PA3PA4PA5PA68255agPB774LS06小系統常用顯小系統常用顯示接口電路示接口電路初始化初始化結束結束取顯示數據取顯示數據查表得段碼送段通道查表得段碼送段通道延時延時位碼送位通道位碼送位通道是否最后一位是否最后一位修改指針,位碼修改指針,位碼N NY YLEA SI,BUFFMOV CL,40HMOV BX,LED-ADDDISI:MOV AL,SI XLATMOV DX, POTBOUT DX,

60、ALMOV AL,CLMOV DX, POTAOUT DX,ALINC SISHR CLJNZ DISI顯示控制程序顯示控制程序 鍵盤是最常用的一種輸入設備。有兩種類型:鍵盤是最常用的一種輸入設備。有兩種類型:編碼鍵盤編碼鍵盤和和非編碼鍵盤。非編碼鍵盤。 編碼鍵盤編碼鍵盤能能自動提供自動提供對應于被按鍵的編碼,如對應于被按鍵的編碼,如ASCIIASCII碼,并能同時產生一個脈沖通知碼,并能同時產生一個脈沖通知CPUCPU。編碼鍵。編碼鍵盤還具有處理抖動和多鍵串鍵的保護電路。這種鍵盤還具有處理抖動和多鍵串鍵的保護電路。這種鍵盤的盤的優點優點是使用方便,但是使用方便,但需要較多的硬件,價格昂需要較多的硬件,價格昂貴。貴。 非編碼鍵盤非編碼鍵盤有一組開關組成,提供

溫馨提示

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

評論

0/150

提交評論