并行通信接口課件_第1頁(yè)
并行通信接口課件_第2頁(yè)
并行通信接口課件_第3頁(yè)
并行通信接口課件_第4頁(yè)
并行通信接口課件_第5頁(yè)
已閱讀5頁(yè),還剩29頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1

并行通信接口28.1概述

并行通訊就是將一個(gè)字符的8位用8根線來(lái)傳輸,速度快,線路成本增加,適合外設(shè)與微機(jī)之間通訊、主板各部件之間近距離通訊。能夠?qū)崿F(xiàn)并行通訊的接口就是并行接口。8.1.1典型的雙向并行接口與外設(shè)連接

1.并行接口與CPU的連接,見(jiàn)圖8.1

。

(1)數(shù)據(jù)總線:是CPU與并行接口進(jìn)行數(shù)據(jù)交換的通道。

(2)讀出寫入信號(hào)線:控制數(shù)據(jù)流向,確定操作是讀還是寫。

(3)復(fù)位線、準(zhǔn)備好狀態(tài)線:并行接口數(shù)據(jù)準(zhǔn)備就緒。

(4)中斷請(qǐng)求線:并行接口向CPU進(jìn)行中斷請(qǐng)求。

(5)地址譯碼電路:進(jìn)行選擇不同的接口電路,選擇接口電路內(nèi)部不同的寄存器。

32.并行接口與外設(shè)的連接,

見(jiàn)圖8.1。(1)輸入設(shè)備:數(shù)據(jù)輸入線、設(shè)備數(shù)據(jù)準(zhǔn)備就緒狀態(tài)線和接口接收數(shù)據(jù)回答線。(2)輸出設(shè)備:數(shù)據(jù)輸出線、接口數(shù)據(jù)準(zhǔn)備就緒狀態(tài)線和外設(shè)接收數(shù)據(jù)回答線。

3.并行接口(1)控制寄存器:接收CPU發(fā)來(lái)的控制命令。(2)數(shù)據(jù)輸入緩沖器、數(shù)據(jù)輸出緩沖器:進(jìn)行數(shù)據(jù)的輸入、輸出。(3)狀態(tài)寄存器:提供接口電路工作狀態(tài)供CPU查詢。48.1.2并行接口的工作原理

1.并行接口輸入數(shù)據(jù)的過(guò)程外設(shè)將數(shù)據(jù)送到“數(shù)據(jù)輸入線”,通過(guò)“輸入數(shù)據(jù)準(zhǔn)備好”狀態(tài)線通知并行接口取走,接口將數(shù)據(jù)鎖存到“輸入緩沖器”,通過(guò)“數(shù)據(jù)輸入回答”線通知外設(shè),接口數(shù)據(jù)緩沖器已滿,不要再送數(shù)據(jù),接口在其內(nèi)“狀態(tài)寄存器”的相應(yīng)位置1,便于CPU查詢和接口向CPU發(fā)中斷請(qǐng)求之用。

CPU從接口將數(shù)據(jù)取走后,接口將“數(shù)據(jù)輸入準(zhǔn)備好”、“數(shù)據(jù)輸入回答”信號(hào)清除,以便外設(shè)輸入下一個(gè)數(shù)據(jù)。

2.并行接口輸出數(shù)據(jù)的過(guò)程接口“數(shù)據(jù)輸出緩沖器”空,“數(shù)據(jù)輸出準(zhǔn)備好”狀態(tài)線送1,收到CPU發(fā)的數(shù)據(jù),將之復(fù)位清0,數(shù)據(jù)通過(guò)“數(shù)據(jù)輸出”線送外設(shè),由“數(shù)據(jù)輸出準(zhǔn)備好”線通知外設(shè)取數(shù)據(jù)。外設(shè)取走數(shù)據(jù),將“數(shù)據(jù)輸出準(zhǔn)備好”信號(hào)線置1,以便CPU輸出下一個(gè)數(shù)據(jù)。5一般地并行接口有3個(gè)方面的功能:

(1)實(shí)現(xiàn)與系統(tǒng)總線的連接:提供數(shù)據(jù)的輸入輸出功能。

(2)實(shí)現(xiàn)與外設(shè)連接:確保與外設(shè)間有效進(jìn)行數(shù)據(jù)的接收和發(fā)送。

(3)具有中斷請(qǐng)求處理功能:外設(shè)輸入輸出采用中斷的方法來(lái)實(shí)現(xiàn)。8.1.3并行接口的功能

返回本章目錄68.2可編程的并行接口芯片8255A

8.2.1并行接口8255A的內(nèi)部結(jié)構(gòu)

8255A由數(shù)據(jù)總線緩沖器、讀寫控制邏輯、A組B組控制邏輯、并行輸入輸出端口等4個(gè)部分組成,見(jiàn)圖8.2。

1.數(shù)據(jù)總線緩沖器雙向三態(tài)的8位數(shù)據(jù)緩沖器,是8255A與CPU之間的數(shù)據(jù)接口,用于傳送控制命令和傳送數(shù)據(jù)。

2.讀寫控制邏輯接收CPU的A0、A1、、和RESET引腳發(fā)來(lái)的控制命令,并向A組B組控制部件發(fā)送控制。

3.A組B組控制部件

A組控制部件用來(lái)控制端口PA及端口PC的高4位PC4-PC7。B組控制部件控制端口PB及端口PC的低4位PC0-PC3,控制電路根據(jù)CPU發(fā)來(lái)的控制字,確定各端口的工作方式進(jìn)行讀寫操作。7

4.并行輸入輸出端口,見(jiàn)圖8.2。

8255A內(nèi)部有3個(gè)8位并行端口:A、B和C端口,均可獨(dú)立地作為輸入、輸出信息的端口,對(duì)CPU與外設(shè)交換的數(shù)據(jù)進(jìn)行緩存或鎖存。

(1)端口PA:內(nèi)有1個(gè)8位的“數(shù)據(jù)輸入鎖存器”和1個(gè)8位的“數(shù)據(jù)輸出鎖存/緩沖器”。

(2)端口PB:內(nèi)有1個(gè)8位的“數(shù)據(jù)輸入鎖存器”和1個(gè)8位的“數(shù)據(jù)輸入、輸出鎖存/緩沖器”。(3)端口PC:內(nèi)有1個(gè)8位的“數(shù)據(jù)輸入鎖存器”和1個(gè)8位的“數(shù)據(jù)輸出鎖存/緩沖器”。

PA、PB作為數(shù)據(jù)的輸入、輸出端口,端口PC作為控制或狀態(tài)信息端口。在方式控制字下,PC可分高4位、低4位來(lái)使用,高4位PC4-PC7與端口PA配合使用,而低4位PC0-PC3與端口PB配合使用,作為輸出控制信號(hào)或輸入狀態(tài)信號(hào)。88255A有40根引腳,與外設(shè)連接24根,與CPU連接16根,見(jiàn)圖8.3。

1.8255A與外設(shè)相連的引腳,共24根分3組(1)A端口PA0-PA7:8根可設(shè)定為輸入或者輸出方式,也可設(shè)定為輸入/輸出雙向方式,通常作為輸入端口。

(2)B端口PB0-PB7:8根可設(shè)定為輸入或者輸出方式,也可設(shè)定為輸入/輸出雙向方式,通常作為輸出端口。

(3)C端口PC0-PC7:8根可設(shè)定為輸入或者輸出方式,也可設(shè)定為輸入/輸出雙向方式,常用作為輸出端口和控制端口來(lái)配合A端口、B端口工作。8.2.2并行接口8255A芯片引腳

92.8255A與CPU相連的16根引腳,見(jiàn)圖8.3。

(1)數(shù)據(jù)總線D0-D7:CPU與8255A間傳送數(shù)據(jù)、命令和控制字。

(2)地線GND:1根。

(3)電源線VCC:接+5V電源。

(4)RESET復(fù)位線:高電平時(shí)有效時(shí),將8255A的控制寄存器、A端口、B端口和C端口所設(shè)置的工作方式清0。

(5)片選信號(hào)線:低電平有效時(shí)選中8255A。

(6)讀信號(hào)線:低電平有效時(shí)8255A處于讀信息的狀態(tài)。

(7)寫信號(hào)線:低電平有效時(shí)8255A處于寫信息的狀態(tài)。

(8)地址線A0、A1:A0、A1的編碼與、、引腳電平的組合,形成對(duì)8255A的基本讀寫操作,見(jiàn)表8.1。108255A可編程并行接口芯片,用指令方式初始化,決定端口是輸入方式還是輸出方式。其工作狀態(tài)、工作方式通過(guò)向控制端口寫入控制字完成??刂谱钟袃深悾篈、B、C工作方式選擇字和C按位設(shè)置“0”或“1”。

1.工作方式選擇字設(shè)置8255A的A、B、C這3個(gè)端口數(shù)據(jù)傳輸方向是輸入/輸出,工作方式有3種:方式0、方式1和方式2,A口可以3種方式中的任一種,B口能工作在方式0、方式1這2種,C口只能工作在方式0。常將3個(gè)端口分2組設(shè)定,A與C的高4位為A組,B與C的低4位為B組。

8.2.3并行接口8255A的控制字

11

控制字格式,見(jiàn)圖8.4。(1)D0是C口低4位輸入/輸出控制位:D0=0時(shí),PC0-PC3用于輸出數(shù)據(jù),D0=1時(shí),PC0-PC3用于輸入數(shù)據(jù)。(2)D1是B口輸入/輸出控制位:D1=0時(shí),PB0-PB7用于輸出數(shù)據(jù),D1=1時(shí),PB0-PB7用于輸入數(shù)據(jù)。(3)D2B組方式選擇位:D2=0時(shí),為方式0,D2=1時(shí),為方式1。(4)D3是C口高4位輸入/輸出控制位:D3=0時(shí),PC4-PC7用于輸出數(shù)據(jù),D3=1時(shí),PC4-PC7用于輸入數(shù)據(jù)。

(5)D4A口輸入/輸出控制位:D4=0時(shí),PA0-PA7用于輸出數(shù)據(jù),D4=1時(shí),PA0-PA7用于輸入數(shù)據(jù)。

(6)D6、D5為A組方式選擇位:D6D5=00時(shí),A組設(shè)為方式0,D6D5=01時(shí),A組設(shè)為方式1,D6D5=1×?xí)r,A組設(shè)為方式2。

(7)D7控制字標(biāo)志位:D7=0為方式控制字,D7=1為C口控制字。

12

例如:端口地址為04A0H-04A6H的8255A并行接口,A口設(shè)為輸出數(shù)據(jù),工作方式0,B口設(shè)為輸入數(shù)據(jù),工作方式1,C口高4位輸入,低4位輸出,進(jìn)行初始化。程序段為:

MOVDX,04A6H;控制端口地址

MOVAL,8EH;工作方式控制字8EH=10001110B

OUTDX,AL;控制字送控制口,對(duì)照?qǐng)D8.4格式來(lái)讀132.C口置“0/1”控制字

C的各位常作控制位,用置“0/1”控制字設(shè)置,見(jiàn)圖8.5。

(1)D0置“0/1”控制位:D0=0時(shí),使C口的D3D2D1編碼位清“0”復(fù)位,D0=1時(shí),使C口的D3D2D1編碼位設(shè)置“1”,如D7=0(控制字的特征位),D3D2D1=010即對(duì)第2位設(shè)置,D0=1,則PC2置“1”。

(2)D3D2D1用于控制PC0-PC7某位置“0/1”:D3D2D1編碼為操作的位編號(hào),如D3D2D1=101,則對(duì)第5位PC5進(jìn)行置“0/1”操作。

(3)D6D5D4位:不影響置字操作,0、1均可。

(4)D7控制字的特征位:D7=0時(shí)才有效。

14

而對(duì)C口的置“0/1”操作,其控制字寫入“控制寄存器”。例如:8255A控制器端口地址為00EEH,對(duì)C口進(jìn)行操作,將PC6位置“1”,PC2位置“0”。程序段為:

MOVDX,00EEH;控制端口地址

MOVAL,07H

;PC6置“1”,7H=00001101B

OUTDX,AL

;控制字送控制端口,對(duì)照?qǐng)D8.5

MOVAL,05H;PC2置“0”,5H=00000101B

OUTDX,AL;進(jìn)行設(shè)置15實(shí)例:端口地址00EEH的8255A,使C口的PC1位產(chǎn)生一個(gè)脈沖。對(duì)照?qǐng)D8.5。程序段為:MOVDX,00EEH

;控制端口地址MOVAL,02H

;對(duì)PC1位置“0”O(jiān)UTDX,AL

;控制字送到控制端口MOVAL,03H

;PC1置“1”O(jiān)UTDX,ALCALLDELAY

;調(diào)用延時(shí)子程序MOVAL,02H

;對(duì)PC1位置“0”O(jiān)UTDX,AL16A端口能工作在方式0、方式1和方式2中的任一種,B端口能工作在方式0、方式1兩種,C口只能工作在方式0。

1.方式0:基本輸入輸出方式任何一個(gè)端口可以作為輸入端口,也可作為輸出端口,各個(gè)端口之間沒(méi)有必然的聯(lián)系。端口A、端口B與端口C的高4位端口和低4位端口,它們的輸入、輸出,可以有16種不同的組合,適用于多種場(chǎng)合使用;

2.方式1:選通的輸入輸出方式

A端口、B端口作數(shù)據(jù)傳輸口,通過(guò)工作方式控制字來(lái)設(shè)定輸入數(shù)據(jù)或者輸出數(shù)據(jù),方式1適用于查詢方式、中斷方式來(lái)進(jìn)行數(shù)據(jù)傳輸。C端口用作控制用,配合A端口、B端口進(jìn)行數(shù)據(jù)傳輸,有2種情況:

8.2.4并行接口8255A的工作方式17

(1)方式1的輸入方式

C端口配合A端口、B端口輸入數(shù)據(jù),為它們各規(guī)定3條線作為外設(shè)和CPU之間的應(yīng)答信號(hào)線。見(jiàn)圖8.6。

1)

(PC2、PC4)選通輸入:低電平有效,PC4對(duì)應(yīng)A口、PC2對(duì)應(yīng)B口,輸入有效低電平時(shí),將外設(shè)輸入的數(shù)據(jù)送到數(shù)據(jù)鎖存器。

2)

IBF(PC1、PC5)輸入緩沖滿:高電平有效,PC5對(duì)應(yīng)A口、PC1對(duì)應(yīng)B口,IBF=1時(shí)緩沖滿,外設(shè)不應(yīng)送數(shù)據(jù);IBF=0時(shí)緩沖空,外設(shè)可以送數(shù)據(jù)。

3)

INTR(PC0、PC3)中斷請(qǐng)求:高電平有效,PC3對(duì)應(yīng)A口、PC0對(duì)應(yīng)B口,INTR=1時(shí),產(chǎn)生一個(gè)高電平的中斷請(qǐng)求給CPU,要求CPU取走外設(shè)輸入的數(shù)據(jù)。

4)

INTE中斷屏蔽信號(hào):INTE=1時(shí),A端口、B端口允許申請(qǐng)中斷;INTE=0時(shí),A端口、B端口禁止申請(qǐng)中斷。PC4是A端口允許申請(qǐng)中斷控制信號(hào),PC2是B端口允許申請(qǐng)中斷控制信號(hào)。

C端口的PC6、PC7未用于控制,可用于數(shù)據(jù)輸入輸出,由方式控制字D3位決定,且具有置位功能。18

(2)方式1的輸出方式

C端口配合A端口、B端口輸入數(shù)據(jù),為它們各規(guī)定3條線作為外設(shè)和CPU之間的應(yīng)答信號(hào)線,見(jiàn)圖8.7。

1)

(PC1、PC7)外設(shè)應(yīng)答信號(hào):PC7對(duì)應(yīng)A口、PC1對(duì)應(yīng)B口,輸出有效低電平時(shí),表示8255A端口的數(shù)據(jù)已經(jīng)被外設(shè)取走。

2)

(PC2、PC6)輸出緩沖器裝滿信號(hào):PC6對(duì)應(yīng)A口、PC2對(duì)應(yīng)B口,輸入有效低電平時(shí),CPU將數(shù)據(jù)輸入到8255A的端口,外設(shè)可以來(lái)取數(shù)據(jù)。

3)

INTR(PC0、PC3)中斷請(qǐng)求信號(hào):PC3對(duì)應(yīng)A口、PC0對(duì)應(yīng)B口,INTR=1時(shí),允許中斷請(qǐng)求,此時(shí),輸出緩沖器為空,=1,向CPU發(fā)一高電平中斷請(qǐng)求,CPU可繼續(xù)向輸出緩沖器輸入數(shù)據(jù)。

19

見(jiàn)圖8.7

4)

INTE中斷屏蔽信號(hào):高電平有效,INTE=1時(shí),A端口、B端口允許申請(qǐng)中斷,INTE=0時(shí),A、B端口禁止申請(qǐng)中斷,PC6是A端口允許申請(qǐng)中斷控制信號(hào),PC2是B端口允許申請(qǐng)中斷控制信號(hào)。在方式1輸出方式中,C端口的PC4、PC5未用于控制,可用于數(shù)據(jù)輸入輸出,由方式控制字D3位決定,且具有置位功能。20

3.方式2:雙向傳送方式可作為輸入又可作為輸出的設(shè)備,A口可采用方式2,8根數(shù)據(jù)線與CPU之間進(jìn)行分時(shí)數(shù)據(jù)輸入/輸出,工作時(shí)采用查詢方式,可采用中斷方式,此時(shí),B口工作在方式0或方式1,C口的PC3-PC7作為控制的狀態(tài)信號(hào)線,見(jiàn)圖8.8。

(1)(PC7)輸出緩沖器滿信號(hào):輸出低電平表示輸出緩沖器滿。

(2)(PC6)外設(shè)接收到數(shù)據(jù)應(yīng)答信號(hào):輸出有效低電平表示外設(shè)接收到數(shù)據(jù)。

(3)(PC4)外設(shè)輸入選通信號(hào):輸入有效低電平時(shí)表示8255A接收一個(gè)從外設(shè)輸入的數(shù)據(jù),將數(shù)據(jù)鎖存在“輸入鎖存器”中。

21

見(jiàn)圖8.8

(4)IFBA(PC7)輸入緩沖器滿信號(hào):高電平有效時(shí),表示有一個(gè)數(shù)據(jù)已經(jīng)裝入“緩沖器”。

(5)INTRA信號(hào):在輸入時(shí),輸入緩沖器滿,且當(dāng)INTE1=1時(shí),INTRA向CPU發(fā)一個(gè)中斷請(qǐng)求;在輸出時(shí),輸出緩沖器空,且當(dāng)INTE2=1時(shí),INTRA向CPU發(fā)一個(gè)中斷請(qǐng)求。中斷允許觸發(fā)器INTE1,由C口的PC6來(lái)置“0/1”,中斷允許觸發(fā)器INTE2,由C口的PC4來(lái)置“0/1”。返回本章目錄228.3并行接口8255A應(yīng)用舉例

并行接口8255A的應(yīng)用于打印機(jī)接口,與打印機(jī)相連,連接見(jiàn)圖8.9。以方式0工作,打印機(jī)接口在低電平有效時(shí),表示打印機(jī)“空閑”,接收數(shù)據(jù),在BUSY高電平有效時(shí),表示打印機(jī)“很忙”,不能接收數(shù)據(jù),需打印的數(shù)據(jù)存放在內(nèi)存BUF區(qū)域。C口按位“置位/復(fù)位”控制字用來(lái)產(chǎn)生打印機(jī)控制信號(hào),控制打印機(jī)的“啟動(dòng)/停止”,打印程序?yàn)椋?/p>

DATASEGMENTBUFDB“HOWAREYOU!”,”$”DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATA23MOVDS,AXMOVSI,OFFSETBUF;打印信息的偏移地址

MOVAL,88H;88H=10001000BMOVDX,63H;A口方式0,C口上半部輸入

OUTDX,AL;8255A初始化

MOVAL,01H

溫馨提示

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

評(píng)論

0/150

提交評(píng)論