版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
並行輸入/輸出介面第一節並行介面的基本概念一、並行通信和串行通信二、並行介面概述一、並行通信和串行通信
通信指電腦與外設、電腦與電腦間的資訊交換
通信的基本方法:並行通信和串行通信數據的各位同時由源到達目的地→
快多根數據線→
距離短、遠程費用高
並行通信將數據的各位同時在多根並行傳輸線上進行傳輸。01010110
D0D1D2D3D4D5D6D7目的D0D1D2D3D4D5D6D7源並行通信適於短距離、高速通信數據的各位依次由源到達目的地→慢數據線少→遠程,費用低
串行通信
將數據的各位按時間順序依次在一根傳輸線上傳輸。
01101010
RD目的TD源串行通信適於長距離、中低速通信
並行介面的典型硬體結構包括:1、一個或一個以上具有鎖存或緩衝的數據端口2、與CPU進行數據交換所必須的控制和狀態信號3、與外設進行數據交換所必須的控制和狀態信號4、端口譯碼電路5、控制電路二、並行介面概述
並行介面連接CPU與並行外設,實現兩者間的並行通信,在資訊傳送過程中,起到輸出鎖存或輸入緩衝的作用。不可編程並行介面和可編程並行介面
不可編程並行介面的工作方式和功能:
是由硬體接線決定,不能用軟體來控制。
可編程並行介面的工作方式和功能:
可用軟體編程的方法改變,使介面具有更大的靈活性和通用性。一般情況下不交叉使用,因為:只有本系列的晶片才能更好地保證時序上的配合,和各種功能的發揮,使CPU可靠與外設交換資訊。
在並行介面晶片中,不同的產品系列研製出與之相匹配的介面晶片。例在80X86系列中使用8255A晶片在Z80系列中使用Z80-PIO晶片在6800系列中使用MC6820PIA晶片第二節可編程並行介面8255A一、8255A的引腳、編程結構二、8255A的控制字三、8255A三種工作方式四、8255A的應用舉例一、8255A引腳、編程結構(參看教材P275)Intel系列的8位並行介面晶片通用性強,使用靈活可用程式設置和改變晶片的工作方式是一種典型的可編程並行介面晶片8255APA3PA2PA1PA0RDCSGNDA1A0PC7PC6PC5PC4PC3PC2PC1PC0PB0PB1PB2PA4PA5PA6PA7WRRESETD0D1D2D3D4D5D6D7VccPB7PB6PB5PB4PB340個引腳,雙列直插式resetD7~D0A9~A2A1A0IORIOW片選解碼數據緩衝器讀寫控制片內解碼CSRESETA1A0RDWRPC7~PC0PB7~PB0PA7~PA0控制口D端口A端口C端口B+5VGNDD7~D0外設8255A匯流排舊教材P275,新教材P285圖7-181.數據端口A、B、C
每個端口8位,通過編程設定其為輸入口或輸出口可用來和外設傳送資訊resetD7~D0A9~A2A1A0IORIOW片選解碼數據緩衝器讀寫控制片內解碼CSRESETA1A0RDWRPC7~PC0PB7~PB0PA7~PA0控制口D端口A端口C端口B+5VGNDD7~D0外設8255A匯流排
端口A有3種工作方式(方式0、方式1、方式2)對外8根引腳PA7~PA0
resetD7~D0A9~A2A1A0IORIOW片選解碼數據緩衝器讀寫控制片內解碼CSRESETA1A0RDWRPC7~PC0PB7~PB0PA7~PA0控制口D端口A端口C端口B+5VGNDD7~D0外設8255A匯流排端口B
有2種工作方式:方式0、方式1對外8根引腳PB7~PB0resetD7~D0A9~A2A1A0IORIOW片選解碼數據緩衝器讀寫控制片內解碼CSRESETA1A0RDWRPC7~PC0PB7~PB0PA7~PA0控制口D端口A端口C端口B+5VGNDD7~D0外設8255A匯流排
端口C對外引腳PC0~PC7resetD7~D0A9~A2A1A0IORIOW片選解碼數據緩衝器讀寫控制片內解碼CSRESETA1A0RDWRPC7~PC0PB7~PB0PA7~PA0控制口D端口A端口C端口B+5VGNDD7~D0外設8255A匯流排
當端口A在方式1或方式2、端口B在方式1時,端口C的某些位用於傳送聯絡信號,以適應CPU與外設間的各種數據傳送方式的要求,如查詢傳送的應答信號、中斷傳送的中斷申請信號等;
C口未被用作聯絡信號的其他位可工作在方式0下。resetD7~D0A9~A2A1A0IORIOW片選解碼數據緩衝器讀寫控制片內解碼CSRESETA1A0RDWRPC7~PC0PB7~PB0PA7~PA0控制口D端口A端口C端口B+5VGNDD7~D0外設2.控制端口D(A組和B組控制電路)8位端口,無對外引腳控制端口的內容決定A口、B口、C口的工作狀態(輸入或輸出)
和工作方式(方式0、1、2),起控制作用。resetD7~D0A9~A2A1A0IORIOW片選解碼數據緩衝器讀寫控制片內解碼CSRESETA1A0RDWRPC7~PC0PB7~PB0PA7~PA0控制口D端口A端口C端口B+5VGNDD7~D0外設由1個8位雙向三態緩衝器構成8255A內各端口通過數據緩衝器與系統匯流排相連。
CPU與端口A、B、C間傳送的數據,以及CPU寫入控制端口D中的控制字均通過數據緩衝器傳送。3.數據匯流排緩衝器(引腳D0~D7)resetD7~D0A9~A2A1A0IORIOW片選解碼數據緩衝器讀寫控制片內解碼CSRESETA1A0RDWRPC7~PC0PB7~PB0PA7~PA0控制口D端口A端口C端口B+5VGNDD7~D0外設4.讀寫控制電路(引腳CS、RD、WR)控制數據匯流排緩衝器的狀態。數據匯流排緩衝器有3種狀態:輸入、輸出、高阻態resetD7~D0A9~A2A1A0IORIOW片選解碼數據緩衝器讀寫控制片內解碼CSRESETA1A0RDWRPC7~PC0PB7~PB0PA7~PA0控制口D端口A端口C端口B+5VGNDD7~D0外設resetD7~D0A9~A2A1A0IORIOW片選解碼數據緩衝器讀寫控制片內解碼RESETA1A0PC7PC0PB7PB0控制口D端口A端口C端口B+5VGNDD7~D0外設RDWRCSPA7PA0選擇被操作的端口5.片內解碼電路(引腳A1、A0)resetD7~D0A9~A2A1A0IORIOW片選解碼數據緩衝器讀寫控制片內解碼CSRESETA1A0RDWRPC7~PC0PB7~PB0PA7~PA0控制口D端口A端口C端口B+5VGNDD7~D0外設resetD7~D0A9~A2A1A0IORIOW片選解碼數據緩衝器讀寫控制片內解碼RESETA1A0PC7PC0PB7PB0控制口D端口A端口C端口B+5VGNDD7~D0外設RDWRCSPA7PA0由CS、A1、A0、RD、WR引腳的不同組合,實現各種不同的功能。
(教材表7-2)1.方式控制字(舊P278圖7-16,新P288表7-4)2.C口按位置位/複位控制字(舊P278圖7-18,新P288表7-5)二、8255A的控制字8255A控制口D的內容對數據端口A、B、C起控制作用,故稱為8255A的控制字。resetD7~D0A9~A2A1A0IORIOW片選解碼數據緩衝器讀寫控制片內解碼CSRESETA1A0RDWRPC7~PC0PB7~PB0PA7~PA0控制口D端口A端口C端口B+5VGNDD7~D0外設
通過編程向控制口寫入不同的控制字,可靈活的改變端口A、B、C的工作狀態和工作方式。例假設8255A控制端口的地址為Port_Ctrl,8255A控制口的內容為CtrlData
設置控制字的程式段如下:
MOVDX,Port_Ctrl;置DX為控制口地址
MOVAL,CtrlData;置控制字於AL中
OUTDX,AL;將控制字寫入控制口8255A有兩種控制字,由寫入內容的D7位區分:D7=1,方式控制字設定A口、B口、C口的工作狀態和工作方式。工作狀態:輸入或輸出工作方式:方式0、方式1、方式2D7=0,C口按位置位/複位控制字使C口中的某一位為1(置位)或0(複位)。1.方式控制字設定A口、B口、C口的工作狀態和工作方式。工作狀態:輸入或輸出工作方式:方式0、方式1、方式2resetD7~D0A9~A2A1A0IORIOW片選解碼數據緩衝器讀寫控制片內解碼CSRESETA1A0RDWRPC7~PC0PB7~PB0PA7~PA0控制口D端口A端口C端口B+5VGNDD7~D0外設B口0輸出1輸入0方式01方式11D7D6D5D4D3D2D1D0特徵位,D7=1表示是方式控制字PC3~PC00
輸出1輸入B口工作方式PC7~PC40輸出1輸入A口0輸出1輸入A口工作方式00方式001方式11x方式2方式控制字各位含義例
8255A與系統的連線如下,片選解碼地址為F0~F3h1)確定各端口地址;2)編程設置8255A:A口方式0輸入,PC7~PC4輸出
B口方式0輸出,PC3~PC0輸入resetD7~D0A9~A2A1A0IORIOW片選解碼數據緩衝器讀寫控制片內解碼RESETA1A0PC7PC0PB7PB0控制口D端口A端口C端口B+5VGNDD7~D0外設RDWRCSPA7PA0F0~F3h最後得出結論:
A口地址為F0H
B口地址為F1H
C口地址為F2H
D口地址為F3H1)確定端口地址由8255A編程結構知:由8255A的CS與系統匯流排的連線知,
地址在F0~F3h可使CS有效,故:4個端口的地址在F0~F3h中。結合8255A與系統匯流排的連線:
A7
A6
A5
A4
A3
A2
A1
A0F0H
1
1
1
1
0
0
0
0
A口F1H
1
11
1
0
0
0
1
B口F2H
1
1
1
1
0
0
1
0
C口F3H
1
1
1
1
0
0
1
1
D口
CSA1A08255A匯流排2)
確定方式控制字10010001D7D6D5D4D3D2D1D0特徵位A口方式0A口輸入PC7~PC4輸出B口方式0B口輸出PC3~PC0輸入所以,方式控制字為10010001B,即91H
要求設置:A口方式0輸入,PC7~PC4輸出
B口方式0輸出,PC3~PC0輸入設置方式控制字的程式段為:MOVDX,0F3H
;控制口地址MOVAL,91H
;方式控制字OUTDX,AL或
MOVAL,91H
;方式控制字OUT0F3H,AL2.C口按位置位/複位控制字作用是:使C口中的某一位為1(置位)或0(複位);或在A口、B口採用中斷方式時,通過向C口的指定位置位,允許8255A的中斷信號發出。0複位1置位0D7D6D5D4D3D2D1D0設置內容特徵位,D7=0表示是C口按位置位/複位控制字無意義選擇設置位C口按位置位/複位控制字字各位含義:例
連線如上例,通過控制口置PC2為0,置PC4為1
MOVDX,0F3H
;置DX為控制口地址
MOVAL,00000100B
;置PC2為0OUTDX,ALMOVAL,00001001B
;置PC4為1OUTDX,AL
三、8255A的工作方式1.
三種工作方式2.
方式03.
方式14.
方式2
在8255A內部硬體結構中:
A口和B口之間沒有硬體關係,即可分別作為獨立的輸入或輸出端口;
C口和A口,C口和B口之間有硬體聯繫,通過向控制口設置控制字可以改變這種聯繫。1.三種工作方式resetD7~D0A9~A2A1A0IORIOW片選解碼數據緩衝器讀寫控制片內解碼CSRESETA1A0RDWRPC7~PC0PB7~PB0PA7~PA0控制口D端口A端口C端口B+5VGNDD7~D0外設8255A匯流排
根據A口和C口、B口和C口之間硬體關係的不同,可以有三種不同的工作方式,
分別稱為方式0、方式1、方式2。方式0:與C口之間沒有硬體聯繫。
方式1:C口的某3根引腳作為端口與外設的聯絡信號。方式2:C口的某5根引腳作為端口與外設的聯絡信號。
1.方式0(基本輸入輸出方式)
A口工作在方式0
時,A口和C口之間沒有硬體聯繫
B口工作在方式0
時,B口和C口之間沒有硬體聯繫resetD7~D0A9~A2A1A0IORIOW片選解碼數據緩衝器讀寫控制片內解碼CSRESETA1A0RDWRPC7~PC0PB7~PB0PA7~PA0控制口D端口A端口C端口B+5VGNDD7~D0外設工作在方式0的端口:
作為輸入口相當於普通的三態門作為輸出口相當於普通的鎖存器
CPU可利用方式0下的端口,直接對端口進行讀寫操作,實現CPU與外設間的數據傳送。工作在方式0的端口,為單向傳送端口,由方式控制字決定是輸入還是輸出。1001/01/001/01/0特徵位A口工作方式
A口I/OPC7~PC4I/OB口工作方式B口I/OPC3~PC0I/O
2.方式1(選通輸入輸出方式)
A口工作在方式1時,C口的某3根引腳作為A口的聯絡信號。
B口工作在方式1時,C口的某3根引腳作為B口的聯絡信號。resetD7~D0A9~A2A1A0IORIOW片選解碼數據緩衝器讀寫控制片內解碼CSRESETA1A0RDWRPC7~PC0PB7~PB0PA7~PA0控制口D端口A端口C端口B+5VGNDD7~D0外設工作在方式1的端口,為單向傳送端口。由方式控制字決定是輸入還是輸出。1011/01/011/01/0D7D6D5D4D3D2D1D0特徵位A口工作方式
A口I/OPC7~PC4I/OB口工作方式B口I/OPC3~PC0I/O
在方式1下,C口作為A口、B口聯絡信號的引腳,其動作關係在晶片設計和製造時已固定,不由用戶自己安排,也不能編程改變。即C口作為聯絡信號的引腳:
不受方式控制字的控制。該出則出,該入則入。
不受C口按位置位/複位控制字控制,即對這些位的置位/複位不影響這些引腳信號。1011/01/011/01/0特徵位A口工作方式
A口I/OPC7~PC4I/OB口工作方式B口I/OPC3~PC0I/O利用方式1下的聯絡信號,可方便地實現查詢或中斷方式的硬體設計,使CPU能夠有效、可靠地與外設進行數據傳送。A口、B口在輸入或輸出不同的工作狀態時,
C口聯絡信號的引腳和意義也不同。方式1下輸入端口的聯絡信號1011A口方式1輸入控制字111B口方式1輸入控制字PA7~PA0PC4PC5PC3INTEAPC4與門IBFASTBAINTRARDD7~D0A口方式1輸入時相應的聯絡信號PB7~PB0PC2PC1PC0INTEBPC2與門RDB口方式1輸入時相應的聯絡信號D7~D0IBFBSTBBINTRB對方式1輸入的端口,C口提供與外部聯絡的信號有:①
STB選通信號(低電平有效)由外設發出,送給8255A,作用是將外設送來的數據鎖存到8255A的輸入端口。②
IBF輸入緩衝器滿信號(高電平有效)
8255A發出,表示外設送來的數據已進入輸入端口。當外設送來的數據送入輸入端口後,
8255A自動發出。③
INTR中斷申請信號(高電平或上升沿有效)8255A發出,用來向CPU發出中斷申請。STB、IBF、INTE均為1時,8255A自動發出INTR。PA7~PA0PC4PC5PC3INTEAPC4與門IBFSTBINTR對方式1輸入的端口,8255A內部的控制信號有:
INTE中斷允許控制信號作用是控制是否允許8255A的中斷申請信號INTR發出。PA7~PA0PC4PC5PC3INTEAPC4與門IBFSTBINTR
此信號無引出,
通過控制口對C口相應位的置位/複位設置允許或不允許。
A口,對PC4置位,使INTEA=1,允許中斷
對PC4複位,使INTEA=0,不允許中斷
B口,對PC2置位,使INTEB=1,允許中斷
對PC2複位,使INTEB=0,不允許中斷方式1的輸入時序:從工作在方式1下的輸入端口輸入數據時,有關信號的變化關係。外設送來數據PB7~PB0PA7~PA0STBIBFINTRRD②③當INTE=1時
①RDD7~D0PA7~PA0PC4PC5PC3INTEAPC4與門IBFSTBINTR①當外設準備好數據,將數據送至端口線PA7~PA0或PB7~PB0②
外設發出選通信號STB:(1)將數據鎖存在輸入端口內。
(2)使IBF變高,表示輸入端口滿,可用於阻止外設輸入新數據
(3)如果INTE=1,STB的上升沿使INTR變高,發出中斷請求。③CPU讀取數據,發出RD信號:(1)RD的下降沿清除INTR(2)RD的上升沿清除IBF(3)端口內的數據進入CPUPA7~PA0PB7~PB0STBIBFINTRRD外設送來數據②當INTE=1時
③①RDD7~D0PA7~PA0PC4PC5PC3INTEAPC4與門IBFSTBINTR小結:方式1輸入時,中斷申請信號發出的條件是:①STB=1由外設輸入負脈衝信號滿足②IBF=1此信號由8255A自動產生,
STB信號置1,RD的上升沿置0
③INTE=1此信號無引出,通過編程實現:
A口,由控制口對PC4置位
B口,由控制口對PC2置位PA7~PA0PB7~PB0STBIBFINTRRD外設送來數據②當INTE=1時
③①RDD7~D0PA7~PA0PC4PC5PC3INTEAPC4與門IBFSTBINTRRDD7~D0PB7~PB0PC2PC1PC0INTEAPC2與門IBFSTBINTR注意:在方式1下,作為聯絡信號的外部引腳PC4、PC2,
不受C口按位置位/複位控制字控制,即對這些位的置位/複位不影響這些引腳信號的輸入/輸出,而只在8255A內部對INTE信號起作用。PA7~PA0PC4PC5PC3INTEAPC4與門IBFASTBAINTRARDD7~D0PB7~PB0PC2PC1PC0INTEBPC2與門RDD7~D0IBFBSTBBINTRB1011A口方式1輸入控制字111B口方式1輸入控制字方式1下輸出端口的聯絡信號A口方式1輸出時相應的聯絡信號B口方式1輸出時相應的聯絡信號1010A口方式1輸出控制字110B口方式1輸出控制字PA7~PA0PC6PC7PC3INTEAPC6與門OBFAACKAINTRAWRD7~D0PB7~PB0PC2PC1PC0INTEBPC2與門WRD7~D0OBFBACKBINTRB對方式1輸出的端口,C口提供與外部聯絡的信號有:①
OBF輸出緩衝器滿信號(低電平有效)當數據送至8255A輸出緩衝器後,8255A自動發出。表示CPU送來的數據已進入8255A輸出端口,可用來通知外設把數據取走。②
ACK外設回應信號(低電平有效)由外設發出,送給8255A。作用是通知8255A
輸出端口的數據已被外設取走,可以傳送下一個數據。③
INTR中斷申請信號(高電平或上升沿有效)
8255A發出,用來向CPU發出中斷申請。當OBF、ACK、INTE均為1時,8255A自動發出INTR。PA7~PA0PC6PC7PC3INTEAPC6與門OBFAACKAINTRA對方式1輸出的端口,8255A內部的控制信號有:
INTE中斷允許控制信號作用是控制是否允許中斷申請信號INTR發出。PA7~PA0PC6PC7PC3INTEAPC6與門OBFAACKAINTRA
此信號無引出,
通過控制口對C口相應位的置位/複位設置允許或不允許。
A口,對PC6置位,使INTEA=1,允許中斷
對PC6複位,使INTEA=0,不允許中斷
B口,對PC2置位,使INTEB=1,允許中斷
對PC2複位,使INTEB=0,不允許中斷①D7~D0送往外設數據數據寫入端口WROBFINTRACK②③當INTE=1時
方式1的輸出時序:向工作在方式1下的輸出端口輸出數據時,有關信號的變化關係。PA7~PA0PC6PC7PC3INTEAPC6與門OBFAACKAINTRAWRD7~D0①CPU輸出數據②CPU發出WR:(1)數據寫到8255A的端口(2)使OBF有效,表示輸出端口滿,可作為外設的選通信號,通知外設取數據。(3)清除中斷請求信號INTR③
外設接受到數據後,發出ACK信號:
(1)ACK的下降沿使OBF變高,
(2)當INTE=1,ACK的上降沿使INTR變高,發出中斷請求,請求CPU輸出新的數據。D7~D0WROBFINTRACK當INTE=1時
送往外設數據數據寫入端口②③①PA7~PA0PC6PC7PC3INTEAPC6與門OBFAACKAINTRAWRD7~D0小結:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 经济数学微积分课件 1.3常用的经济函数介绍
- 汽车检测技术2章5发动机点火系统的故障诊断
- 2026年秋招:河南交通投资集团面试题及答案
- 2026年秋招:海信集团题库及答案
- 初二【语文(统编)】短文二篇(二) 记承天寺夜游 练习题
- 爱婴医院护士实践试题及答案
- 2026年砂石行业知识考试题目及答案
- 医疗行业政策导向与企业战略
- 运输经济典型试题及准确答案
- 3 我们的校园说课稿2025学年小学美术广西版二年级下册-广西版
- 2025年湖北卷化学-加标签(精校版)(无答案)
- 2026秋新教材统编版四年级上册语文第一单元教案(大单元教学设计)
- 5.2 必须长期坚持的指导思想 课件(25张幻灯片)+内嵌视频
- 室内设计 课件 模块三 办公空间设计
- 2026年高考全国一卷数学试题真题及答案详解(精校打印)
- 2026年四川省拟任县处级领导干部理论(任职资格考试)全真模拟试题及答案
- 1.2 地球与地球仪 第3课时课件(共20张) 七年级地理上学期人教版
- 终身学习:中学教师专业成长与实践路径
- 2026年上海安全员A证考试题库(附答案)
- 常州大学怀德学院教师招聘考试真题及答案
- 火锅店服务员培训课件
评论
0/150
提交评论