微機原理與接口技術并行接口_第1頁
微機原理與接口技術并行接口_第2頁
微機原理與接口技術并行接口_第3頁
微機原理與接口技術并行接口_第4頁
微機原理與接口技術并行接口_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第第9 9章章 并行接口并行接口 v并行通信的基本概念并行通信的基本概念 并行通信就是把一個字符的各數(shù)據(jù)位用并行通信就是把一個字符的各數(shù)據(jù)位用幾條幾條傳輸線同時進行傳輸。傳輸線同時進行傳輸。優(yōu)點:優(yōu)點: 實際的傳輸速度快,信息率高。實際的傳輸速度快,信息率高。缺點:缺點: 隨著傳輸距離的增加,電纜開銷大。隨著傳輸距離的增加,電纜開銷大。D7D1D0t9.1 8255A的工作原理的工作原理v并行接口的基本結(jié)構(gòu)并行接口的基本結(jié)構(gòu)CPUCPU并行接口并行接口輸入設備輸入設備輸出設備輸出設備數(shù)據(jù)總線數(shù)據(jù)總線數(shù)據(jù)輸入數(shù)據(jù)輸入數(shù)據(jù)輸出數(shù)據(jù)輸出輸入緩沖寄存器輸入緩沖寄存器輸出緩沖寄存器輸出緩沖寄存器控制寄存

2、器控制寄存器狀態(tài)寄存器狀態(tài)寄存器讀信讀信號號寫信寫信號號復位復位中斷信號中斷信號地址地址地址地址譯碼譯碼CSA0A1輸入準備好輸入準備好輸出準備好輸出準備好輸入應答輸入應答輸出應答輸出應答可編程并行接口可編程并行接口8255A8255A 8255A 8255A是是INTELINTEL系列的并行系列的并行接口芯片,使用單一接口芯片,使用單一5V5V電源且電源且具有具有4040個引腳的雙列直插式芯個引腳的雙列直插式芯片,其特點是:片,其特點是: 利用軟件編程控制芯片的工利用軟件編程控制芯片的工作方式。作方式。 構(gòu)成系統(tǒng)不需要附加電路構(gòu)成系統(tǒng)不需要附加電路 與外設提供與外設提供3 3組組8 8位數(shù)據(jù)

3、位數(shù)據(jù)的并的并行通信端口,稱為行通信端口,稱為A A端口、端口、B B端端口、口、C C端口。端口。8255A8255A的引腿功能的引腿功能8255A8255A的芯片引腿信號,除了電源的芯片引腿信號,除了電源和地之外,其他信號分為兩組:和地之外,其他信號分為兩組:與外設相連的引腿信號:與外設相連的引腿信號: PAPA7 7PAPA0 0: A A組數(shù)據(jù)信號輸入輸出組數(shù)據(jù)信號輸入輸出 PBPB7 7PBPB0 0: B B組數(shù)據(jù)信號組數(shù)據(jù)信號輸入輸出輸入輸出 PCPC7 7PCPC0 0: C C組數(shù)據(jù)信號組數(shù)據(jù)信號輸入輸出輸入輸出與與CPUCPU相連的引腿信號:相連的引腿信號: RESETRE

4、SET:復位信號:復位信號 RD: RD: 讀信號,讀信號,CPUCPU從從8255A8255A讀數(shù)據(jù)讀數(shù)據(jù) WR WR:寫信號,:寫信號,CPUCPU向向8255A8255A寫數(shù)據(jù)寫數(shù)據(jù) CSCS:片選信號,:片選信號,8255A8255A被選中被選中 D D7 7D D0 0:8255A8255A數(shù)據(jù)線,與數(shù)據(jù)總線相連數(shù)據(jù)線,與數(shù)據(jù)總線相連 A A1 1、A A0 0 :端口選擇信號。:端口選擇信號。8255A8255A一共有一共有3 3個數(shù)據(jù)端口和個數(shù)據(jù)端口和1 1個控制端口,共個控制端口,共4 4個端口個端口當當A A1 1、A A0 0為為0000時,選中時,選中A A端口端口當當A

5、 A1 1、A A0 0為為0101時,選中時,選中B B端口端口當當A A1 1、A A0 0為為1010時,選中時,選中C C端口端口當當A A1 1、A A0 0為為1111時,選中控制端口時,選中控制端口8255A8255A的內(nèi)部功能結(jié)構(gòu)的內(nèi)部功能結(jié)構(gòu)端口端口A A對應對應1 1個個8 8位的數(shù)據(jù)輸入鎖存器和位的數(shù)據(jù)輸入鎖存器和1 1個個8 8位的數(shù)據(jù)輸出鎖存位的數(shù)據(jù)輸出鎖存/ /緩沖器緩沖器, ,端口端口A A作作為輸入輸出時數(shù)據(jù)均收到鎖存。為輸入輸出時數(shù)據(jù)均收到鎖存。端口端口B B對應對應1 1個個8 8位的數(shù)據(jù)輸入緩沖器和位的數(shù)據(jù)輸入緩沖器和1 1個個8 8位的數(shù)據(jù)輸出鎖存位的數(shù)

6、據(jù)輸出鎖存/ /緩沖器緩沖器, ,端口端口B B作作為輸出時數(shù)據(jù)收到鎖存。為輸出時數(shù)據(jù)收到鎖存。端口端口C C對應對應1 1個個8 8位的數(shù)據(jù)輸入緩沖器和位的數(shù)據(jù)輸入緩沖器和1 1個個8 8位的數(shù)據(jù)輸出鎖存位的數(shù)據(jù)輸出鎖存/ /緩沖器,端口緩沖器,端口C C作作為輸出時數(shù)據(jù)收到鎖存。為輸出時數(shù)據(jù)收到鎖存。端口端口C C通常被劃通常被劃分為兩個分為兩個4 4位端口,它們分別為端口位端口,它們分別為端口A A和和端口端口B B提供控制和狀態(tài)信號。提供控制和狀態(tài)信號。8255A8255A的控制寄存器,的控制寄存器,A A組控制決定組控制決定A A端口端口和和C C端口高端口高4 4位的輸入輸出和工作

7、方式,位的輸入輸出和工作方式,B B組控制決定組控制決定B B端口和端口和C C端口低端口低4 4位的輸入輸位的輸入輸出和工作方式,出和工作方式,8255A8255A端口端口工作方式工作方式v8255A8255A有三種基本工作方式有三種基本工作方式 方式方式0 0:基本的輸入:基本的輸入/ /輸出方式輸出方式 方式方式1 1:選通的輸入:選通的輸入/ /輸出方式輸出方式 方式方式2 2:雙向傳輸方式:雙向傳輸方式 端口端口A A可以工作在可以工作在3 3種工作方式中的任何一種。種工作方式中的任何一種。 端口端口B B只能工作方式只能工作方式0 0或者方式或者方式1 1。 端口端口C C一般分為

8、兩組,高一般分為兩組,高4 4位與端口位與端口A A構(gòu)成一組配合工作,構(gòu)成一組配合工作,低低4 4位與端口位與端口B B構(gòu)成一組配合工作,為構(gòu)成一組配合工作,為A A和和B B端口的輸入端口的輸入/ /輸出提輸出提供控制信號和狀態(tài)信號。供控制信號和狀態(tài)信號。注意:只有端口注意:只有端口A A可以工作在方式可以工作在方式2 28255A8255A的初始化的初始化 8255A 8255A的控制寄存器控制著它的的控制寄存器控制著它的3 3個端口的工作方式和數(shù)個端口的工作方式和數(shù)據(jù)傳送方式,所以對據(jù)傳送方式,所以對8255A8255A的初始化就是對控制寄存器寫入控的初始化就是對控制寄存器寫入控制字的過

9、程。制字的過程。v8255A8255A控制寄存器的端口的選中要求控制寄存器的端口的選中要求A A1 1、A A0 01111v 8255A 8255A的控制字分為兩類:的控制字分為兩類: 一類是芯片各端口的一類是芯片各端口的方式選擇控制字方式選擇控制字,它可以使,它可以使8255A8255A的的各端口工作于不同的方式下。方式選擇控制字總是將端口各端口工作于不同的方式下。方式選擇控制字總是將端口C C分分為為2 2組來控制??刂谱值牡诮M來控制??刂谱值牡? 7位稱為標識位。如果為位稱為標識位。如果為1 1,則寫入,則寫入控制寄存器的是控制寄存器的是方式選擇控制字方式選擇控制字。 一類是一類是C

10、C端口按位置端口按位置1/1/置置0 0方式字方式字,它可以使,它可以使C C端口中的任端口中的任何何1 1位置位置0 0或者置或者置1 1。控制字的第。控制字的第7 7位如果為位如果為0 0,則寫入控制寄存,則寫入控制寄存器的是器的是C C端口按位置端口按位置1/1/置置0 0方式字。方式字。B組控制組控制D7 = 1特征位特征位D0D1D2D3D4D5D6D7PC3 PC01:輸入:輸入0:輸出:輸出B口口 1:輸入:輸入 0:輸出:輸出B組工作方式組工作方式 0:方式:方式0 1:方式:方式1PC7 PC4 1:輸入:輸入 0:輸出:輸出A口口 1:輸入:輸入 0:輸出:輸出A組工作方式

11、組工作方式0 0 :方式:方式00 1 :方式:方式11:方式:方式2方式選擇控制字方式選擇控制字A組控制組控制D0D1D2D3D4D5D6D71:置位:置位0:復位:復位C口選擇口選擇000:PC0001:PC1010:PC2011:PC3100:PC4101:PC5110:PC6111:PC7任選(可任選(可1可可0)D7 = 0(特征位)(特征位)C端口按位置端口按位置1/置置0方式字方式字v例如微機系統(tǒng)中,例如微機系統(tǒng)中,8255A8255A的控制端口的地址為的控制端口的地址為00E7H00E7H,要求各,要求各端口的工作方式如下:端口的工作方式如下: 端口端口A A:方式:方式0 0

12、,輸出,輸出 端口端口B B:方式:方式0 0,輸入,輸入 端口端口C C的高的高4 4位:輸出位:輸出 端口端口C C的低的低4 4位:輸入位:輸入 設置設置8255A8255A的方式選擇控制字的程序段如下:的方式選擇控制字的程序段如下: MOV AL, 83HMOV AL, 83H MOV DX,00E7H MOV DX,00E7H OUT DX, AL OUT DX, AL 1 00 0 0 0 1 1v例如例如微機微機系統(tǒng)中,系統(tǒng)中,8255A8255A的控制端口的地址為的控制端口的地址為00E7H00E7H,要求端,要求端口口C C的的PC3PC3位置位置0 0,下面的程序段可以實現(xiàn)

13、該要求。,下面的程序段可以實現(xiàn)該要求。 MOV AL, 06HMOV AL, 06H MOV DX,00E7H MOV DX,00E7H OUT DX, AL OUT DX, AL0 000 011 08255A8255A的工作方式的工作方式方式方式0 0v方式方式0 0也稱為基本輸入也稱為基本輸入/ /輸出方式輸出方式。該方式下端口。該方式下端口A A和端口和端口B B可可以通過方式選擇控制字作為輸入口或者輸出口;端口以通過方式選擇控制字作為輸入口或者輸出口;端口C C分為兩分為兩個個4 4位端口,也可以規(guī)定位輸入口或輸出口。位端口,也可以規(guī)定位輸入口或輸出口。v方式方式0 0的特點是任何的

14、特點是任何1 1個端口可作為輸入口或作為輸出口,各個端口可作為輸入口或作為輸出口,各端口之間沒有必然的聯(lián)系。各端口的輸入或者輸出可以有端口之間沒有必然的聯(lián)系。各端口的輸入或者輸出可以有1616中組合,適用于多種使用場合。中組合,適用于多種使用場合。v方式方式0 0的使用場合有兩個:的使用場合有兩個: 一種是同步傳輸,發(fā)送方和接受方的動作由一個時序信一種是同步傳輸,發(fā)送方和接受方的動作由一個時序信號來管理,號來管理,不需要應答信號和查詢外設的狀態(tài)不需要應答信號和查詢外設的狀態(tài),對接口的要,對接口的要求簡單,只要能傳遞數(shù)據(jù),可以實現(xiàn)求簡單,只要能傳遞數(shù)據(jù),可以實現(xiàn)3 3路并行傳輸。路并行傳輸。 二

15、種是查詢傳輸,端口二種是查詢傳輸,端口A A和端口和端口B B傳送數(shù)據(jù),端口傳送數(shù)據(jù),端口C C配合端配合端口口A A和和B B工作:作為輸出口,輸出對外設的控制信號;作為輸工作:作為輸出口,輸出對外設的控制信號;作為輸入口,讀取外設的狀態(tài)。入口,讀取外設的狀態(tài)。信號與端口信號與端口C C的數(shù)位沒有具體關系的數(shù)位沒有具體關系。 8255A 8255A作為連接打印機的接口,工作過程如下:作為連接打印機的接口,工作過程如下: 當主機要往打印機輸出字符時,首先查詢打印機的忙信當主機要往打印機輸出字符時,首先查詢打印機的忙信號,如果打印機正在處理一個字符或者打印一行字符,忙信號,如果打印機正在處理一個

16、字符或者打印一行字符,忙信號為號為1 1;反之忙信號為;反之忙信號為0 0。當。當CPUCPU查詢到查詢到忙信號為忙信號為1 1時,時,則循環(huán)則循環(huán)等待,當?shù)却?,當忙信號為忙信號? 0,則通過則通過8255A8255A向打印機輸出一個字符。向打印機輸出一個字符。 數(shù)據(jù)信號:數(shù)據(jù)信號: CPUCPU將待打印的數(shù)據(jù)通過將待打印的數(shù)據(jù)通過8255A8255A送給打印機送給打印機狀態(tài)信號:狀態(tài)信號: 打印機的忙信號打印機的忙信號(BUSY)(BUSY)通過通過8255A8255A輸入給輸入給CPUCPU CPUCPU通過通過8255A8255A將數(shù)據(jù)準備好信號將數(shù)據(jù)準備好信號(STB)(STB)輸出

17、給打印機輸出給打印機例:例:8255A8255A作為作為打印機接口打印機接口8255A8255A端口工作方式選擇端口工作方式選擇 A A端口工作于方式端口工作于方式0 0,用于數(shù)據(jù)輸出,用于數(shù)據(jù)輸出 B B端口不用端口不用 C C端口工作于方式端口工作于方式0 0,PCPC2 2為為BUSYBUSY信號輸入端,故信號輸入端,故PCPC3 3PCPC0 0為輸入方式;為輸入方式;PCPC6 6為為STBSTB信號輸出端,故信號輸出端,故PCPC7 7 PCPC4 4為輸出方式為輸出方式 設打印字符在設打印字符在CLCL中,中,8255A8255A的端口地址為:的端口地址為: A A端口端口:00

18、D0H:00D0H B B端口端口:00D1H C:00D1H C端口端口:00D2H :00D2H 控制口控制口:00D3H:00D3H PP: MOV AL,81H PP: MOV AL,81H OUT 00D3H,AL OUT 00D3H,AL ;寫控制寄存器,設置各端口工作方式;寫控制寄存器,設置各端口工作方式 MOV AL,0DHMOV AL,0DH OUT 00D3H,AL OUT 00D3H,AL ;用;用C C端口置端口置0/0/置置1 1方式使方式使PCPC6 6為為1 1,即,即STBSTB高電平高電平LPS:LPS: IN AL,00D2H IN AL,00D2H ;讀取

19、;讀取C C端口的值端口的值 TEST AL,04H TEST AL,04H ;測試;測試PCPC2 2是否為是否為1 1,即,即BUSYBUSY信號是否為信號是否為1 1 JNZ LPS JNZ LPS ;不為;不為0 0,說明,說明BUSYBUSY信號為信號為1 1,循環(huán)等待,循環(huán)等待 MOV AL,CL MOV AL,CL ;將打印字符送將打印字符送ALAL OUT 00D0H,AL OUT 00D0H,AL ;如不忙,將;如不忙,將CLCL的內(nèi)容送端口的內(nèi)容送端口A A MOV AL,0CH MOV AL,0CH OUT 00D3H,AL OUT 00D3H,AL ;用;用C C端口置

20、端口置0/0/置置1 1方式使方式使PCPC6 6為為0 0,即,即STBSTB低電平低電平 ADD AL,1 ADD AL,1 ;將;將ALAL加加1 1 OUT 00D3H,AL OUT 00D3H,AL ;用;用C C端口置端口置0/0/置置1 1方式使方式使PCPC6 6為為1 1,即,即STBSTB高電平高電平 8255A8255A的工作方式的工作方式方式方式1 1v方式方式1 1稱為選通的輸入稱為選通的輸入/ /輸出方式輸出方式。和方式。和方式0 0相比最主要的差相比最主要的差別是別是A A端口和端口和B B端口用方式端口用方式1 1輸入輸出時,輸入輸出時, 端口端口C C配合配合

21、A A端口和端口和B B端口工作,端口工作,提供選通信號和聯(lián)絡信號,而這些信號與端口提供選通信號和聯(lián)絡信號,而這些信號與端口C C中的數(shù)位有固定的對應關系中的數(shù)位有固定的對應關系。v特點:特點:1)1)端口端口A A和端口和端口B B可以可以分別分別工作在方式工作在方式1 1,任何一個端口都,任何一個端口都可作可作為輸入端和輸出端為輸入端和輸出端。2)2)如果如果8255A8255A的的A A端口工作于方式端口工作于方式1 1,那么,那么C C端口就有端口就有3 3位位配合配合A A端端口工作,口工作,B B端口和端口和C C端口的剩下的端口的剩下的5 5位可以工作在方式位可以工作在方式0 0

22、即可以即可以作為輸出也可作為輸入;反之亦然。作為輸出也可作為輸入;反之亦然。3)3)如果如果A A端口和端口和B B端口都工作在方式端口都工作在方式1 1,那么,那么C C端口有端口有3 3位配合位配合A A端端口工作,有口工作,有3 3位配合位配合B B端口工作,剩下端口工作,剩下2 2位可作為輸入輸出。位可作為輸入輸出。v方式方式1 1使用場合主要是外設和使用場合主要是外設和CPUCPU使用不同的時序信號,工作使用不同的時序信號,工作在在異步方式異步方式下,接口需要傳遞應答信號和查詢外設的狀態(tài)。下,接口需要傳遞應答信號和查詢外設的狀態(tài)。8 82 25 55 5A A外外設設外外設設方式方式

23、1輸入輸入時信號的規(guī)定時信號的規(guī)定端口端口A端口端口B8位數(shù)據(jù)輸入位數(shù)據(jù)輸入8位數(shù)據(jù)輸入位數(shù)據(jù)輸入PCPC5 5PCPC4 4PCPC3 3PCPC2 2PCPC1 1PCPC0 0PCPC7 7PCPC6 6選通信號選通信號STB,STB,外設數(shù)據(jù)準備好外設數(shù)據(jù)準備好選通信號選通信號STB,STB,外設數(shù)據(jù)準備好外設數(shù)據(jù)準備好至至CPUCPU中斷請求信號輸出中斷請求信號輸出INTRINTRB B至至CPUCPU中斷請求信號輸出中斷請求信號輸出INTRINTRA A輸入緩沖區(qū)滿信號輸入緩沖區(qū)滿信號IBFIBFA A輸入緩沖區(qū)滿信號輸入緩沖區(qū)滿信號IBFIBFB B8 82 25 55 5A A

24、外外設設外外設設方式方式1輸出輸出時信號的規(guī)定時信號的規(guī)定端口端口A端口端口BPCPC5 5PCPC4 4PCPC2 2PCPC1 1PCPC0 0PCPC7 7PCPC6 6響應信號響應信號ACK,ACK,外設取得數(shù)據(jù)外設取得數(shù)據(jù)響應信號響應信號ACK,ACK,外設取得數(shù)據(jù)外設取得數(shù)據(jù)至至CPUCPU中斷請求信號輸出中斷請求信號輸出INTRINTRB B至至CPUCPU中斷請求信號輸出中斷請求信號輸出INTRINTRA A8位數(shù)據(jù)輸出位數(shù)據(jù)輸出8位數(shù)據(jù)輸出位數(shù)據(jù)輸出PCPC3 3輸出緩沖區(qū)滿信號輸出緩沖區(qū)滿信號OBFOBFA A輸出緩沖區(qū)滿信號輸出緩沖區(qū)滿信號OBFOBFA A8255A82

25、55A的工作方式的工作方式方式方式2 2v方式方式2 2也稱為雙向傳輸方式也稱為雙向傳輸方式。只有端口。只有端口A A能工作在該方式下。能工作在該方式下。外設可以通過外設可以通過8 8位數(shù)據(jù)線,即向位數(shù)據(jù)線,即向CPUCPU發(fā)送數(shù)據(jù),又從發(fā)送數(shù)據(jù),又從CPUCPU接收數(shù)接收數(shù)據(jù)。和方式據(jù)。和方式1 1相同,相同,端口端口C C的固定位的固定位提供控制和狀態(tài)信號。提供控制和狀態(tài)信號。v特點:特點:1)1)端口端口A A工作于方式工作于方式2 2時,時,C C端口的端口的PCPC3 3-PC-PC7 7共共5 5位數(shù)位分別提供位數(shù)位分別提供控制信號和狀態(tài)信號配合控制信號和狀態(tài)信號配合A A端口工作

26、。端口工作。2)2)端口端口A A工作于方式工作于方式2 2時,時,B B端口可以工作在方式端口可以工作在方式0 0的輸入輸出的輸入輸出下,端口下,端口C C的的PCPC0 0-PC-PC2 2共共3 3位可以工作在方式位可以工作在方式0 0的輸入輸出下;端的輸入輸出下;端口口B B也可以工作在方式也可以工作在方式1 1的輸入輸出下,端口的輸入輸出下,端口C C的的PCPC0 0-PC-PC2 2共共3 3位位配合配合B B端口工作。端口工作。v方式方式2 2的使用場合:如果一個外部設備即可以作為輸入設備的使用場合:如果一個外部設備即可以作為輸入設備也可以作為輸出設備,并且輸入輸出不會同時進行

27、,將該設也可以作為輸出設備,并且輸入輸出不會同時進行,將該設備連接在備連接在A A端口,并工作于方式端口,并工作于方式2 2非常合適(例如磁盤)。非常合適(例如磁盤)。8 82 25 55 5A A外外設設外外設設方式方式2中信號的規(guī)定中信號的規(guī)定端口端口A端口端口BPCPC2 2PCPC1 1PCPC0 0PCPC7 7PCPC6 6PCPC5 5PCPC4 4PCPC3 3響應信號響應信號ACK,ACK,外設取得數(shù)據(jù)外設取得數(shù)據(jù)至至CPUCPU中斷請求信號輸出中斷請求信號輸出INTRINTRA A8位數(shù)據(jù)輸入輸出位數(shù)據(jù)輸入輸出選通信號選通信號STB,STB,外設數(shù)據(jù)準備好外設數(shù)據(jù)準備好輸入

28、緩沖區(qū)滿信號輸入緩沖區(qū)滿信號IBFIBFA A輸出緩沖區(qū)滿信號輸出緩沖區(qū)滿信號OBFOBFA A8 82 25 55 5A A外外設設外外設設A端口:方式端口:方式2端口端口A端口端口BPCPC2 2PCPC1 1PCPC0 0PCPC7 7PCPC6 6PCPC5 5PCPC4 4PCPC3 38位數(shù)據(jù)輸入輸出位數(shù)據(jù)輸入輸出8位數(shù)據(jù)輸出位數(shù)據(jù)輸出響應信號響應信號ACK,ACK,外設取得數(shù)據(jù)外設取得數(shù)據(jù)至至CPUCPU中斷請求信號輸出中斷請求信號輸出INTRINTRB BB端口:方式端口:方式1輸出輸出響應信號響應信號ACK,ACK,外設取得數(shù)據(jù)外設取得數(shù)據(jù)至至CPUCPU中斷請求信號輸出中斷

29、請求信號輸出INTRINTRA A選通信號選通信號STB,STB,外設數(shù)據(jù)準備好外設數(shù)據(jù)準備好輸入緩沖區(qū)滿信號輸入緩沖區(qū)滿信號IBFIBFA A輸出緩沖區(qū)滿信號輸出緩沖區(qū)滿信號OBFOBFA A輸出緩沖區(qū)滿信號輸出緩沖區(qū)滿信號OBFOBFA Av8255A8255A作為作為非編碼鍵盤的接口非編碼鍵盤的接口 在有鍵按下時,與之對應列短接,形成通路,在有鍵按下時,與之對應列短接,形成通路,A A端口的對應位輸入為低端口的對應位輸入為低電平電平0 0,通過讀取,通過讀取A A端口的數(shù)據(jù)就能判別是哪個鍵按下端口的數(shù)據(jù)就能判別是哪個鍵按下( (閉合閉合) )。該方式的缺。該方式的缺點是占用的端口太多。點

30、是占用的端口太多。 9.2 8255A應用舉例應用舉例8255A鍵鍵0PA0PA1PA2PA3鍵鍵1鍵鍵2鍵鍵310k10k* *4 4+5V+5V第第0行行第第0列列10K+5V第第7行行第第7列列8 82 25 55 5A APA0PA0PA1PA1PA2PA2PA7PA7 PB0PB0PB1PB1PB2PB2PB7PB7v非編碼鍵盤的行掃描法識別按鍵非編碼鍵盤的行掃描法識別按鍵v鍵盤掃描程序鍵盤掃描程序第一步:判斷有無按鍵按下第一步:判斷有無按鍵按下 使使A A端口輸出端口輸出00H00H,讀入,讀入B B端口的數(shù)據(jù),如果是端口的數(shù)據(jù),如果是FFHFFH,則沒有,則沒有按鍵按下,繼續(xù)第一

31、步。否則進行第二步。按鍵按下,繼續(xù)第一步。否則進行第二步。第二步:行掃描法識別按鍵第二步:行掃描法識別按鍵(1 1)使)使A A端口的端口的PA0PA0輸出低電平,其余為高電平。輸出低電平,其余為高電平。(2 2)觀察列線的狀態(tài)。)觀察列線的狀態(tài)。(3 3)如果某條列線變?yōu)榈碗娖剑瑒t第)如果某條列線變?yōu)榈碗娖?,則第0 0行與該列相交位置上的行與該列相交位置上的鍵被按下;否則第鍵被按下;否則第0 0行沒有鍵按下。行沒有鍵按下。(4 4)使)使PA1PA1輸出低電平,其余為高電平。輸出低電平,其余為高電平。(5 5)觀察列線的狀態(tài)判斷是否有鍵按下。)觀察列線的狀態(tài)判斷是否有鍵按下。(6 6)如此逐

32、行掃描下去,直到最后一行。)如此逐行掃描下去,直到最后一行。 通過分析可知,通過分析可知,8255A8255A的端口的端口A A工作在方式工作在方式0 0的輸出,端口的輸出,端口B B工作在方式工作在方式0 0的輸入,端口的輸入,端口C C不用。不用。8255A8255A端口的地址如下:端口的地址如下: A A端口:端口:0FFF8H B0FFF8H B端口:端口:0FFF9H C0FFF9H C端口:端口:0FFFAH 0FFFAH 控制口:控制口:0FFFBH0FFFBH82558255的初始化及檢測有無按鍵按下:的初始化及檢測有無按鍵按下: PORTA EQU 0FFF8H PORTA

33、EQU 0FFF8H PORTB EQU 0FFF9H PORTB EQU 0FFF9H PORTC EQU 0FFFAH PORTC EQU 0FFFAH PORTCN EQU 0FFFBH PORTCN EQU 0FFFBH MOV DX MOV DX,PORTCN PORTCN ;置;置8255A8255A端口端口A A、B B工作在方式工作在方式 0 0 MOV AL MOV AL,10000011B 10000011B ;端口;端口A A為輸出口,端口為輸入口為輸出口,端口為輸入口 OUT DX OUT DX,ALALWAITKWAITK:MOV DXMOV DX,PORTAPORT

34、A MOV ALMOV AL,0000 OUT DX OUT DX,AL AL ;行碼送全;行碼送全“0”0” MOV DX MOV DX,PORTB PORTB ;讀列碼;讀列碼 IN ALIN AL,DXDX CMP AL CMP AL,0FFH0FFH JZ WAITK JZ WAITK ;無鍵按下,繼續(xù)等待;無鍵按下,繼續(xù)等待 行掃描法識別按鍵行掃描法識別按鍵 MOV CX MOV CX,8 8 ;掃描次數(shù);掃描次數(shù) MOV BL MOV BL,0 0 ;送按鍵初值;送按鍵初值 MOV BHMOV BH,11111110B 11111110B ;置初始掃描模式行碼送;置初始掃描模式行碼

35、送FEHFEHFNDROWFNDROW: MOV ALMOV AL,BH BH ;送行碼;送行碼 MOV DXMOV DX,PORTAPORTA OUT DX OUT DX,ALAL MOV DX MOV DX,PORTB PORTB ;讀列碼;讀列碼 IN ALIN AL,DXDX CMP AL CMP AL,0FFH0FFH JNZ FNDCOL JNZ FNDCOL ;該行有鍵按下,查列號;該行有鍵按下,查列號 ADD BLADD BL,8 8 ;該行無鍵按下,送下一行鍵號初值;該行無鍵按下,送下一行鍵號初值 ROL BH ROL BH,1 1 ;修改行碼;修改行碼 LOOP FNDROW LOOP FNDROW ;8 8行掃描未完

溫馨提示

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

評論

0/150

提交評論