微機原理第06章_第1頁
微機原理第06章_第2頁
微機原理第06章_第3頁
微機原理第06章_第4頁
微機原理第06章_第5頁
已閱讀5頁,還剩34頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第6章如何學習接口技術部分?注意其軟硬結合的特點根據(jù)應用系統(tǒng)的需要,使用和構造相應的接口電路,編制配套的接口程序,支持和連接有關的設備第6章基本輸入輸出接口教學重點

I/O接口電路的典型結構無條件傳送方式查詢傳送方式

中斷工作過程6.1I/O接口概述為什么需要I/O接口(電路)?微機的外部設備多種多樣輸入設備鍵盤、鼠標、掃描儀…輸出設備顯示器、打印機、繪圖儀…復合輸入輸出設備外存儲設備工作原理、驅動方式、信息格式、以及工作速度方面彼此差別很大因此,它們不能與CPU直接相連,必須經(jīng)過中間電路再與系統(tǒng)相連,這部分電路被稱為I/O接口電路6.1I/O接口概述(續(xù)1)什么是I/O接口(電路)?I/O接口是位于系統(tǒng)與外設間、用來協(xié)助完成數(shù)據(jù)傳送和控制任務的邏輯電路PC機系統(tǒng)板的可編程接口芯片、I/O總線槽的電路板(適配器)都是接口電路CPU接口電路

I/O設備6.1.1I/O接口的主要功能⑴對輸入輸出數(shù)據(jù)進行緩沖和鎖存輸出接口有鎖存環(huán)節(jié);輸入接口有緩沖環(huán)節(jié)實際的電路常見:輸出鎖存緩沖環(huán)節(jié)、輸入鎖存緩沖環(huán)節(jié)⑵對信號的形式和數(shù)據(jù)的格式進行變換微機直接處理:數(shù)字量、開關量⑶對I/O端口進行尋址⑷與CPU和I/O設備進行聯(lián)絡6.1.2I/O接口的典型結構控制總線CB地址總線ABI/O接口電路數(shù)據(jù)控制狀態(tài)數(shù)據(jù)總線DBCPU外設控制寄存器狀態(tài)寄存器數(shù)據(jù)寄存器1.接口電路的內(nèi)部結構2.接口電路的外部特性3.接口電路芯片的分類4.接口電路的可編程性1.接口電路的內(nèi)部結構CPU與外設主要有數(shù)據(jù)、狀態(tài)和控制信息需要相互交換,于是從應用角度看內(nèi)部:⑴數(shù)據(jù)寄存器輸入數(shù)據(jù)寄存器:保存外設給CPU的數(shù)據(jù)輸出數(shù)據(jù)寄存器:保存CPU給外設的數(shù)據(jù)⑵狀態(tài)寄存器保存外設或接口電路的狀態(tài)⑶控制寄存器保存CPU給外設或接口電路的命令2.接口電路的外部特性主要體現(xiàn)在引腳上,分成兩側信號面向CPU一側的信號:用于與CPU連接主要是數(shù)據(jù)、地址和控制信號面向外設一側的信號:用于與外設連接提供的信號五花八門功能定義、時序及有效電平等差異較大3.接口電路芯片的分類接口電路核心部分往往是一塊或數(shù)塊大規(guī)模集成電路芯片(接口芯片),按功能分:通用接口芯片支持通用的數(shù)據(jù)輸入輸出和控制的接口芯片面向外設的專用接口芯片針對某種外設設計,僅用于某些特定的外設接口

面向微機系統(tǒng)的專用接口芯片與CPU和系統(tǒng)配套使用,以增強其總體功能4.接口電路的可編程性許多接口電路具有多種功能和工作方式,可以通過編程的方法選定其中一種接口需進行物理連接,還需編寫接口軟件接口軟件有兩類:初始化程序段——設定芯片工作方式等數(shù)據(jù)交換程序段——管理、控制、驅動外設,負責外設和系統(tǒng)間信息交換6.1.3I/O端口的編址接口電路占用的I/O端口有兩類編排形式I/O端口單獨編址I/O地址空間獨立于存儲地址空間如8086/8088I/O端口與存儲器統(tǒng)一編址它們共享一個地址空間如M6800⑴I/O端口單獨編址優(yōu)點:I/O端口的地址空間獨立控制和地址譯碼電路相對簡單專門的I/O指令使程序清晰易讀缺點:I/O指令沒有存儲器指令豐富內(nèi)存空間I/O空間FFFFF0FFFF80x86采用I/O端口獨立編址⑵I/O端口與存儲器統(tǒng)一編址優(yōu)點:不需要專門的I/O指令I/O數(shù)據(jù)存取與存儲器數(shù)據(jù)存取一樣靈活缺點:I/O端口要占去部分存儲器地址空間程序不易閱讀(不易分清訪存和訪問外設)內(nèi)存部分I/O部分存儲器空間00000FFFFF6.1.48088/8086的輸入輸出指令輸入指令(IN:將外設數(shù)據(jù)傳送給CPU內(nèi)的AL/AX)INAL,i8 ;字節(jié)輸入INAL,DX ;字節(jié)輸入INAX,i8 ;字輸入INAX,DX ;字輸入輸出指令(OUT:將CPU內(nèi)的AL/AX數(shù)據(jù)傳送給外設)OUTi8,AL ;字節(jié)輸出OUTDX,AL ;字節(jié)輸出OUTi8,AX ;字輸出OUTDX,AX ;字輸出演示演示8088/8086的I/O端口8088/8086用于尋址外設端口的地址線為16條(A0~A15)端口最多為216=65536(64K)個,端口號為0000H~FFFFH每個端口用于傳送一個字節(jié)的外設數(shù)據(jù)I/O尋址方式8088/8086的端口有64K個,無需分段,設計有兩種尋址方式直接尋址:只用于尋址00H~FFH前256個端口,操作數(shù)i8表示端口號間接尋址:可用于尋址全部64K個端口,DX寄存器的值就是端口號對大于FFH的端口只能采用間接尋址方式數(shù)據(jù)交換方式如果輸入輸出一個字節(jié),利用AL寄存器如果輸入輸出一個字,利用AX寄存器實質(zhì)是將兩個字節(jié)的內(nèi)容與連續(xù)兩個端口進行傳送:低I/O地址端口與AL傳送,高I/O地址端口與AH傳送,仍是“低對低、高對高”的形式對外部數(shù)據(jù)總線是8位的8088或8位數(shù)據(jù)總線的接口電路來說,一般只采用字節(jié)輸入輸出方式。IN指令實例(從20H端口輸入一個字);方法1:直接尋址,字量輸入

inax,20h;方法2:間接尋址,字量輸入

movdx,20h inax,dx;方法3:直接尋址,字節(jié)量輸入

inal,21h

mov

ah,al

inal,20h;方法4:間接尋址,字節(jié)量輸入

movdx,21h

inal,dx

mov

ah,al

dec

dx

inal,dxOUT指令實例(向300H端口輸出一個字節(jié));唯一的方法:間接尋址,字節(jié)量輸出

mov

al,bvar

;bvar是字節(jié)變量

movdx,300h

outdx,al6.1.5I/O地址的譯碼I/O地址的譯碼方法有一些特點:每個接口電路通常只占用幾個I/O地址,這時可以利用基本邏輯門電路進行地址譯碼除采用譯碼器、門電路進行譯碼外,I/O地址譯碼還經(jīng)常采用可編程邏輯器件PLDIBMPC/AT主機板的I/O譯碼電路接口芯片內(nèi)部譯碼DMA控制器1中斷控制器1定時計數(shù)器并行接口電路DMA頁面寄存器中斷控制器2DMA控制器2協(xié)處理器ALS138譯碼器A0~A4A5A6A7A8A9HLDAMASTERABCE1E2E3Y0Y1Y2Y3Y4Y5Y6Y7IBMPC/XT主機板的I/O譯碼電路Y0Y1Y2Y3Y4Y5Y6Y7A5A6A7A8A9AENIOWAB

CG2BG2AG174LS138DMACS(8237)INTRCS(8259)T/CCS(8253)PPICS(8255)WRTDMAPG(寫DMA頁面寄存器)WRTNMIREG(寫NMI屏蔽寄存器)邏輯門電路進行I/O地址譯碼A9A8A7A6A5A2A4A3AENA1A074LS033E7H6.1.6數(shù)據(jù)傳送方式程序控制下的數(shù)據(jù)傳送通過CPU執(zhí)行程序中的I/O指令來完成傳送。無條件傳送、查詢傳送、中斷傳送直接存儲器存?。―MA)DMAC利用系統(tǒng)總線來完成外設和存儲器間的數(shù)據(jù)傳送I/O處理機CPU委托專門的I/O處理機來管理外設,完成傳送和相應的數(shù)據(jù)處理6.2無條件傳送方式及其接口定義:CPU與某些特殊設備交換數(shù)據(jù),可以認為它們總是處于“就緒”狀態(tài),隨時可以進行數(shù)據(jù)傳送,這種傳送即為無條件傳送。也稱立即傳送或同步傳送適合于簡單設備,如LED數(shù)碼管、按鍵或按鈕等傳送前提:外設必須隨時就緒無條件傳送的接口和操作均十分簡單流程無條件傳送:輸入示例MOV DX,160HINAL,DX無條件傳送:輸入實例MOV DX,160HINAL,DX74LS244+5V10Kx8G1G2數(shù)據(jù)總線CSRD無條件傳送:輸出示例MOVDX,160HMOVAL,[BX]OUTDX,AL無條件傳送:輸出實例MOVDX,160HMOVAL,[BX]OUTDX,AL+5V74LS373300

x8LEOE數(shù)據(jù)總線CSWR無條件傳送:輸入輸出接口K7K1K0+5VD0~D7A0~A15CLKLS06反相驅動器LS2738D鎖存器LS244三態(tài)緩沖器8000H譯碼+5VLED0LED7……GIOWIORnext: movdx,8000h ;DX指向數(shù)據(jù)端口

inal,dx

;從輸入端口讀開關狀態(tài)

notal ;反相

outdx,al

;送輸出端口顯示

calldelay ;調(diào)子程序延時

jmpnext ;重復6.3查詢傳送方式及其接口CPU需要先了解(查詢)外設的工作狀態(tài),然后在外設可以交換信息的情況下(就緒)實現(xiàn)數(shù)據(jù)輸入或輸出對多個外設的情況,則CPU按一定順序依次查詢(輪詢)。先查詢的外設將優(yōu)先進行數(shù)據(jù)交換查詢傳送的兩個環(huán)節(jié)⑴查詢環(huán)節(jié)尋址狀態(tài)口讀取狀態(tài)寄存器的標志位若不就緒就繼續(xù)查詢,直至就緒⑵傳送環(huán)節(jié)尋址數(shù)據(jù)口是輸入,通過輸入指令從數(shù)據(jù)端口讀入數(shù)據(jù)是輸出,通過輸出指令向數(shù)據(jù)端口輸出數(shù)據(jù)輸入狀態(tài)就緒?數(shù)據(jù)交換YN流程6.3.1查詢輸入接口IOR+5V8D鎖存器8位三態(tài)緩沖器譯碼1位三態(tài)緩沖器RQ

A0~A158000H8001HD0~D7D0D輸入設備IORSTB

movdx,8000h ;DX指向狀態(tài)端口status:

inal,dx

;讀狀態(tài)端口

testal,01h

;測試標志位D0

jzstatus ;D0=0,未就緒,繼續(xù)查詢

incdx

;D0=1,就緒,DX指向數(shù)據(jù)端口

inal,dx

;從數(shù)據(jù)端口輸入數(shù)據(jù)6.3.2查詢輸出接口8D鎖存器譯碼1位三態(tài)緩沖器RQ

A0~A158000H8001HD0~D7D7D+5V輸出設備ACKIOWIOR

movdx,8000h ;DX指向狀態(tài)端口status: inal,dx

;讀取狀態(tài)端口的狀態(tài)數(shù)據(jù)

testal,80h

;測試標志位D7

jnzstatus ;D7=1,未就緒,繼續(xù)查詢

incdx

;D7=0,就緒,DX指向數(shù)據(jù)端口

mov

al,buf

;變量buf送AL

outdx,al

;將數(shù)據(jù)輸出給數(shù)據(jù)端口6.4中斷傳送方式斷點主程序中斷服務程序中斷請求對外設進行處理繼續(xù)執(zhí)行返回斷點CPU在執(zhí)行程序中,被內(nèi)部或外部的事件所打斷,轉去執(zhí)行一段預先安排好的處理該事件的服務程序;服務結束后,又返回原來的斷點,繼續(xù)執(zhí)行原來的程序流程6.4.1中斷傳送與接口中斷傳送是一種效率更高的程序傳送方式進行傳送的中斷服務程序是預先設計好的中斷請求是外設隨機向CPU提出的CPU對請求的檢測是有規(guī)律的:一般是在每條指令的最后一個時鐘周期采樣中斷請求輸入引腳中斷不但在輸入和輸出方面有應用,在其他方面還有著非常廣泛的應用中斷輸入接口D0~D7+5V8D鎖存器8位三態(tài)緩沖器三態(tài)緩沖器RQ

譯碼

8001H中斷向量號D0~D7INTRD輸入設備中斷允許觸發(fā)器A0~A15中斷請求觸發(fā)器IORINTASTB中斷工作過程中斷處理是進行數(shù)據(jù)交換的實質(zhì)性環(huán)節(jié)6.4.2中斷工作過程中斷請求中斷響應關中斷斷點保護中斷識別現(xiàn)場保護中斷服務恢復現(xiàn)場開中斷中斷返回中斷服務是進行數(shù)據(jù)交換的實質(zhì)性環(huán)節(jié)中斷源的識別:1.向量中斷2.中斷查詢中斷查詢接口A0~A15鎖存器INTR三態(tài)緩沖器譯碼

8001HD0~D7中斷A中斷B中斷C……IOR返回6.4.3中斷優(yōu)先權系統(tǒng)有多個中斷同時請求,CPU如何應對?中斷處理過程中,又有中斷提出請求,怎么辦?中斷優(yōu)先權排隊中斷嵌套鏈式優(yōu)先權排隊電路(圖6-15)優(yōu)先權編碼電路(圖6-16)6.5DMA傳送方式希望克服程序控制傳送的不足:外設→CPU→存儲器外設←CPU←存儲器直接存儲器存取DMA:外設→存儲器外設←存儲器CPU釋放總線,由DMA控制器管理DMA傳送的工作過程⑴CPU對DMA控制器進行初始化設置⑵外設、DMAC和CPU三者通過應答信號建立聯(lián)系:CPU將總線交給DMAC控制⑶DMA傳送DMA讀(存儲器):存儲器→外設DMA寫(存儲器):存儲器←外設⑷自動增減地址和計數(shù),判斷傳送完成否DMA傳送流程HLDA發(fā)存儲器地址傳送數(shù)據(jù)傳送結束?DMA結束修改地址指針流程##@@傳送方式的比較無條件傳送:查詢傳送:簡單實用,效率較低中斷傳送:外設主動,可與CPU并行工作,但每次傳送需要大量額外時間開銷DMA傳送:DMAC控制,外設直接和存儲器進行數(shù)據(jù)傳送,適合大量、快速數(shù)據(jù)傳送第6章:教學要求1.了解I/O接口電路的主要功能、內(nèi)部和外部特點、端口編址方法、I/O地址譯碼特點2.掌握輸入輸出指令3.掌握無條件、查詢傳送方式4.了解DMA傳送的工作過程6.1~6.3,6.6,6.10多種多樣的外設工作原理不同機械、電子、機電、電磁……傳送信息類型多樣數(shù)字量、模擬量、開關量傳送速度差別極大傳送方式不盡相同串行

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論