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

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第6章如何學(xué)習(xí)接口技術(shù)部分?注意其軟硬結(jié)合的特點(diǎn)根據(jù)應(yīng)用系統(tǒng)的需要,使用和構(gòu)造相應(yīng)的接口電路,編制配套的接口程序,支持和連接有關(guān)的設(shè)備第6章基本輸入輸出接口教學(xué)重點(diǎn)

I/O接口電路的典型結(jié)構(gòu)無條件傳送方式查詢傳送方式

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

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

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

mov

al,bvar

;bvar是字節(jié)變量

movdx,300h

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

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

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

inal,dx

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

notal ;反相

outdx,al

;送輸出端口顯示

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

jmpnext ;重復(fù)6.3查詢傳送方式及其接口CPU需要先了解(查詢)外設(shè)的工作狀態(tài),然后在外設(shè)可以交換信息的情況下(就緒)實(shí)現(xiàn)數(shù)據(jù)輸入或輸出對(duì)多個(gè)外設(shè)的情況,則CPU按一定順序依次查詢(輪詢)。先查詢的外設(shè)將優(yōu)先進(jìn)行數(shù)據(jù)交換查詢傳送的兩個(gè)環(huán)節(jié)⑴查詢環(huán)節(jié)尋址狀態(tài)口讀取狀態(tài)寄存器的標(biāo)志位若不就緒就繼續(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輸入設(shè)備IORSTB

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

inal,dx

;讀狀態(tài)端口

testal,01h

;測(cè)試標(biāo)志位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輸出設(shè)備ACKIOWIOR

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

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

testal,80h

;測(cè)試標(biāo)志位D7

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

incdx

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

mov

al,buf

;變量buf送AL

outdx,al

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

譯碼

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

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

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論