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

下載本文檔

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

文檔簡介

1

并行通信接口28.1概述

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

1.并行接口與CPU的連接,見圖8.1

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

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

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

(4)中斷請求線:并行接口向CPU進行中斷請求。

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

32.并行接口與外設的連接,

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

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

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

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

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

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

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

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

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

8.2.1并行接口8255A的內部結構

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

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

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

3.A組B組控制部件

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

4.并行輸入輸出端口,見圖8.2。

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

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

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

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

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

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

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

92.8255A與CPU相連的16根引腳,見圖8.3。

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

(2)地線GND:1根。

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

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

(5)片選信號線:低電平有效時選中8255A。

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

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

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

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

8.2.3并行接口8255A的控制字

11

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

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

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

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

12

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

MOVDX,04A6H;控制端口地址

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

OUTDX,AL;控制字送控制口,對照圖8.4格式來讀132.C口置“0/1”控制字

C的各位常作控制位,用置“0/1”控制字設置,見圖8.5。

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

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

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

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

14

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

MOVDX,00EEH;控制端口地址

MOVAL,07H

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

OUTDX,AL

;控制字送控制端口,對照圖8.5

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

OUTDX,AL;進行設置15實例:端口地址00EEH的8255A,使C口的PC1位產生一個脈沖。對照圖8.5。程序段為:MOVDX,00EEH

;控制端口地址MOVAL,02H

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

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

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

;調用延時子程序MOVAL,02H

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

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

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

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

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

(1)方式1的輸入方式

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

1)

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

2)

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

3)

INTR(PC0、PC3)中斷請求:高電平有效,PC3對應A口、PC0對應B口,INTR=1時,產生一個高電平的中斷請求給CPU,要求CPU取走外設輸入的數(shù)據(jù)。

4)

INTE中斷屏蔽信號:INTE=1時,A端口、B端口允許申請中斷;INTE=0時,A端口、B端口禁止申請中斷。PC4是A端口允許申請中斷控制信號,PC2是B端口允許申請中斷控制信號。

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

(2)方式1的輸出方式

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

1)

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

2)

(PC2、PC6)輸出緩沖器裝滿信號:PC6對應A口、PC2對應B口,輸入有效低電平時,CPU將數(shù)據(jù)輸入到8255A的端口,外設可以來取數(shù)據(jù)。

3)

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

19

見圖8.7

4)

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

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

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

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

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

21

見圖8.8

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

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

并行接口8255A的應用于打印機接口,與打印機相連,連接見圖8.9。以方式0工作,打印機接口在低電平有效時,表示打印機“空閑”,接收數(shù)據(jù),在BUSY高電平有效時,表示打印機“很忙”,不能接收數(shù)據(jù),需打印的數(shù)據(jù)存放在內存BUF區(qū)域。C口按位“置位/復位”控制字用來產生打印機控制信號,控制打印機的“啟動/停止”,打印程序為:

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

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

OUTDX,AL;8255A初始化

MOVAL,01H

溫馨提示

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

評論

0/150

提交評論