版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、1微機原理與接口技術微機原理與接口技術第第10a章章 并行輸入輸出接口并行輸入輸出接口8255A2第一節(jié)第一節(jié) 并行接口的基本概念并行接口的基本概念一、并行通信和串行通信一、并行通信和串行通信二、并行接口概述二、并行接口概述3一、并行通信和串行通信一、并行通信和串行通信 通信通信指計算機與外設、計算機與計算機間的信息交換指計算機與外設、計算機與計算機間的信息交換 通信的基本方法通信的基本方法: : 并行通信和串行通信并行通信和串行通信4數(shù)據(jù)的各位同時由源到達目的地數(shù)據(jù)的各位同時由源到達目的地 快快多根數(shù)據(jù)線多根數(shù)據(jù)線 距離短、遠程費用高距離短、遠程費用高r 并行通信并行通信 將數(shù)據(jù)的各位將數(shù)據(jù)
2、的各位同時同時在在多根并行傳輸線上多根并行傳輸線上進行傳輸。進行傳輸。01010110 D0D1D2D3D4D5D6D7目目的的D0D1D2D3D4D5D6D7源源并行通信并行通信適于適于短距離短距離、高速高速通信通信5數(shù)據(jù)的各位依次由源到達目的地數(shù)據(jù)的各位依次由源到達目的地 慢慢數(shù)據(jù)線少數(shù)據(jù)線少 遠程遠程, 費用低費用低r 串行通信串行通信 將數(shù)據(jù)的各位將數(shù)據(jù)的各位按時間順序按時間順序依次在依次在一根傳輸線上一根傳輸線上傳輸。傳輸。 0 1 1 0 1 0 1 0 RD目目的的TD源源串行通信串行通信適于適于長距離長距離、中低速中低速通信通信6l 并行接口的典型硬件結構包括:并行接口的典型硬
3、件結構包括:1、一個或一個以上具有鎖存或緩沖的數(shù)據(jù)端口、一個或一個以上具有鎖存或緩沖的數(shù)據(jù)端口2、與、與CPU進行數(shù)據(jù)交換所必須的控制和狀態(tài)信號進行數(shù)據(jù)交換所必須的控制和狀態(tài)信號3、與外設進行數(shù)據(jù)交換所必須的控制和狀態(tài)信號、與外設進行數(shù)據(jù)交換所必須的控制和狀態(tài)信號4、端口譯碼電路、端口譯碼電路5、控制電路、控制電路二、并行接口概述二、并行接口概述l 并行接口連接并行接口連接CPU與并行外設,實現(xiàn)與并行外設,實現(xiàn) 兩者間的并行通信,兩者間的并行通信, 在信息傳送過程中,起到輸出鎖存或輸入緩沖的作用。在信息傳送過程中,起到輸出鎖存或輸入緩沖的作用。7CPUCPU控制寄存器控制寄存器輸入緩沖寄存器輸
4、入緩沖寄存器輸出緩沖寄存器輸出緩沖寄存器狀態(tài)寄存器狀態(tài)寄存器數(shù)據(jù)總線數(shù)據(jù)總線地址地址譯碼譯碼讀出信號讀出信號寫入信號寫入信號復位復位準備好準備好中斷請求中斷請求地址地址片選片選A A0 0A A1 1輸輸入入設設備備數(shù)據(jù)輸入數(shù)據(jù)輸入數(shù)據(jù)輸入準備好數(shù)據(jù)輸入準備好數(shù)據(jù)輸入回答數(shù)據(jù)輸入回答輸輸出出設設備備數(shù)據(jù)輸出數(shù)據(jù)輸出數(shù)據(jù)輸出準備好數(shù)據(jù)輸出準備好數(shù)據(jù)輸出回答數(shù)據(jù)輸出回答并行接口連接外設示意圖并行接口連接外設示意圖8輸入過程輸入過程 外設將數(shù)據(jù)外設將數(shù)據(jù)=接口接口 狀態(tài)線狀態(tài)線“數(shù)據(jù)輸入準備好數(shù)據(jù)輸入準備好”=1;接口把接收到數(shù)據(jù)輸入緩沖寄存器;接口把接收到數(shù)據(jù)輸入緩沖寄存器;數(shù)據(jù)輸入回答數(shù)據(jù)輸入回
5、答=1,作為對外設響應信號;,作為對外設響應信號;外設撤消外設撤消“數(shù)據(jù)數(shù)據(jù)”和和“數(shù)據(jù)輸入準備好數(shù)據(jù)輸入準備好”信號;信號; CPU從接口讀取數(shù)據(jù)從接口讀取數(shù)據(jù)接口收到數(shù)據(jù),設置接口收到數(shù)據(jù),設置“輸入準備好輸入準備好”狀態(tài)位;狀態(tài)位;供給供給CPU查詢查詢 或向或向CPU發(fā)中斷請求;發(fā)中斷請求; CPU從接口讀取數(shù)據(jù),從接口讀取數(shù)據(jù),接口自動清除狀態(tài)寄存器輸入準備好狀態(tài)位(準備好);接口自動清除狀態(tài)寄存器輸入準備好狀態(tài)位(準備好); 數(shù)據(jù)總線處于高阻狀態(tài)。開始下一個輸入過程數(shù)據(jù)總線處于高阻狀態(tài)。開始下一個輸入過程9輸出過程輸出過程輸出輸出 :每當外設從接口取走一個數(shù)據(jù)以后,:每當外設從接口
6、取走一個數(shù)據(jù)以后, CPU往接口中輸出數(shù)據(jù)往接口中輸出數(shù)據(jù)接口中狀態(tài)寄存器發(fā)中斷請求;接口中狀態(tài)寄存器發(fā)中斷請求; (“輸出準備好輸出準備好”=1,表示,表示CPU可以往接口中輸出數(shù)據(jù))可以往接口中輸出數(shù)據(jù)) CPU向接口輸出數(shù)據(jù),數(shù)據(jù)到接口緩沖寄存器;向接口輸出數(shù)據(jù),數(shù)據(jù)到接口緩沖寄存器;接口自動清除接口自動清除“輸出準備輸出準備”好。好。 將數(shù)據(jù)送往外設:將數(shù)據(jù)送往外設: 接口向外設發(fā)送一個接口向外設發(fā)送一個“驅(qū)動信號驅(qū)動信號”,啟動外設接收數(shù)據(jù)。,啟動外設接收數(shù)據(jù)。外設收到數(shù)據(jù)向接口發(fā)一個外設收到數(shù)據(jù)向接口發(fā)一個“數(shù)據(jù)輸出回答數(shù)據(jù)輸出回答”信號;信號;接口收到的信號將狀態(tài)寄存器中接口收到
7、的信號將狀態(tài)寄存器中“輸出準好輸出準好”=1; CPU輸出下一個數(shù)據(jù)。輸出下一個數(shù)據(jù)。10l不可編程并行接口和可編程并行接口不可編程并行接口和可編程并行接口 不可編程并行接口的工作方式和功能不可編程并行接口的工作方式和功能: : 是由硬件接線決定,不能用軟件來控制。是由硬件接線決定,不能用軟件來控制。 可編程并行接口的工作方式和功能可編程并行接口的工作方式和功能: 可用軟件編程的方法改變,可用軟件編程的方法改變, 使接口具有更大的靈活性和通用性。使接口具有更大的靈活性和通用性。11第二節(jié)第二節(jié) 可編程并行接口可編程并行接口8255A一、一、8255A的的引腳、編程結構引腳、編程結構二、二、82
8、55A的控制字的控制字三、三、8255A三種工作方式三種工作方式四、四、8255A的應用舉例的應用舉例12一、一、8255A引腳、編程結構引腳、編程結構Intel系列的系列的8位并行接口芯片位并行接口芯片通用性強,使用靈活通用性強,使用靈活可用程序設置和改變芯片的工作方式可用程序設置和改變芯片的工作方式是一種是一種典型的可編程并行接口芯片典型的可編程并行接口芯片8255APA3PA2PA1PA0RDCSGNDA1A0PC7PC6PC5PC4PC3PC2PC1PC0PB0PB1PB2PA4PA5PA6PA7WRRESETD0D1D2D3D4D5D6D7VccPB7PB6PB5PB4PB340個引
9、腳,雙列直插式個引腳,雙列直插式13resetD7D0A9A2A1A0IORIOW片選片選譯碼譯碼數(shù)據(jù)數(shù)據(jù)緩沖器緩沖器讀寫讀寫控制控制片內(nèi)片內(nèi)譯碼譯碼CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外設設8255A總線總線141. 數(shù)據(jù)端口數(shù)據(jù)端口 A、B、Cr 每個端口每個端口8位,通過編程設定其為輸入口或輸出口位,通過編程設定其為輸入口或輸出口r 可用來和外設傳送信息可用來和外設傳送信息resetD7D0A9A2A1A0IORIOW片選片選譯碼譯碼數(shù)據(jù)數(shù)據(jù)緩沖器緩沖器讀寫讀寫控制控制片內(nèi)片內(nèi)譯碼譯碼CSR
10、ESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外設設8255A總線總線15r 端口端口A有有 3 種工作方式種工作方式( 方式方式 0、方式、方式 1、方式、方式 2)對外對外 8 根引腳根引腳 PA7 PA0 resetD7D0A9A2A1A0IORIOW片選片選譯碼譯碼數(shù)據(jù)數(shù)據(jù)緩沖器緩沖器讀寫讀寫控制控制片內(nèi)片內(nèi)譯碼譯碼CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外設設8255A總線總線16r端口端口B 有有 2 種工作
11、方式:方式種工作方式:方式 0、方式、方式 1對外對外 8 根引腳根引腳 PB7 PB0resetD7D0A9A2A1A0IORIOW片選片選譯碼譯碼數(shù)據(jù)數(shù)據(jù)緩沖器緩沖器讀寫讀寫控制控制片內(nèi)片內(nèi)譯碼譯碼CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外設設8255A總線總線17r 端口端口C對外引腳對外引腳PC0 PC7resetD7D0A9A2A1A0IORIOW片選片選譯碼譯碼數(shù)據(jù)數(shù)據(jù)緩沖器緩沖器讀寫讀寫控制控制片內(nèi)片內(nèi)譯碼譯碼CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口
12、D端口端口A端口端口C端口端口B +5VGNDD7D0外外設設8255A總線總線18 當端口當端口 A 在方式在方式 1 或方式或方式 2、端口、端口 B 在方式在方式 1 時,時, 端口端口 C 的某些位用于傳送聯(lián)絡信號的某些位用于傳送聯(lián)絡信號, 以適應以適應CPU與外設間的各種數(shù)據(jù)傳送方式的要求,與外設間的各種數(shù)據(jù)傳送方式的要求, 如查詢傳送的應答信號、中斷傳送的中斷申請信號等;如查詢傳送的應答信號、中斷傳送的中斷申請信號等; C口未被用作聯(lián)絡信號的其它位可工作在方式口未被用作聯(lián)絡信號的其它位可工作在方式 0。resetD7D0A9A2A1A0IORIOW片選片選譯碼譯碼數(shù)據(jù)數(shù)據(jù)緩沖器緩沖
13、器讀寫讀寫控制控制片內(nèi)片內(nèi)譯碼譯碼CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外設設192. 控制端口控制端口D (A組和組和B組控制電路組控制電路) 8位端口,無對外引腳位端口,無對外引腳 控制端口的內(nèi)容決定控制端口的內(nèi)容決定A口、口、B口、口、C口的工作狀態(tài)口的工作狀態(tài)(輸入或輸出輸入或輸出) 和工作方式(方式和工作方式(方式 0、1、2), 起控制作用。起控制作用。resetD7D0A9A2A1A0IORIOW片選片選譯碼譯碼數(shù)據(jù)數(shù)據(jù)緩沖器緩沖器讀寫讀寫控制控制片內(nèi)片內(nèi)譯碼譯碼CSRESETA1A0
14、RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外設設20 由由1個個8位雙向三態(tài)緩沖器構成位雙向三態(tài)緩沖器構成 8255A內(nèi)各端口內(nèi)各端口通過數(shù)據(jù)緩沖器與系統(tǒng)總線相連。通過數(shù)據(jù)緩沖器與系統(tǒng)總線相連。 CPU與端口與端口A、B、C間傳送的數(shù)據(jù),間傳送的數(shù)據(jù), 以及以及CPU寫入控制端口寫入控制端口D中的控制字均通過數(shù)據(jù)緩沖器傳送。中的控制字均通過數(shù)據(jù)緩沖器傳送。3. 數(shù)據(jù)總線緩沖器數(shù)據(jù)總線緩沖器(引腳引腳D0D7)resetD7D0A9A2A1A0IORIOW片選片選譯碼譯碼數(shù)據(jù)數(shù)據(jù)緩沖器緩沖器讀寫讀寫控制控制片內(nèi)片內(nèi)譯碼譯碼CS
15、RESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外設設214. 讀寫控制電路讀寫控制電路 (引腳引腳CS、 RD、 WR) 控制數(shù)據(jù)總線緩沖器的狀態(tài)。控制數(shù)據(jù)總線緩沖器的狀態(tài)。 數(shù)據(jù)總線緩沖器有數(shù)據(jù)總線緩沖器有3種狀態(tài):輸入、輸出、高阻態(tài)種狀態(tài):輸入、輸出、高阻態(tài) resetD7D0A9A2A1A0IORIOW片選片選譯碼譯碼數(shù)據(jù)數(shù)據(jù)緩沖器緩沖器讀寫讀寫控制控制片內(nèi)片內(nèi)譯碼譯碼CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外設
16、設22resetD7D0A9A2A1A0IORIOW片選片選譯碼譯碼數(shù)據(jù)數(shù)據(jù)緩沖器緩沖器讀寫讀寫控制控制片內(nèi)片內(nèi)譯碼譯碼RESETA1A0PC7PC0PB7PB0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外設設RDWRCSPA7PA023選擇被操作的端口選擇被操作的端口5. 片內(nèi)譯碼電路片內(nèi)譯碼電路 (引腳引腳A1、 A0)resetD7D0A9A2A1A0IORIOW片選片選譯碼譯碼數(shù)據(jù)數(shù)據(jù)緩沖器緩沖器讀寫讀寫控制控制片內(nèi)片內(nèi)譯碼譯碼CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外
17、外設設24A1 A0選選中中端端口口0 0端端口口 A0 1端端口口 B1 0端端口口 C1 1控控制制端端口口 DresetD7D0A9A2A1A0IORIOW片選片選譯碼譯碼數(shù)據(jù)數(shù)據(jù)緩沖器緩沖器讀寫讀寫控制控制片內(nèi)片內(nèi)譯碼譯碼RESETA1A0PC7PC0PB7PB0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外設設RDWRCSPA7PA025由由CS、A1、A0、RD、WR引腳的不同組合,引腳的不同組合,實現(xiàn)各種不同的功能。實現(xiàn)各種不同的功能。CS A1 A0 RD WR功功 能能 0 0 0 0 1對對端端口口 A 讀讀 0 0 1 0 1對對端端口口 B 讀讀
18、 0 1 0 0 1對對端端口口 C 讀讀 0 1 1 0 1非非法法,不不能能對對 D 口口讀讀輸輸入入 0 0 0 1 0對對端端口口 A 寫寫 0 0 1 1 0對對端端口口 B 寫寫 0 1 0 1 0對對端端口口 C 寫寫 0 1 1 1 0對對端端口口 D 寫寫輸輸出出 1 1 1數(shù)數(shù)據(jù)據(jù)緩緩沖沖器器為為三三態(tài)態(tài)斷斷開開261方式控制字方式控制字2. C口按位置位口按位置位/復位控制字復位控制字二、二、8255A的控制字的控制字27 8255A控制口控制口D的內(nèi)容的內(nèi)容對數(shù)據(jù)端口對數(shù)據(jù)端口A、B、C起控制作用,起控制作用, 故稱為故稱為8255A的控制字的控制字。resetD7D0
19、A9A2A1A0IORIOW片選片選譯碼譯碼數(shù)據(jù)數(shù)據(jù)緩沖器緩沖器讀寫讀寫控制控制片內(nèi)片內(nèi)譯碼譯碼CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外設設28 通過編程向控制口寫入不同的控制字,通過編程向控制口寫入不同的控制字, 可靈活的改變端口可靈活的改變端口A、B、C的工作狀態(tài)和工作方式。的工作狀態(tài)和工作方式。例例 假設假設8255A 控制端口的地址為控制端口的地址為Port_Ctrl, 8255A控制口的內(nèi)容為控制口的內(nèi)容為CtrlData 設置控制字的程序段如下:設置控制字的程序段如下: MOV DX,P
20、ort_Ctrl ;置置DX為控制口地址為控制口地址 MOV AL,CtrlData ;置控制字于置控制字于AL中中 OUT DX, AL ;將控制字寫入控制口將控制字寫入控制口29 8255A有兩種控制字,由寫入內(nèi)容的有兩種控制字,由寫入內(nèi)容的D7位區(qū)分:位區(qū)分:D7=1, 方式控制字方式控制字設定設定A口、口、B口、口、C口的工作狀態(tài)和工作方式。口的工作狀態(tài)和工作方式。工作狀態(tài):輸入或輸出工作狀態(tài):輸入或輸出工作方式:方式工作方式:方式 0、方式、方式 1、方式、方式 2D7=0 , C口按位置位口按位置位/復位控制字復位控制字使使C口中的某一位為口中的某一位為1(置位)或(置位)或0(復
21、位)。(復位)。301. 方式控制字方式控制字設定設定A口、口、B口、口、C口的工作狀態(tài)和工作方式??诘墓ぷ鳡顟B(tài)和工作方式。工作狀態(tài)工作狀態(tài):輸入或輸出:輸入或輸出工作方式工作方式:方式:方式 0、方式、方式 1、方式、方式 2resetD7D0A9A2A1A0IORIOW片選片選譯碼譯碼數(shù)據(jù)數(shù)據(jù)緩沖器緩沖器讀寫讀寫控制控制片內(nèi)片內(nèi)譯碼譯碼CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外設設31B口口0 輸出輸出1 輸入輸入0 方式方式01 方式方式11D7D6D5D4D3D2D1D0特征位,特征位,D7=
22、1表示是方式控制字表示是方式控制字PC3PC00 輸出輸出1 1 輸入輸入B口工作方式口工作方式PC7PC40 輸出輸出1 輸入輸入A口口0 輸出輸出1 輸入輸入A口工作方式口工作方式00 方式方式001 方式方式11x 方式方式2方方式式控控制制字字各各位位含含義義32例例 8255A與系統(tǒng)的連線如下,與系統(tǒng)的連線如下, 片選譯碼地址為片選譯碼地址為F0F3h 1) 確定各端口地址確定各端口地址; 2) 編程設置編程設置8255A : A口方式口方式 0 輸入,輸入,PC7PC4輸出輸出 B口方式口方式 0 輸出,輸出,PC3PC0輸入輸入resetD7D0A9A2A1A0IORIOW片選片
23、選譯碼譯碼數(shù)據(jù)數(shù)據(jù)緩沖器緩沖器讀寫讀寫控制控制片內(nèi)片內(nèi)譯碼譯碼RESETA1A0PC7PC0PB7PB0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外設設RDWRCSPA7PA0F0F3h33最后得出結論:最后得出結論: A口地址口地址為為 F0 H B口地址口地址為為 F1 H C口地址口地址為為 F2 H D口地址口地址為為 F3 H1) 確定端口地址確定端口地址由由8255A編程結構知:編程結構知:A1 A0選選中中端端口口0 0端端口口 A0 1端端口口 B1 0端端口口 C1 1控控制制端端口口 D由由8255A的的CS與系統(tǒng)總線的連線知與系統(tǒng)總線的連線知,
24、地址在地址在F0F3h可可使使CS有效,故有效,故: 4個端口的地址在個端口的地址在F0F3h中。中。結合結合8255A與系統(tǒng)總線的連線與系統(tǒng)總線的連線: A7 A6 A5 A4 A3 A2 A1 A0 F0H 1 1 1 1 0 0 0 0 A口口F1H 1 1 1 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口口 CSA1 A0 8255A總線總線342) 確定方式控制字確定方式控制字10010001D7D6D5D4D3D2D1D0特征位特征位A口口方式方式 0A口口輸入輸入PC7PC4輸出輸出B口口方式方式 0B口口輸
25、出輸出PC3PC0輸入輸入所以,方式控制字為所以,方式控制字為 1001 0001B,即,即91H 要求設置要求設置: A口方式口方式0輸入,輸入,PC7PC4輸出輸出 B口方式口方式0輸出,輸出,PC3PC0輸入輸入 35設置方式控制字的程序段為:設置方式控制字的程序段為:MOV DX, 0F3H ;控制口地址控制口地址MOV AL, 91H ;方式方式控制字控制字OUT DX, AL或或 MOV AL, 91H ; 方式控制字方式控制字OUT 0F3H, AL362. C口按位置位口按位置位/復位控制字復位控制字 作用是:作用是: 使使C口中的某一位為口中的某一位為1(置位)或(置位)或0
26、(復位);(復位); 或在或在A口、口、B口采用中斷方式時,口采用中斷方式時, 通過向通過向C口的指定位置位,允許口的指定位置位,允許8255A的中斷信號發(fā)出的中斷信號發(fā)出。370 復位復位1 置位置位0D7D6D5D4D3D2D1D0設置內(nèi)容設置內(nèi)容特征位,特征位,D7=0表示是表示是C口按位口按位置位置位/復位控制字復位控制字無意義無意義選擇設置位選擇設置位C口按位置位口按位置位/復位控制字各位含義復位控制字各位含義:D3 D2 D1設設置置位位0 0 0PC00 0 1PC10 1 0PC20 1 1PC31 0 0PC41 0 1PC51 1 0PC61 1 1PC738例例 連線如上
27、例,連線如上例, 通過控制口置通過控制口置 PC2 為為 0,置,置 PC4 為為 1 MOV DX,0F3H ;置置DX為控制口地址為控制口地址 MOV AL,0000 0100B ;置置PC2為為0 OUT DX, AL MOV AL,0000 1001B ;置置PC4為為1 OUT DX, AL 39三、三、8255A的工作方式的工作方式1. 三種工作方式三種工作方式2. 方式方式0 3. 方式方式14. 方式方式240r 在在8255A內(nèi)部硬件結構中內(nèi)部硬件結構中: A口和口和B口之間沒有硬件關系,口之間沒有硬件關系, 即可分別作為獨立的輸入或輸出端口;即可分別作為獨立的輸入或輸出端口
28、; C口和口和A口,口,C口和口和B口之間有硬件聯(lián)系,口之間有硬件聯(lián)系, 通過向控制口設置控制字可以改變這種聯(lián)系。通過向控制口設置控制字可以改變這種聯(lián)系。1. 三種工作方式三種工作方式41resetD7D0A9A2A1A0IORIOW片選片選譯碼譯碼數(shù)據(jù)數(shù)據(jù)緩沖器緩沖器讀寫讀寫控制控制片內(nèi)片內(nèi)譯碼譯碼CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外設設8255A總線總線42r 根據(jù)根據(jù)A口和口和C口、口、B口和口和C口之間硬件關系的不同,口之間硬件關系的不同, 可以有三種不同的工作方式可以有三種不同的工作方
29、式, 分別稱為方式分別稱為方式 0、方式、方式 1、方式、方式 2。方式方式 0: 與與C口之間口之間沒有硬件聯(lián)系沒有硬件聯(lián)系。 方式方式 1: C口的口的某某3根引腳根引腳作為端口與外設的聯(lián)絡信號。作為端口與外設的聯(lián)絡信號。方式方式 2: C口的口的某某5根引腳根引腳作為端口與外設的聯(lián)絡信號。作為端口與外設的聯(lián)絡信號。 431. 方式方式0(基本輸入輸出方式)(基本輸入輸出方式) A口工作在方式口工作在方式 0 時,時,A口口和和C口之間沒有硬件聯(lián)系口之間沒有硬件聯(lián)系 B口工作在方式口工作在方式 0 時,時,B口口和和C口之間沒有硬件聯(lián)系口之間沒有硬件聯(lián)系resetD7D0A9A2A1A0I
30、ORIOW片選片選譯碼譯碼數(shù)據(jù)數(shù)據(jù)緩沖器緩沖器讀寫讀寫控制控制片內(nèi)片內(nèi)譯碼譯碼CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外設設44工作在工作在方式方式 0 的端口的端口,為,為單向傳送端口單向傳送端口, 由方式控制字決定是輸入還是輸出。由方式控制字決定是輸入還是輸出。1001/01/001/01/0特征位特征位A口口工作方式工作方式 A口口I/OPC7PC7PC4PC4I/OB口口工作方式工作方式 B口口I/OPC3PC3PC0PC0I/O工作在方式工作在方式 0 的端口:的端口: 作為輸入口相當于普通
31、的三態(tài)門作為輸入口相當于普通的三態(tài)門 作為輸出口相當于普通的鎖存器作為輸出口相當于普通的鎖存器 CPU可利用方式可利用方式 0 下的端口,直接對端口進行讀寫操作,下的端口,直接對端口進行讀寫操作, 實現(xiàn)實現(xiàn)CPU與外設間的數(shù)據(jù)傳送。與外設間的數(shù)據(jù)傳送。45三態(tài)緩沖器三態(tài)緩沖器地址譯碼器地址譯碼器& &數(shù)據(jù)數(shù)據(jù)來自外設來自外設8 88 8IO/IO/MRDRD數(shù)據(jù)總線數(shù)據(jù)總線地址總線地址總線方式方式 0 輸入輸入方式方式0輸入(輸入(IN AL,PORT) 框圖框圖46tRD數(shù)據(jù)有效tDFtRAtHRtRRtIRtARRDRD輸入數(shù)據(jù)輸入數(shù)據(jù)CSCS,A A1 1,A A0 0D
32、 D0 0 - D D7 7方式方式0 輸入(輸入( IN AL,PORT ) 時序時序47 方式方式0 0輸入時序基本情況:輸入時序基本情況: 外設的數(shù)據(jù)已經(jīng)準備好,數(shù)據(jù)存入接口數(shù)據(jù)寄存器,外設的數(shù)據(jù)已經(jīng)準備好,數(shù)據(jù)存入接口數(shù)據(jù)寄存器, CPUCPU執(zhí)行一條執(zhí)行一條 (IN AL,PORT)(IN AL,PORT)指令從指令從8255A8255A讀取數(shù)據(jù),讀取數(shù)據(jù), I/O讀周期,讀周期,8088CPU與與8255A在時序上不能很好配合,在時序上不能很好配合, 需要需要CPU插入一個等待狀態(tài)。插入一個等待狀態(tài)。48方式方式0輸出輸出方式方式0輸出(輸出(OUT PORT,AL) 框圖:框圖:
33、鎖存器鎖存器到外設到外設8 88 8WRWR地址譯碼器地址譯碼器數(shù)據(jù)總線數(shù)據(jù)總線地址總線地址總線& &CECEIO/IO/M49數(shù)據(jù)有效數(shù)據(jù)有效tWAtWWtAWWRWR輸出數(shù)據(jù)輸出數(shù)據(jù)CSCS, A A1 1, A A0 0D D7 7 - D D0 0tDW數(shù)據(jù)有效數(shù)據(jù)有效tWDtWB方式方式0輸出輸出 (OUT PORT, AL)時序)時序 I/O寫周期,寫周期,8088CPU與與8255A在時序上不能很好配合,在時序上不能很好配合, 需要需要CPU插入一個等待狀態(tài)。插入一個等待狀態(tài)。50 2. 方式方式1(選通輸入輸出方式)(選通輸入輸出方式) B口工作在方式口工作在方
34、式1時,時, C口的口的某某3根引腳根引腳作為作為B口的聯(lián)絡信號口的聯(lián)絡信號。 A口工作在方式口工作在方式1 1時,時,C口的口的某某3 3根引腳根引腳作為作為A口的聯(lián)絡信號口的聯(lián)絡信號。resetD7D0A9A2A1A0IORIOW片選片選譯碼譯碼數(shù)據(jù)數(shù)據(jù)緩沖器緩沖器讀寫讀寫控制控制片內(nèi)片內(nèi)譯碼譯碼CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外設設51工作在方式工作在方式 1 的端口,為單向傳送端口。的端口,為單向傳送端口。 由方式控制字決定是輸入還是輸出。由方式控制字決定是輸入還是輸出。1011/01
35、/011/01/0D7D6D5D4D3D2D1D0特征位特征位A口口工作方式工作方式 A口口I/OPC7PC7PC4PC4I/OB口口工作方式工作方式 B口口I/OPC3PC3PC0PC0I/O52在方式在方式 1 下,下,C口作為口作為A口、口、B口聯(lián)絡信號的引腳,口聯(lián)絡信號的引腳, 其動作關系在芯片設計和制造時已固定,其動作關系在芯片設計和制造時已固定, 不由用戶自己安排,也不能編程改變。不由用戶自己安排,也不能編程改變。 即即C口作為聯(lián)絡信號的引腳口作為聯(lián)絡信號的引腳: 不受方式控制字的控制不受方式控制字的控制。該出則出,該入則入。該出則出,該入則入。 不受不受C口按位置位口按位置位/復
36、位控制字控制復位控制字控制, 即對這些位的置位即對這些位的置位/復位不影響這些引腳信號。復位不影響這些引腳信號。1011/01/011/01/0特征位特征位A口口工作方式工作方式 A口口I/OPC7PC7PC4PC4I/OB口口工作方式工作方式 B口口I/OPC3PC3PC0PC0I/O53利用方式利用方式 1 下的聯(lián)絡信號,下的聯(lián)絡信號, 可方便地可方便地實現(xiàn)查詢或中斷方式實現(xiàn)查詢或中斷方式的硬件設計,的硬件設計, 使使CPU能夠能夠有效、可靠地與外設進行數(shù)據(jù)傳送。有效、可靠地與外設進行數(shù)據(jù)傳送。 A口、口、B口在輸入或輸出不同的工作狀態(tài)時,口在輸入或輸出不同的工作狀態(tài)時, C口聯(lián)絡信號的引
37、腳和意義也不同??诼?lián)絡信號的引腳和意義也不同。54l方式方式1下輸入端口的聯(lián)絡信號下輸入端口的聯(lián)絡信號1 0 1 1A A口方式口方式1 1輸入控制字輸入控制字11 1B B口方式口方式1 1輸入控制字輸入控制字PA7PA7PA0PA0PC4PC4PC5PC5PC3PC3INTEINTEA APC4PC4與門與門IBFAIBFASTBASTBAINTRINTRA ARDRDD7D7D0D0A口方式口方式1輸入時輸入時相應的聯(lián)絡信號相應的聯(lián)絡信號PB7PB7PB0PB0PC2PC2PC1PC1PC0PC0INTEINTEB BPC2PC2與門與門RDRDB口方式口方式1輸入時輸入時相應的聯(lián)絡信號
38、相應的聯(lián)絡信號D7D7D0D0IBFBIBFBSTBBSTBBINTRINTRB B55對方式對方式1輸入的端口,輸入的端口,C口提供與外部聯(lián)絡的信號有:口提供與外部聯(lián)絡的信號有: STB 選通信號(低電平有效)選通信號(低電平有效)由外設發(fā)出,送給由外設發(fā)出,送給8255A,作用是將外設送來的數(shù)據(jù)鎖存到作用是將外設送來的數(shù)據(jù)鎖存到8255A的輸入端口。的輸入端口。 IBF 輸入緩沖器滿信號(高電平有效)輸入緩沖器滿信號(高電平有效) 8255A 發(fā)出,發(fā)出, 表示外設送來的數(shù)據(jù)已進入輸入端口。表示外設送來的數(shù)據(jù)已進入輸入端口。 當外設送來的數(shù)據(jù)送入輸入端口后,當外設送來的數(shù)據(jù)送入輸入端口后,
39、 8255A自動發(fā)出自動發(fā)出IBF。 INTR 中斷申請信號中斷申請信號 (高電平或上升沿有效)(高電平或上升沿有效)8255A 發(fā)出,用來向發(fā)出,用來向CPU發(fā)出中斷申請。發(fā)出中斷申請。STB、IBF、INTE均為時,均為時,8255A自動發(fā)出自動發(fā)出INTR。PA7PA7PA0PA0PC4PC4PC5PC5PC3PC3INTEAINTEAPC4PC4與門與門IBFIBFSTBSTBINTRINTR56對方式對方式1輸入的端口,輸入的端口,8255A內(nèi)部的控制信號有:內(nèi)部的控制信號有: INTE 中斷允許控制信號中斷允許控制信號 作用是控制是否允許作用是控制是否允許8255A的中斷申請信號的
40、中斷申請信號INTR發(fā)出。發(fā)出。PA7PA7PA0PA0PC4PC4PC5PC5PC3PC3INTEAINTEAPC4PC4與門與門IBFIBFSTBSTBINTRINTR 此信號無引出此信號無引出,通過,通過控制口控制口對對C口相應位的置位口相應位的置位/復位復位設置設置允許或不允許允許或不允許。 A口,口,對對PC4置置位位, 使使INTEA=1, 允許允許中斷中斷 對對PC4復復位位, 使使INTEA=0, 不允許不允許中斷中斷 B口,口,對對PC2置置位位, 使使INTEB=1, 允許允許中斷中斷 對對PC2復復位位, 使使INTEB=0, 不允許不允許中斷中斷57PB7PB0PA7P
41、A0STBIBFINTRRD方式方式1的輸入時序:的輸入時序: 從工作在方式從工作在方式1下的輸入端口輸入數(shù)據(jù)時,下的輸入端口輸入數(shù)據(jù)時, 有關信號的變化關系。有關信號的變化關系。外設送來數(shù)據(jù)外設送來數(shù)據(jù)當當INTE=1時時 RDRDD7D7D0D0PA7PA7PA0PA0PC4PC4PC5PC5PC3PC3INTEAINTEAPC4PC4與門與門IBFIBFSTBSTBINTRINTR58 當外設數(shù)據(jù)準備好,當外設數(shù)據(jù)準備好,將數(shù)據(jù)送至端口線將數(shù)據(jù)送至端口線PA7PA0或或PB7PB0 外設發(fā)出選通信號外設發(fā)出選通信號STB: ( (1) 將數(shù)據(jù)鎖存在輸入端口內(nèi)。將數(shù)據(jù)鎖存在輸入端口內(nèi)。 (
42、2) 使使IBF變高變高,表示輸入端口滿,可用于阻止外設輸入新數(shù)據(jù),表示輸入端口滿,可用于阻止外設輸入新數(shù)據(jù) (3) 如果如果INTE=1, STB的的上升沿上升沿使使INTR變高,發(fā)出中斷請求。變高,發(fā)出中斷請求。 中斷處理程序中中斷處理程序中CPU 讀取數(shù)據(jù),發(fā)出讀取數(shù)據(jù),發(fā)出RD信號信號: (1) RD 的下降沿清除的下降沿清除INTR (2) RD 的上升沿清除的上升沿清除IBF (3) 端口內(nèi)的數(shù)據(jù)進入端口內(nèi)的數(shù)據(jù)進入CPUPA7PA7PA0PA0PB7PB7PB0PB0STBIBFINTRRD外設送來數(shù)據(jù)外設送來數(shù)據(jù)當當INTE=1時時 RDRDD7D7D0D0PA7PA7PA0P
43、A0PC4PC4PC5PC5PC3PC3INTEAINTEAPC4PC4與門與門IBFIBFSTBSTBINTRINTR59小結:方式輸入時,中斷申請信號發(fā)出的條件是:小結:方式輸入時,中斷申請信號發(fā)出的條件是: STB=1 由外設輸入負脈沖信號滿足由外設輸入負脈沖信號滿足 IBF=1 此信號由此信號由8255A自動產(chǎn)生,自動產(chǎn)生, STB信號置信號置, RD的上升沿置的上升沿置0 INTE=1 此信號無引出,通過編程實現(xiàn):此信號無引出,通過編程實現(xiàn): A口,由控制口對口,由控制口對PC4置位置位 B口,由控制口對口,由控制口對PC2置位置位PA7PA7PA0PA0PB7PB7PB0PB0ST
44、BIBFINTRRD外設送來數(shù)據(jù)外設送來數(shù)據(jù)當當INTE=1時時 RDRDD7D7D0D0PA7PA7PA0PA0PC4PC4PC5PC5PC3PC3INTEAINTEAPC4PC4與門與門IBFIBFSTBSTBINTRINTRRDRDD7D7D0D0PB7PB7PB0PB0PC2PC2PC1PC1PC0PC0INTEAINTEAPC2PC2與門與門IBFIBFSTBSTBINTRINTR60注意:注意: 在方式在方式1下,下,作為聯(lián)絡信號的外部引腳作為聯(lián)絡信號的外部引腳PC4、PC2, 不受不受C口按位置位口按位置位/復位控制字控制復位控制字控制, 即對這些位的置位即對這些位的置位/復位不
45、影響這些引腳信號的輸入復位不影響這些引腳信號的輸入/輸出,輸出, 而只在而只在8255A內(nèi)部對內(nèi)部對INTE信號起作用。信號起作用。PA7PA7PA0PA0PC4PC4PC5PC5PC3PC3INTEAINTEAPC4PC4與門與門IBFAIBFASTBASTBAINTRAINTRARDRDD7D7D0D0PB7PB7PB0PB0PC2PC2PC1PC1PC0PC0INTEBINTEBPC2PC2與門與門RDRDD7D7D0D0IBFBIBFBSTBBSTBBINTRBINTRB1 0 1 1A口方式口方式1輸入控制字輸入控制字11 1B口方式口方式1輸入控制字輸入控制字61l方式方式1下輸出
46、端口的聯(lián)絡信號下輸出端口的聯(lián)絡信號A口方式口方式1輸出時輸出時相應的聯(lián)絡信號相應的聯(lián)絡信號B口方式口方式1輸出時輸出時相應的聯(lián)絡信號相應的聯(lián)絡信號1 0 1 0A口方式口方式1輸出控制字輸出控制字11 0B口方式口方式1輸出控制字輸出控制字PA7PA7PA0PA0PC6PC6PC7PC7PC3PC3INTEAINTEAPC6PC6與門與門OBFOBFA AACKACKA AINTRINTRA AWRWRD7D7D0D0PB7PB7PB0PB0PC2PC2PC1PC1PC0PC0INTEBINTEBPC2PC2與門與門WRWRD7D7D0D0OBFOBFB BACKACKB BINTRINTRB
47、 B62對方式對方式1輸出的端口,輸出的端口,C口提供與外部聯(lián)絡的信號有口提供與外部聯(lián)絡的信號有: OBF 輸出緩沖器滿信號(低電平有效)輸出緩沖器滿信號(低電平有效)當數(shù)據(jù)送至當數(shù)據(jù)送至8255A輸出緩沖器后,輸出緩沖器后,8255A自動發(fā)出。自動發(fā)出。 表示表示CPU送來的數(shù)據(jù)已進入送來的數(shù)據(jù)已進入8255A輸出端口,輸出端口, 可用來通知外設把數(shù)據(jù)取走??捎脕硗ㄖ庠O把數(shù)據(jù)取走。 ACK 外設響應信號(低電平有效)外設響應信號(低電平有效) 由外設發(fā)出,送給由外設發(fā)出,送給8255A。 作用是通知作用是通知 8255A 輸出端口的數(shù)據(jù)已被外設取走,輸出端口的數(shù)據(jù)已被外設取走, 可以傳送下
48、一個數(shù)據(jù)??梢詡魉拖乱粋€數(shù)據(jù)。 INTR 中斷申請信號(高電平或上升沿有效)中斷申請信號(高電平或上升沿有效) 8255A 發(fā)出發(fā)出, 用來向用來向CPU發(fā)出中斷申請。發(fā)出中斷申請。當當OBF 、ACK、INTE均為時,均為時,8255A自動發(fā)出自動發(fā)出INTR。PA7PA7PA0PA0PC6PC6PC7PC7PC3PC3INTEAINTEAPC6PC6與門與門OBFOBFA AACKACKA AINTRINTRA A63對方式對方式1輸出的端口,輸出的端口,8255A內(nèi)部的控制信號有:內(nèi)部的控制信號有: INTE 中斷允許控制信號中斷允許控制信號 作用是控制是否允許中斷申請信號作用是控制是否
49、允許中斷申請信號INTR發(fā)出。發(fā)出。PA7PA7PA0PA0PC6PC6PC7PC7PC3PC3INTEAINTEAPC6PC6與門與門OBFOBFA AACKACKA AINTRINTRA A 此信號無引出此信號無引出,通過,通過控制口控制口對對C口相應位的置位口相應位的置位/復位復位設置設置允許或不允許允許或不允許。 A口,口,對對PC6置置位位, 使使INTEA=1, 允許允許中斷中斷 對對PC6復復位位, 使使INTEA=0, 不允許不允許中斷中斷 B口,口,對對PC2置置位位, 使使INTEB=1, 允許允許中斷中斷 對對PC2復復位位, 使使INTEB=0, 不允許不允許中斷中斷6
50、4D7D0送往外設數(shù)據(jù)送往外設數(shù)據(jù)數(shù)據(jù)寫入端口數(shù)據(jù)寫入端口WROBFINTRACK當當INTE=1時時 方式方式1的輸出時序:的輸出時序:向工作在方式向工作在方式1下的輸出端口輸出數(shù)據(jù)時,下的輸出端口輸出數(shù)據(jù)時,有關信號的變化關系。有關信號的變化關系。PA7PA7PA0PA0PC6PC6PC7PC7PC3PC3INTEAINTEAPC6PC6與門與門OBFAOBFAACKAACKAINTRAINTRAWRWRD7D7D0D065 CPU輸出數(shù)據(jù)輸出數(shù)據(jù) CPU發(fā)出發(fā)出WR: (1) 數(shù)據(jù)寫到數(shù)據(jù)寫到 8255A的端口的端口 (2) 使使OBF有效,表示輸出端口滿,有效,表示輸出端口滿, 可作為
51、外設的選通信號可作為外設的選通信號,通知外設取數(shù)據(jù)。通知外設取數(shù)據(jù)。 (3)清除中斷請求信號清除中斷請求信號INTR 外設接受到數(shù)據(jù)后,發(fā)出外設接受到數(shù)據(jù)后,發(fā)出ACK信號信號: (1) ACK的下降沿使的下降沿使OBF變高,變高, (2) 當當INTE=1, ACK的上升沿使的上升沿使INTR變高,變高, 發(fā)出中斷請求,請求發(fā)出中斷請求,請求CPU輸出新的數(shù)據(jù)。輸出新的數(shù)據(jù)。D7D7D0D0INTRWROBFACK當當INTE=1時時 送往外設數(shù)據(jù)送往外設數(shù)據(jù)數(shù)據(jù)寫入端口數(shù)據(jù)寫入端口PA7PA7PA0PA0PC6PC6PC7PC7PC3PC3INTEAINTEAPC6PC6與門與門OBFAOBFAACKAA
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 主管全年目標安排任務計劃
- 2024全新高空作業(yè)升降機租賃合同附帶設備升級改造服務3篇
- 2024年模特拍攝與時尚品牌合作推廣合同3篇
- 自我鑒定500字大專
- 幼兒園科學教案《奇妙的鹽水》及教學反思
- 工程訓練實習總結報告
- 資源環(huán)境行業(yè)采購工作總結
- 建筑設計美工工作總結
- 2024年版權許可使用合同標的詳解
- 家居行業(yè)美工家具設計家居裝飾方案
- DB31∕T 1154-2019 手術室X射線影像診斷放射防護及檢測要求
- 花崗巖檢測報告-實用文檔
- 保育員(高級)考試題庫附答案(600題)
- 全廣東江門市蓬江區(qū)2022年九年級數(shù)學上學期期末試題含答案
- 國家文化安全戰(zhàn)略研究論文
- 中國傳統(tǒng)文化英語(課堂PPT)
- 二十五項反措檢查表優(yōu)質(zhì)資料
- GS020汽車發(fā)動機底蓋沖壓模具的設計與制造
- 《組織行為學》個案例及參考答案
- 山東省建筑消耗量定額
- 華西麻醉科麻醉記錄單填寫規(guī)范
評論
0/150
提交評論