第9章-擴展IO接口設計_第1頁
第9章-擴展IO接口設計_第2頁
第9章-擴展IO接口設計_第3頁
第9章-擴展IO接口設計_第4頁
第9章-擴展IO接口設計_第5頁
已閱讀5頁,還剩65頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、 9.1 I/O接口基本模型接口基本模型微型計算機系統可通過系統總線與外設微型計算機系統可通過系統總線與外設相連,進行系統的擴展與開發,而外設必須相連,進行系統的擴展與開發,而外設必須通過通過接口接口才能與才能與CPU交換信息。交換信息。CPU或或 系統總線系統總線I/O 接口接口電路電路外外設設9.1.1 I/O接口的交換信息接口的交換信息(1) 數字量數字量 由鍵盤、光電輸入機等輸入的信息。由鍵盤、光電輸入機等輸入的信息。(通常以二進制表示的數或以通常以二進制表示的數或以 ASCII 碼表示碼表示的數或字符的數或字符) CPU與外設交換的基本信息是數與外設交換的基本信息是數據,有三種類型:

2、據,有三種類型:(2) 模擬量模擬量非電量信息非電量信息傳感器傳感器電量電量信號信號處理處理A/DCPU(3) 開關量開關量兩個狀態的量兩個狀態的量 (可以用可以用0、1表示表示)例如電機的啟與停,開關的合與開等。例如電機的啟與停,開關的合與開等。輸入時,輸入設備是否準備好?輸入時,輸入設備是否準備好? (READY)輸出時,輸出設備是否空閑?輸出時,輸出設備是否空閑?(BUSY)反映當前外設工作狀態的信息,例如:反映當前外設工作狀態的信息,例如:例如控制例如控制I/O 設備啟動或停止等。設備啟動或停止等。CPUI/O設備設備 I/O接口接口123ABDBCBDATASTATUSCONTROL

3、CPU 與外設之間的接口信息與外設之間的接口信息 通過接口輸出用以控制外設工作的信息。通過接口輸出用以控制外設工作的信息。(1 1)速度的匹配)速度的匹配 外設的讀寫速度可能很慢。外設的讀寫速度可能很慢。CPUCPU與端口進行快與端口進行快速數據交換,端口與外設進行慢速交換。速數據交換,端口與外設進行慢速交換。端口端口作為微型機與外設間傳遞數據的中間作為微型機與外設間傳遞數據的中間緩沖站緩沖站。9.1.2 I/O接口的功能接口的功能(2 2)信息格式的變換)信息格式的變換 外部設備的數據形式可能是外部設備的數據形式可能是數字量、模擬量或數字量、模擬量或開關量開關量等,數字量可能采用等,數字量可

4、能采用并行方式或串行并行方式或串行方式方式。接口電路的功能之一是將不同信息格。接口電路的功能之一是將不同信息格式變換為式變換為CPU能接收的標準并行信息能接收的標準并行信息,如串,如串并轉換、并轉換、A/D、D/A轉換等。轉換等。(4 4)信號電平的匹配)信號電平的匹配 即電平配合、信號類型、信號電平、信號格式等的轉換即電平配合、信號類型、信號電平、信號格式等的轉換(3 3)時序的匹配)時序的匹配 CPUCPU時序與外設時序可能不一致,由接口電路實現匹配。時序與外設時序可能不一致,由接口電路實現匹配。(5 5)數據緩沖)數據緩沖 對所傳送的數據提供緩沖、隔離以及寄存的功能。對所傳送的數據提供緩

5、沖、隔離以及寄存的功能。(7 7)校驗和檢查)校驗和檢查 在微機系統中,通常為在微機系統中,通常為I/O接口配備有校驗功能,并接口配備有校驗功能,并且可以將出錯信息報告給微處理器。且可以將出錯信息報告給微處理器。(6 6)地址譯碼)地址譯碼 通過地址譯碼電路對外圍設備通過地址譯碼電路對外圍設備I/O地址尋址。地址尋址。外部設備與微處理器進行信息交換必外部設備與微處理器進行信息交換必須通過訪問該外設相對應的端口來實現。須通過訪問該外設相對應的端口來實現。具體訪問這些外設端口的過程叫做具體訪問這些外設端口的過程叫做尋址尋址。 通常有兩種尋址方式:通常有兩種尋址方式:存儲器映像的存儲器映像的I/OI

6、/O尋址方式尋址方式和和I/OI/O端口單獨尋址方式端口單獨尋址方式。9.1.3 I/O 端口及其尋址方式端口及其尋址方式9.1.4 I/O接口的數據傳送方式接口的數據傳送方式微處理器與外設間的數據傳送微處理器與外設間的數據傳送通常包括通常包括無無條件傳送條件傳送、查詢傳送、查詢傳送、 中斷傳送、中斷傳送、以及以及DMA方式方式。1、無條件傳送方式、無條件傳送方式 無條件傳送一般適合于數據傳送不太頻無條件傳送一般適合于數據傳送不太頻繁的情況,如對開關、數碼顯示器等一些簡繁的情況,如對開關、數碼顯示器等一些簡單外設的操作。所謂單外設的操作。所謂無條件無條件,就是,就是假設外設假設外設已處于已處于

7、就緒就緒狀態,數據狀態,數據傳送時傳送時,程序就,程序就不必不必再去再去查詢外設查詢外設的的狀態狀態,而,而直接執行直接執行相應指令指令進行數據傳輸。進行數據傳輸。2、條件傳送方式、條件傳送方式 條件傳送也稱為條件傳送也稱為查詢傳送查詢傳送方式方式。它在執行輸入輸出操作。它在執行輸入輸出操作之前,需通過之前,需通過測試測試程序對程序對外部外部設備的狀態設備的狀態進行檢查。當所選進行檢查。當所選定的外設已準備定的外設已準備“就緒就緒”后后,才開始才開始進行輸入輸出進行輸入輸出操作。操作。 查詢傳送方式流程圖 查詢傳送方式工作流程包括三個基本工作環節查詢傳送方式工作流程包括三個基本工作環節 (2

8、2)查詢環節)查詢環節 CPUCPU從讀取狀態寄存器的標志位。從讀取狀態寄存器的標志位。(3 3)傳送環節)傳送環節 當上一環節完成后,將對數據口實現尋址,當上一環節完成后,將對數據口實現尋址,從數據端口輸入數據,或從數據端口輸出數從數據端口輸入數據,或從數據端口輸出數據。據。 (1 1)讀取狀態字)讀取狀態字主要通過檢測狀態寄存器的標志位來檢查外主要通過檢測狀態寄存器的標志位來檢查外設是否設是否“就緒就緒”。3、 中斷傳送方式中斷傳送方式為了進一步提高為了進一步提高CPU的效率和使系的效率和使系統有實時性能,可以采用中斷傳送方式。統有實時性能,可以采用中斷傳送方式。在中斷傳送方式下,當外設準

9、備好時,在中斷傳送方式下,當外設準備好時,主主動動向向CPU發出中斷請求,請求發出中斷請求,請求CPU進行進行數據的輸入輸出。數據的輸入輸出。中斷方式的數據輸入中斷方式的數據輸入 采用中斷傳送方式時采用中斷傳送方式時,外設處于主動地位外設處于主動地位,無無需需CPU花費大量時間去查詢外設的工作狀態?;ㄙM大量時間去查詢外設的工作狀態。與程序方式相比,大大提高了與程序方式相比,大大提高了CPU的效率。的效率。外設請求中斷外設請求中斷 INTR有效有效主程序主程序中斷服務程序中斷服務程序輸入輸入 數據數據外設準備數據外設準備數據4、DMA方式方式DMA (Direct Memory Access):

10、 是存儲是存儲器與外設或存儲器之間進行大量數據傳器與外設或存儲器之間進行大量數據傳送的方法,是在送的方法,是在DMA控制器控制器(DMAC)的控制下進行的。的控制下進行的。CPU總 線存儲器外設程序控制的數據輸入/輸出DMADMA與程序控制數據傳送路徑比較與程序控制數據傳送路徑比較傳送方式的比較 無條件傳送:慢速外設需與CPU保持同步 查詢傳送: 簡單實用,效率較低 中斷傳送:外設主動,可與CPU并行工作,但每次傳送需要大量額外時間開銷 DMA傳送:DMAC控制,外設直接和存儲器進行數據傳送,適合大量、快速數據傳送 并行通信是以微處理器的字長為傳輸單并行通信是以微處理器的字長為傳輸單位;適合于

11、外部設備與微機之間進行近距位;適合于外部設備與微機之間進行近距離、大量和快速的信息交換。離、大量和快速的信息交換。 實現并行通信的接口稱之為并實現并行通信的接口稱之為并行接口。行接口。9.2 8255A概述概述 21西北農林科技大學水利與建筑工程學院 Intel公司的80/85系列接口電路都可以直接與MCS-51接口。常用的接口器件為: 8255:可編程通用并行接口電路; 8253/8254:可編程定時/計數器; 8155/8156:可編程RAM/IO/TIMER擴展芯片; 8251:可編程串行接口電路; 8279:可編程鍵盤顯示接口電路; 以上器件最大的特點是工作方式的確定和改變需要軟件實現

12、。因此稱為可編程接口芯片。并行輸入并行輸入/輸出端口輸出端口A、B、C: 8255A芯片具有芯片具有24個可編程輸入個可編程輸入輸出引腳,分成輸出引腳,分成3個個8位端口。位端口。9.2.1 可編程并行通信接口可編程并行通信接口8255A8 2 5 5 A采用采用40線雙線雙列直插封裝,列直插封裝,引 腳 圖 如 圖引 腳 圖 如 圖所示。所示。8255A引腳定義4 3 2 1 40371834.27D7D0A0A1CSRDRESETVCCGND986535368255APPI數據總線數據總線控制線控制線電源線電源線通道通道A通道通道B通道通道CCPU接口外設接口.PA7PA0.PB7PB0.

13、PC7PC0WR25141516 171312 11 10 8255A的引腳的引腳一、一、8255A的內部結構的內部結構數據數據總線總線緩沖器緩沖器內部控制線內部控制線內部數據線內部數據線D0D7A組組控制控制A組組端口端口AA組組端口端口C上部上部B組組控制控制B組組端口端口BB組組端口端口C下部下部讀寫讀寫控制控制邏輯邏輯PC0PC3PB0PB7PC4PC7PA0PA7RDWRA0A1CSRESET數據總線緩沖器、數據總線緩沖器、讀寫控制部件、讀寫控制部件、A組和組和B組控制部件、端口組控制部件、端口A、B、C。A組組A口:PA0PA7C口的高4位:PC4PC7B組組B口:PB0PB7C口

14、的低4位:PC0PC3 CS:片選信號,接片選信號,接CPU高位地址的譯碼輸出高位地址的譯碼輸出WR:寫信號,寫信號,WR有效時,有效時,CPU向向8255A寫入寫入的控制或數據信息。的控制或數據信息。RD:讀信號讀信號,RD有效時有效時,CPU讀讀8255A的數據或的數據或狀狀 態;態;RESET:復位信號。復位信號。RESET有效時,清有效時,清 8255A 所有控制寄存器內容,所有控制寄存器內容, 并將各端口置成輸入方式。并將各端口置成輸入方式。表9.1 8255A的端口選擇表1. 控制字控制字控制字和各位的含義如圖所示??刂谱趾透魑坏暮x如圖所示。8255A的控制字及其工作方式的控制字

15、及其工作方式D7 D6 D5 D4 D3 D2 D1 D0B組組端口端口C(PC3PC0)1=輸入,輸入, 0=輸出輸出端口端口B1=輸入,輸入,0=輸出輸出方式選擇方式選擇0方式方式0, 1=方式方式1A組組端口端口C(PC7PC4)1=輸入,輸入, 0=輸出輸出端口端口A1=輸入,輸入,0=輸出輸出方式選擇方式選擇00端口端口A方式方式0, 01=端口端口A方式方式1,1 =端口端口A方式方式2方式設置標志方式設置標志1=有效有效8255A工作方式控制字格式工作方式控制字格式(2) (2) 端口端口C C的置位的置位/ /復位控制字復位控制字控制字的格式如圖所示??刂谱值母袷饺鐖D所示。82

16、55A 置位置位/復位控制字格式復位控制字格式D7 D6 D5 D4 D3 D2 D1 D0位的置位位的置位/復位復位1=置位,置位,0=復位復位位位 選選 擇擇D3 D2 D1 通道通道C位位按位置位按位置位/復位控制復位控制標志標志0=有效有效0 0 0 PC00 0 1 PC10 1 0 PC20 1 1 PC31 0 0 PC41 0 1 PC51 1 0 PC61 1 1 PC7不使用不使用設置為設置為000關于控制字要說明幾點:關于控制字要說明幾點:(1) 方式方式0 基本輸入基本輸入/輸出方式輸出方式2. 工作方式工作方式8255A工作方式0控制字格式 (2) 工作方式工作方式1

17、選通式輸入選通式輸入/輸出方式輸出方式 方式方式1選通輸入選通輸入方式方式1操作使端口操作使端口A或端口或端口B作為鎖存輸入作為鎖存輸入設備工作。端口設備工作。端口C也可按方式也可按方式1操作使用操作使用但不是對數據,而是對控制信號,或當端口但不是對數據,而是對控制信號,或當端口A或端口或端口B為選通輸入端口時的握手信號。為選通輸入端口時的握手信號。下圖示出下圖示出8255A方式方式1選通輸入控制字格選通輸入控制字格式式工作方式1輸入控制字格式方式1輸入引腳:A端口數據選通信號數據選通信號當當STB=0時,時,8255將數據鎖存到將數據鎖存到8255A端口的輸入數據寄存器中。端口的輸入數據寄存

18、器中。 輸入緩沖器滿信號輸入緩沖器滿信號當當IBF=1時,說明外設時,說明外設數據已送到數據已送到8255輸入緩輸入緩沖器,但還沒有被沖器,但還沒有被CPU讀取,通知外設不能再讀取,通知外設不能再發送數據;發送數據;中斷請求信號:中斷請求信號:請求請求CPU接接收數據收數據;使使INTR=1的條件是:的條件是:IBF=1、STB=1和和INTE=l三個條三個條件同時具備。件同時具備。 PC4PC5PC3PA7PA0INTEAIBFAINTRASTBA中斷允許觸發器中斷允許觸發器 當PA或PB為l方式輸入時,各指定PC口的3條線作為8255與外設及CPU之間的應答信號,如圖所示。 比較比較方式1

19、輸入引腳:B端口PC2PC1PC0PB7PB0INTEBIBFBINTRBSTBBPC4PC5PC3PA7PA0INTEAIBFAINTRASTBAIBF:輸入緩沖器滿信號,向外設輸輸入緩沖器滿信號,向外設輸 出,高電平有效。出,高電平有效。STB:選通信號。由外設輸入,低電平選通信號。由外設輸入,低電平 有效。有效。INTR:中斷請求信號,高電平有效。中斷請求信號,高電平有效。INTE:中斷允許信號,它是通過端中斷允許信號,它是通過端口口PC4(端口端口A)或或PC2(端口端口B)的位來編程的內部位。的位來編程的內部位。1方式輸入的工作過程如下: 1)數據輸入時外設為主動地位,當外設數據淮備

20、好后,首先發出STB*信號,把數據輸入到8255A的端口寄存器中。2)在STB下降沿數據鎖存后,引起IBF1,表示輸入緩沖器滿,禁止數據再輸入。3)在STB上升沿后,IBF=1產生中斷請求(若INTE=1),請求CPU讀取輸入的數據:若采用查詢方式可查詢IBF來判斷接口中有無數據。 4)CPU讀取接口時,的下降沿使INTR復位,撤銷中斷請求,的上升沿使IBF=0,表示輸入緩沖器空,可重新輸入下一個數據。 方式方式1選通輸出選通輸出當端口當端口A或端口或端口B為方式為方式1輸出時,各輸出時,各指定指定PC的的3條線作為條線作為8255A與外設及與外設及CPU之之間應答信號。下圖為方式間應答信號。

21、下圖為方式1選通輸出操作的選通輸出操作的內部結構圖。內部結構圖。 圖11.8 方式1輸出控制字格式方式1輸出引腳:A端口外設響應信號:外設響應信號:表示外設已經接收到數據,表示外設已經接收到數據,它是它是外設對外設對OBF信號的應答。信號的應答。輸出緩沖器滿信號:輸出緩沖器滿信號:當當OBF=0時表示時表示CPU已將數已將數據寫到據寫到8255A的輸出端口,通的輸出端口,通知外設來取數據。知外設來取數據。 中斷請求信號:中斷請求信號:請求請求CPU再次輸出再次輸出數據;數據;INTR=1的條件是:的條件是:,也就是也就是輸出緩沖器空輸出緩沖器空OBF=1、應答信號結、應答信號結束(束(ACK=

22、1)和中斷允許)和中斷允許(1NTE=1)。)。PC6PC7PC3PA7PA0INTEAOBFAINTRAACKA中斷允許觸發器比較比較方式1輸出引腳:B端口PC2PC1PC0PB7PB0INTEBOBFBINTRBACKBPC6PC7PC3PA7PA0INTEAOBFAINTRAACKA端口端口A A的的INTEAINTEA對應對應PCPC6 6端口端口B B的的INTEBINTEB對應對應PCPC2 2方式方式1輸出端口狀態輸出端口狀態INTRAPC3PC6PC7PA70方式方式1輸出端口輸出端口APC4,5I/OINTEA2WR方式方式1輸出端口輸出端口BINTRBPC0PC2PC1IN

23、TEBPB70WR(a)端口端口A方式方式1輸出輸出(b)端口端口B方式方式1輸出輸出BOBFBACKAOBFAACKOBF:輸出緩沖器滿信號。向外設輸出緩沖器滿信號。向外設 輸出,低電平有效。輸出,低電平有效。ACK: 外設應答信號。由外設輸外設應答信號。由外設輸 入,低電平有效。入,低電平有效。INTE:中斷允許信號。中斷允許信號。INTR:中斷請求信號。高中斷請求信號。高 電平有效。電平有效。1方式輸出的工作過程如下: 1)數據輸出時CPU為主動地位,向8255A輸出數據,WR的上升沿使OBF=0,表示輸出緩沖器滿,外設可來讀取數據;WR使INTR=0,封鎖中斷請求INTR。2)外設讀取數據后,用ACK回答接口。ACK的下降沿使OBF=1,撤消輸出緩沖器滿信號;ACK的上升沿使INTR=1,請求CPU再輸出下一個數據(若INTE=1)。(3) 工作方式工作方式2 2雙向選通輸入雙向選通輸入/ /輸出方式輸出方式方式方式2只允許只允許A組采用,此時端口組采用,此時端口A變變為雙向,允許數據在

溫馨提示

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

評論

0/150

提交評論