微機(jī)原理與接口技術(shù)第9章_第1頁
微機(jī)原理與接口技術(shù)第9章_第2頁
微機(jī)原理與接口技術(shù)第9章_第3頁
微機(jī)原理與接口技術(shù)第9章_第4頁
微機(jī)原理與接口技術(shù)第9章_第5頁
已閱讀5頁,還剩76頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

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

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

3、的,用于控制外設(shè)接口的工作發(fā)出的,用于控制外設(shè)接口的工作方式以及外設(shè)的啟動(dòng)和停機(jī)信息等。方式以及外設(shè)的啟動(dòng)和停機(jī)信息等。 數(shù)據(jù)信息數(shù)據(jù)信息 CPUCPU與并行外設(shè)數(shù)據(jù)交換的內(nèi)容。與并行外設(shè)數(shù)據(jù)交換的內(nèi)容。 狀態(tài)信息、控制信息和數(shù)據(jù)信息狀態(tài)信息、控制信息和數(shù)據(jù)信息,通常,通常都是通過都是通過數(shù)據(jù)總線數(shù)據(jù)總線傳送,這些信息在外設(shè)接口中分別存取在不同傳送,這些信息在外設(shè)接口中分別存取在不同的端口中。的端口中。 對于一個(gè)外設(shè)接口,常常對于一個(gè)外設(shè)接口,常常需要幾個(gè)端口需要幾個(gè)端口才能滿足才能滿足和協(xié)調(diào)外部設(shè)備的工作與要求。和協(xié)調(diào)外部設(shè)備的工作與要求。并行接口與并行接口與CPUCPU、外設(shè)的連接、外設(shè)的

4、連接控制寄存器控制寄存器狀態(tài)寄存器狀態(tài)寄存器輸入緩沖寄存器輸入緩沖寄存器輸出緩沖寄存器輸出緩沖寄存器CPU總線系統(tǒng)總線系統(tǒng)輸輸入入設(shè)設(shè)備備輸輸出出設(shè)設(shè)備備數(shù)據(jù)總線數(shù)據(jù)總線輸出數(shù)據(jù)準(zhǔn)備好輸出數(shù)據(jù)準(zhǔn)備好輸入數(shù)據(jù)準(zhǔn)備好輸入數(shù)據(jù)準(zhǔn)備好中斷請求中斷請求地地 址址譯碼器譯碼器復(fù)位復(fù)位地址總線地址總線AENCSA0A1IORIOW輸入數(shù)據(jù)輸入數(shù)據(jù)輸入數(shù)據(jù)準(zhǔn)備好輸入數(shù)據(jù)準(zhǔn)備好輸入應(yīng)答輸入應(yīng)答輸出數(shù)據(jù)輸出數(shù)據(jù)輸出數(shù)據(jù)準(zhǔn)備好輸出數(shù)據(jù)準(zhǔn)備好輸出應(yīng)答輸出應(yīng)答 并行接口電路,在并行接口電路,在早期的早期的微機(jī)中與串行口、軟盤接微機(jī)中與串行口、軟盤接口、硬盤接口等都放在一塊口、硬盤接口等都放在一塊多功能接口卡多功能接口卡

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

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

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

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

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

10、命令字,以決定決定A A組、組、B B組的工作方式組的工作方式,或?qū)驅(qū) C口的每一個(gè)位執(zhí)行口的每一個(gè)位執(zhí)行位操作。位操作。A組控制B組控制內(nèi)部總線內(nèi)部總線( (三三) ) 數(shù)據(jù)總線緩沖器數(shù)據(jù)總線緩沖器是雙向三態(tài)的是雙向三態(tài)的8 8位緩沖位緩沖器器, , 用作用作8255A8255A和系統(tǒng)數(shù)和系統(tǒng)數(shù)據(jù)總線的接口。據(jù)總線的接口。1)1)傳送傳送系統(tǒng)對系統(tǒng)對8255A8255A的控制字;的控制字;2)2)傳送各端口的輸入、傳送各端口的輸入、輸出數(shù)據(jù)。輸出數(shù)據(jù)。緩沖器數(shù)據(jù)總線DBoooRDWRA0A1RESETCS讀/寫控制邏輯內(nèi)部總線內(nèi)部總線至數(shù)據(jù)端口至控制寄存器( (四四) ) 讀讀/ /寫控

11、制邏輯寫控制邏輯控制信息傳送的路徑和控制信息傳送的路徑和方向。方向。RESET:復(fù)位,高電:復(fù)位,高電平有效。清零控制寄存器,平有效。清零控制寄存器,所有端口都置成輸入方式。所有端口都置成輸入方式。( (五五) ) 端口尋址端口尋址A1 A0RDWRCS功能00010端口 A 數(shù)據(jù)總線01010端口 B 數(shù)據(jù)總線10010端口 C 數(shù)據(jù)總線00100數(shù)據(jù)總線 端口 A01100數(shù)據(jù)總線 端口 B10100數(shù)據(jù)總線 端口 C11100數(shù)據(jù)總線 控制字寄存器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、始化編程時(shí),初始化編程時(shí),應(yīng)寫入方式選擇控制字,以規(guī)定各端口的工作方式。應(yīng)寫入方式選擇控制字,以規(guī)定各端口的工作方式。方式選擇控制字格式方式選擇控制字格式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è)在一個(gè)8086/8088系統(tǒng)中,有一片系統(tǒng)中,有一片8255芯片,其各芯片,其各個(gè)端口的地址分別為個(gè)

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

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

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

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

18、式方式0 0一般用于無條件傳送的場合一般用于無條件傳送的場合,不需要應(yīng)答式,不需要應(yīng)答式聯(lián)絡(luò)信號,外設(shè)總是處于準(zhǔn)備好的狀態(tài)。聯(lián)絡(luò)信號,外設(shè)總是處于準(zhǔn)備好的狀態(tài)。 也可以用作查詢式傳送也可以用作查詢式傳送,查詢式傳送時(shí),需要有,查詢式傳送時(shí),需要有應(yīng)答信號。可以將應(yīng)答信號??梢詫 A端口、端口、B B端口作為數(shù)據(jù)口端口作為數(shù)據(jù)口使用。使用。C C端端口則可用來輸出一些控制信息,或輸入外設(shè)的狀態(tài)??趧t可用來輸出一些控制信息,或輸入外設(shè)的狀態(tài)。利用利用C C端口配合端口配合A A端口和端口和B B端口完成查詢式的端口完成查詢式的I/OI/O操作。操作。 當(dāng)當(dāng)A A端口和端口和B B端口以方式端口以

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

20、配給A A端口作聯(lián)絡(luò)線端口作聯(lián)絡(luò)線,PCPC0 0PCPC2 2分配給分配給B B端口作聯(lián)絡(luò)線,端口作聯(lián)絡(luò)線,C C端口剩下的端口剩下的2 2位位PCPC7 7、PCPC6 6可作為簡單的輸入可作為簡單的輸入/ /輸出輸出線使用。線使用。 1) 1) 選通的輸入方式選通的輸入方式方式方式1 1選通輸入下對應(yīng)的控制信號圖選通輸入下對應(yīng)的控制信號圖(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組方式控制字中組方式控制字中對應(yīng)對應(yīng)PC4PC4;B B組方式控制字中對應(yīng)組方式控制字中對應(yīng)PC2PC2。 IBF(Input Buffer Full)IBF(Input Buffer Full):輸入緩沖器滿信號,高電平有效。輸入緩沖器滿信號,高電平有效。 是是8255A8255A送給外設(shè)的聯(lián)絡(luò)信號,送給外設(shè)的聯(lián)絡(luò)信號,A A組方式控制字中對應(yīng)組方式控制字中對應(yīng)PC5PC5;B B組組方式控制字中對應(yīng)方式控制字中對應(yīng)PC1PC1,該信號可供,該信號可供CPUCPU查詢。查詢。 該信號在選通輸入信號該信號在選通輸入信號STBSTB變低后,變低后,300 ns30

23、0 ns時(shí)間內(nèi)即變?yōu)橛袝r(shí)間內(nèi)即變?yōu)橛行У母唠娖?。在效的高電平。在RDRD信號撤消后的信號撤消后的300 ns300 ns時(shí)間內(nèi)時(shí)間內(nèi)IBFIBF信號才撤消,信號才撤消,變?yōu)闊o效的低電平,這樣保證了數(shù)據(jù)傳輸?shù)目煽啃浴W優(yōu)闊o效的低電平,這樣保證了數(shù)據(jù)傳輸?shù)目煽啃浴NTR(Interrupt Request)INTR(Interrupt Request):中斷請求信號,高電平有效。中斷請求信號,高電平有效。A A組組方式控制字中對應(yīng)方式控制字中對應(yīng)PC3PC3;B B組方式控制字中對應(yīng)組方式控制字中對應(yīng)PC0PC0。當(dāng)。當(dāng)STBSTB信號信號撤消變?yōu)楦唠娖胶?,并且撤消變?yōu)楦唠娖胶?,并且IBFIBF

24、信號也為高電平,信號也為高電平,INTRINTR信號變?yōu)橛行盘栕優(yōu)橛行У母唠娖?。效的高電平?當(dāng)當(dāng)CPUCPU發(fā)出的發(fā)出的RDRD信號有效后,信號有效后,400 ns400 ns的時(shí)間內(nèi)的時(shí)間內(nèi)INTRINTR信號將撤信號將撤消,變?yōu)榈碗娖健O?,變?yōu)榈碗娖?。INTE(Interrupt Enable)INTE(Interrupt Enable):中斷允許信號,高電平有效。中斷允許信號,高電平有效。否則否則屏蔽中斷請求。屏蔽中斷請求。 INTEINTE的狀態(tài)的狀態(tài)是用軟件通過是用軟件通過由由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”,與之對應(yīng)的,與之對應(yīng)的INTEINTE信號為低,則禁止中斷。信號為低,則禁止中斷。8255A8255A方式方式l l輸入時(shí)序圖輸入時(shí)序圖STBIBFINTRRD來自外設(shè)的輸入數(shù)據(jù)數(shù)據(jù)有效數(shù)據(jù)有效1234tSTtSIBtSITtRITtPHtPStRIB 輸入緩沖器滿狀態(tài),可供輸入緩沖器滿狀態(tài),可供CPUCPU來查詢。在選通輸入信號結(jié)束來查詢。在

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

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

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

29、,、采用查詢式輸入,CPUCPU先查詢先查詢IBFIBF是否為高?是否為高? 若若IBFIBF為高,為高,8255A8255A的輸入緩沖器就為滿,則的輸入緩沖器就為滿,則CPUCPU可從可從8255A8255A讀讀入數(shù)據(jù)。入數(shù)據(jù)。2 2、采用中斷方式傳送數(shù)據(jù),先用、采用中斷方式傳送數(shù)據(jù),先用C C端口置端口置1/1/置置0 0的控制的控制字使相應(yīng)的端口允許中斷,也就是要使字使相應(yīng)的端口允許中斷,也就是要使PC4PC4或或PC2PC2置置1 1。 這種方式的工作過程與選通輸入的情況相類似。這種方式的工作過程與選通輸入的情況相類似。對應(yīng)的對應(yīng)的C C端口也是端口也是固定分配固定分配。規(guī)定:規(guī)定: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āng)控制字的當(dāng)控制字的D D3 3位為位為“1”1”時(shí),時(shí),PCPC4 4、PCPC5 5作輸入;當(dāng)作輸入;當(dāng)控制字的控制字的D D3 3位為位為“0”0”時(shí),時(shí),PCPC4 4、PCPC5 5作輸出。作輸出。 2) 2) 選通的輸出方式選通的輸出方式方式方式l l輸出時(shí)輸出時(shí)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組方式控制字中對應(yīng)組方式控制字中對應(yīng)PCPC7 7;B B組方式控制字中對應(yīng)組方式控制字中對應(yīng)PCPC1 1,由,由8255A8255A向向外設(shè)發(fā)出低電平的外設(shè)發(fā)出低電平的OBFOBF信號。信號。 輸出指令寫信號輸出指令寫信號WRWR的上升沿的上升沿出現(xiàn)后,將出

33、現(xiàn)后,將OBFOBF信號信號置成有效置成有效低電低電平平,如時(shí)序圖中表示的,如時(shí)序圖中表示的箭頭箭頭。當(dāng)應(yīng)答信號當(dāng)應(yīng)答信號ACKACK變?yōu)橛行У碗娖胶?,變?yōu)橛行У碗娖胶?,OBFOBF信號撤消變?yōu)楦唠娖?,如圖中表示的信號撤消變?yōu)楦唠娖?,如圖中表示的箭頭箭頭。ACK(Acknowledge)ACK(Acknowledge):數(shù)據(jù)接收應(yīng)答信號,低電平有效。數(shù)據(jù)接收應(yīng)答信號,低電平有效。A A組方式控組方式控制字中對應(yīng)制字中對應(yīng)PC6PC6;B B組方式控制字中對應(yīng)組方式控制字中對應(yīng)PC2PC2,是外設(shè)的響應(yīng)信號,是外設(shè)的響應(yīng)信號。 ACKACK信號信號有效后有效后使使OBFOBF變成無效變成無效的高

34、電平,同時(shí)的高電平,同時(shí)使使INTRINTR信號變?yōu)橛行盘栕優(yōu)橛行У母唠娖健5母唠娖?。INTRINTR:中斷請求信號,高電平有效。中斷請求信號,高電平有效。A A組方式控制字中對應(yīng)組方式控制字中對應(yīng)PC3PC3;B B組方式控制字中對應(yīng)組方式控制字中對應(yīng)PC0PC0。由由8255A8255A向向CPUCPU發(fā)出中斷請求,要求發(fā)出中斷請求,要求CPUCPU輸出新的數(shù)據(jù)。輸出新的數(shù)據(jù)。 當(dāng)當(dāng)ACKACK撤消后為高電平,撤消后為高電平,OBFOBF也為高電平,中斷允許信號也為高電平,中斷允許信號INTEINTE也為高時(shí),也為高時(shí),INTRINTR中斷請求信號被置位為高電平,如圖中表示的中斷請求信號

35、被置位為高電平,如圖中表示的箭箭頭頭。 中斷請求信號是在中斷請求信號是在WRWR有效的下降沿出現(xiàn)后使它變?yōu)闊o效的低有效的下降沿出現(xiàn)后使它變?yōu)闊o效的低電平,如圖中表示的電平,如圖中表示的箭頭箭頭。INTEINTE:中斷允許信號,高電平有效。中斷允許信號,高電平有效。當(dāng)該信號為當(dāng)該信號為“1”1”時(shí),允許中時(shí),允許中斷。斷。INTEINTE是用軟件通過對是用軟件通過對C C端口置端口置1/1/置置0 0的控制字來設(shè)置的。當(dāng)?shù)目刂谱謥碓O(shè)置的。當(dāng)PCPC6 6置置1 1時(shí),時(shí),A A端口允許中斷;端口允許中斷;PCPC2 2置置1 1,B B端口允許中斷。反之,不允許端口允許中斷。反之,不允許中斷。中

36、斷。 當(dāng)當(dāng)8255A8255A的輸出選通方式采用中斷與的輸出選通方式采用中斷與CPUCPU通信時(shí),通信時(shí),CPUCPU響應(yīng)中響應(yīng)中斷后,就向斷后,就向8255A8255A輸出數(shù)據(jù),輸出數(shù)據(jù), WRWR信號信號出現(xiàn),其上升沿出現(xiàn),其上升沿一方面一方面撤撤消中斷請求信號消中斷請求信號使使INTRINTR變低變低,表示,表示CPUCPU對上一次中斷已經(jīng)響應(yīng)過。對上一次中斷已經(jīng)響應(yīng)過。另一方面使另一方面使OBFOBF信號變信號變?yōu)橛行У臑橛行У牡偷碗娖?,以通知外設(shè)可以接收下電平,以通知外設(shè)可以接收下一個(gè)數(shù)據(jù)。一個(gè)數(shù)據(jù)。8255A8255A方式方式1 1輸出時(shí)序圖輸出時(shí)序圖WROBFINTRACK送往外

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

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

39、在這種方式下,C C端口中高端口中高5 5位位PCPC7 7PCPC3 3作為控制信號和狀態(tài)信息使用,剩作為控制信號和狀態(tài)信息使用,剩下的下的3 3位位PCPC2 2PCPC0 0可作為簡單的輸入可作為簡單的輸入/ /輸出線使用。輸出線使用。3. 3. 方式方式2-2-帶選通的雙向傳輸方式帶選通的雙向傳輸方式方式方式2 2時(shí)時(shí)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:選通信號,低電平有效。選通信號,低電平有效。對應(yīng)于對應(yīng)于PCPC4 4,由外設(shè)提,由外設(shè)提供給供給8255A8255A。該信號負(fù)責(zé)把外設(shè)送到。該信號負(fù)責(zé)把外設(shè)送到8255A8255A的數(shù)據(jù)送入的數(shù)據(jù)送入輸入鎖存器。輸入鎖存器。IBFIBF:輸入緩沖器滿信號,高電平有效。輸入緩沖器滿信號,高電平有效。對應(yīng)對應(yīng)PCPC5 5,是,是8255A8255A送給送給CPUCPU的狀態(tài)信息,

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

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

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

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

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

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

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

48、輸出用。當(dāng)工作在方式在方式1 1和方式和方式2 2時(shí),時(shí),C C口產(chǎn)生與外設(shè)的聯(lián)絡(luò)信號??诋a(chǎn)生與外設(shè)的聯(lián)絡(luò)信號。 用用ININ指令讀入指令讀入C C口各位的內(nèi)容可檢查或測試外設(shè)的狀態(tài)??诟魑坏膬?nèi)容可檢查或測試外設(shè)的狀態(tài)。C C口的狀態(tài)字格式如下:口的狀態(tài)字格式如下:(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*INTE1INTRA

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

50、開關(guān)設(shè)置的二進(jìn)制信息,由要求開關(guān)設(shè)置的二進(jìn)制信息,由PC0PC3輸入,輸入,經(jīng)程序轉(zhuǎn)換為對應(yīng)的七段經(jīng)程序轉(zhuǎn)換為對應(yīng)的七段LEDLED顯示器的字形代碼后,顯示器的字形代碼后,由由PAPA口輸出顯示。口輸出顯示。一、基本輸入輸出應(yīng)用舉例一、基本輸入輸出應(yīng)用舉例8255APA7PA0驅(qū)動(dòng)器驅(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)總線系統(tǒng)總線138接口電路接口電路M/IO&A5A6各端口地址為:各端口地址為:E8HEE

51、H 8255A 8255A各端口地址確定各端口地址確定: : A7 A6 A5 A4 A3 A2 A1 A01 1 1 0 1 0 8255A 8255A方式選擇控制字方式選擇控制字: :LEDLED顯示器的字形代碼表存放在顯示器的字形代碼表存放在TABLETABLE單元開始的內(nèi)存中單元開始的內(nèi)存中. .數(shù)據(jù)段中定義:數(shù)據(jù)段中定義: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 G1 G1

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

53、口指向端口C C,讀開關(guān)狀態(tài),讀開關(guān)狀態(tài)IN AL,DXAND AL,0FHLEA BX,TABLE ;顯示代碼表首地址送顯示代碼表首地址送BXBXXLAT ;查表,取出相應(yīng)的字形碼送查表,取出相應(yīng)的字形碼送ALALabdcefgdpLED顯示器的外形顯示器的外形abcdefgdp共陽極共陽極LED顯示器的結(jié)構(gòu)顯示器的結(jié)構(gòu)abcdefgdp共陰極共陰極LED顯示器的結(jié)構(gòu)顯示器的結(jié)構(gòu)二、七段二、七段LEDLED顯示器接口電路顯示器接口電路1 1、軟件譯碼法、軟件譯碼法方案方案1 1 共陽極共陽極LEDLED顯示器與同相驅(qū)動(dòng)器接口顯示器與同相驅(qū)動(dòng)器接口PA0PA1PA2PA3PA4PA5PA6PA

54、78255DB7-DB0abcdefgep同同相相驅(qū)驅(qū)動(dòng)動(dòng)器器+5V方案方案2 2 共陰極共陰極LEDLED顯示器與反相驅(qū)動(dòng)器接口顯示器與反相驅(qū)動(dòng)器接口PA0PA1PA2PA3PA4PA5PA6PA78255DB7-DB0反反相相驅(qū)驅(qū)動(dòng)動(dòng)器器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 1 0

55、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(低電平輸出點(diǎn)亮)(低電平輸出點(diǎn)亮)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 0 0 0

56、 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(高電平輸出點(diǎn)亮)(高電平輸出點(diǎn)亮)2 2、利用專用芯片驅(qū)動(dòng)、利用專用芯片驅(qū)動(dòng)LEDLED顯示器顯示器利用利用74477447芯片驅(qū)動(dòng)芯片驅(qū)動(dòng)LEDLED顯示器顯示器74477447為為BCDBCD(09)七段譯碼器)七段譯碼器(1 1)與單個(gè))與單個(gè)LEDLED的連接的連接74

57、47a 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七段譯碼器與多個(gè)七段譯碼器與多個(gè)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 d e

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

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

60、 AL,CLMOV DX, POTAOUT DX,ALINC SISHR CLJNZ DISI顯示控制程序顯示控制程序 鍵盤是最常用的一種輸入設(shè)備。有兩種類型:鍵盤是最常用的一種輸入設(shè)備。有兩種類型:編碼鍵盤編碼鍵盤和和非編碼鍵盤。非編碼鍵盤。 編碼鍵盤編碼鍵盤能能自動(dòng)提供自動(dòng)提供對應(yīng)于被按鍵的編碼,如對應(yīng)于被按鍵的編碼,如ASCIIASCII碼,并能同時(shí)產(chǎn)生一個(gè)脈沖通知碼,并能同時(shí)產(chǎn)生一個(gè)脈沖通知CPUCPU。編碼鍵。編碼鍵盤還具有處理抖動(dòng)和多鍵串鍵的保護(hù)電路。這種鍵盤還具有處理抖動(dòng)和多鍵串鍵的保護(hù)電路。這種鍵盤的盤的優(yōu)點(diǎn)優(yōu)點(diǎn)是使用方便,但是使用方便,但需要較多的硬件,價(jià)格昂需要較多的硬件,價(jià)格昂貴。貴。 非編碼鍵盤非編碼鍵盤有一組開關(guān)組成,提供行和列的鍵

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論