微型計(jì)算機(jī)原理及接口技術(shù)(第五章).ppt
《微型計(jì)算機(jī)原理及接口技術(shù)(第五章).ppt》由會(huì)員分享,可在線閱讀,更多相關(guān)《微型計(jì)算機(jī)原理及接口技術(shù)(第五章).ppt(55頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,本章重點(diǎn):1)簡(jiǎn)單I/O電路2)中斷控制接口芯片8259功能及應(yīng)用3)計(jì)數(shù)計(jì)時(shí)接口芯片8253功能及應(yīng)用4)并行接口芯片8255A功能及應(yīng)用5)以上三個(gè)芯片的實(shí)驗(yàn),微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,5.1概述5.1.1I/O信號(hào)的形式(1)開(kāi)關(guān)量開(kāi)關(guān)量可表示兩個(gè)狀態(tài),如開(kāi)關(guān)的斷開(kāi)和閉合,機(jī)器的運(yùn)轉(zhuǎn)與停止,閥門(mén)的打開(kāi)與關(guān)閉等。這些開(kāi)關(guān)量通常要經(jīng)過(guò)相應(yīng)的電平轉(zhuǎn)換才能與計(jì)算機(jī)連接。開(kāi)關(guān)量只要用一位二進(jìn)制數(shù)即可表示。,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,(2)數(shù)字量數(shù)字量是計(jì)算機(jī)可以直接發(fā)送、接收和處理的數(shù)據(jù)。例如,由鍵盤(pán)、顯示器、打印機(jī)及磁盤(pán)等I/O外設(shè)與CPU交換的信息,它們是以二進(jìn)制形式表示的數(shù)或以ASCII碼表示的數(shù)符。(3)脈沖量這一類信號(hào)的穩(wěn)定狀態(tài)雖然也只有0、1兩種,但更被關(guān)注的是其兩個(gè)穩(wěn)態(tài)之間的變化,例如由“0”變到“1”,稱為信號(hào)發(fā)生正跳變(或信號(hào)的上升沿)。在電路狀態(tài)轉(zhuǎn)換或數(shù)據(jù)選通過(guò)程中,往往是其他信號(hào)都準(zhǔn)備好以后,用某個(gè)脈沖量的跳變來(lái)最后確定動(dòng)作的時(shí)間;有些場(chǎng)合也用脈沖量進(jìn)行計(jì)數(shù)。,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,(4)模擬量當(dāng)計(jì)算機(jī)應(yīng)用于控制系統(tǒng)中時(shí),輸入的信息一般為來(lái)自現(xiàn)場(chǎng)的連續(xù)變化的物理量,如溫度、壓力、流量、位移、濕度等,這些物理量通過(guò)傳感器并經(jīng)放大處理得到模擬電壓或電流,這些模擬量必須先經(jīng)過(guò)模擬量向數(shù)字量的轉(zhuǎn)換(A/D轉(zhuǎn)換)后才能輸入計(jì)算機(jī)。反過(guò)來(lái),計(jì)算機(jī)輸出的控制信號(hào)都是數(shù)字量,也必須先經(jīng)過(guò)數(shù)字量向模擬量的轉(zhuǎn)換(D/A轉(zhuǎn)換),把數(shù)字量轉(zhuǎn)換成模擬量才能去控制現(xiàn)場(chǎng)。,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,5.1.2I/O接口接口是連接計(jì)算機(jī)和I/O設(shè)備的部件,首先是指接口電路,廣義的接口還包括接口電路的管理驅(qū)動(dòng)程序。1.I/O接口的功能(1)信號(hào)的形式變換(2)電平轉(zhuǎn)換和放大(3)鎖存和緩沖(4)I/O定向(5)并行和串行I/O的轉(zhuǎn)換,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,2.I/O的內(nèi)容分類主機(jī)與I/O設(shè)備之間交換的信息可分為數(shù)據(jù)信息、狀態(tài)信息和控制信息三類。(1)數(shù)據(jù)信息I/O的內(nèi)容是以數(shù)字信號(hào)形式表示的數(shù)值或字符,稱為數(shù)據(jù)信息。例如測(cè)量的數(shù)據(jù)結(jié)果,文本文件的內(nèi)容等在傳送過(guò)程中都屬于數(shù)據(jù)信息。通常情況下,數(shù)據(jù)信息是I/O的主要內(nèi)容。,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,(2)狀態(tài)信息狀態(tài)信息作為CPU與外設(shè)之間交換數(shù)據(jù)時(shí)的聯(lián)絡(luò)信息,反映了當(dāng)前外設(shè)所處的工作狀態(tài),是外設(shè)通過(guò)接口送往CPU的。CPU通過(guò)對(duì)外設(shè)狀態(tài)信號(hào)的讀取,可得知輸入設(shè)備的數(shù)據(jù)是否準(zhǔn)備好、輸出設(shè)備是否空閑等情況。對(duì)于輸入設(shè)備,一般用準(zhǔn)備好(READY)信號(hào)的高低來(lái)表明待輸入的數(shù)據(jù)是否準(zhǔn)備就緒;對(duì)于輸出設(shè)備,則用忙(BUSY)信號(hào)的高低表示輸出設(shè)備是否處于空閑狀態(tài),如為空閑狀態(tài),則可接收CPU輸出的信息,否則CPU要暫停送數(shù)。因此,狀態(tài)信息能夠保障CPU與外設(shè)正確地進(jìn)行數(shù)據(jù)交換。,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,(3)控制信息控制信息是CPU通過(guò)接口傳送給外設(shè)的,CPU通過(guò)發(fā)送控制信息設(shè)置外設(shè)(包括接口)的工作模式、控制外設(shè)的工作。如外設(shè)的啟動(dòng)信號(hào)和停止信號(hào)就是常見(jiàn)的控制信息。實(shí)際上,控制信息往往隨著外設(shè)的具體工作原理不同而含義不同。雖然數(shù)據(jù)信息、狀態(tài)信息和控制信息含義各不相同,但在微型計(jì)算機(jī)系統(tǒng)中,CPU通過(guò)接口和外設(shè)交換信息時(shí),只能用輸入指令(IN)和輸出指令(OUT)傳送數(shù)據(jù),所以狀態(tài)信息、控制信息也是被作為數(shù)據(jù)信息來(lái)傳送的,即把狀態(tài)信息作為一種輸入數(shù)據(jù),而把控制信息作為一種輸出數(shù)據(jù),這樣,狀態(tài)信息和控制信息也通過(guò)數(shù)據(jù)總線來(lái)傳送。但在接口中,這三種信息是在不同的寄存器中分別存放的。,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,3.I/O接口的構(gòu)成I/O接口的基本結(jié)構(gòu)如圖5.1所示。每個(gè)接口電路中都包含一組寄存器,CPU與外設(shè)進(jìn)行信息交換時(shí),各類信息在接口中存入不同的寄存器,一般稱這些寄存器為I/O端口,簡(jiǎn)稱為口(Port)。用來(lái)保存CPU和外設(shè)之間傳送的數(shù)據(jù)(如數(shù)字、字符及某種特定的編碼等)、對(duì)輸入/輸出數(shù)據(jù)起緩沖作用的數(shù)據(jù)寄存器稱為數(shù)據(jù)端口;用來(lái)存放外設(shè)或者接口部件本身狀態(tài)的狀態(tài)寄存器稱為狀態(tài)端口;用來(lái)存放CPU發(fā)給外設(shè)的控制命令的控制寄存器稱為控制端口。,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,圖5.1一個(gè)典型的I/O接口,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,5.1.3I/O編址正如每個(gè)存儲(chǔ)單元都有一個(gè)物理地址一樣,每個(gè)端口也有一個(gè)地址與之相對(duì)應(yīng),該地址稱為端口地址。有了端口地址,CPU對(duì)外設(shè)的輸入/輸出操作實(shí)際上就是對(duì)I/O接口中各端口的讀/寫(xiě)操作。數(shù)據(jù)端口可以是單向的也可是雙向的。數(shù)據(jù)是輸入還是輸出,由外設(shè)性質(zhì)決定,對(duì)該端口地址進(jìn)行輸入/輸出操作時(shí),CPU要向接口電路的讀/寫(xiě)控制信號(hào)。由于狀態(tài)端口只做輸入操作,控制端口只做輸出操作,因此,有時(shí)為了節(jié)省系統(tǒng)地址空間,在設(shè)計(jì)接口時(shí)往往將這兩個(gè)端口共用一個(gè)端口地址,再用讀/寫(xiě)信號(hào)來(lái)分別選擇訪問(wèn)。應(yīng)該指出,輸入/輸出操作所用到的地址總是對(duì)端口而言,而不是對(duì)接口而言的。接口和端口是兩個(gè)不同的概念,若干個(gè)端口加上相應(yīng)的控制電路才構(gòu)成接口。,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,微型計(jì)算機(jī)系統(tǒng)中I/O端口編址方式有兩種:存儲(chǔ)器映像編址和I/O端口單獨(dú)編址。1.存儲(chǔ)器映像編址這種編址方式是對(duì)I/O端口和存儲(chǔ)單元按照存儲(chǔ)單元的編址方法統(tǒng)一編排地址號(hào),由I/O端口地址和存儲(chǔ)單元地址共同構(gòu)成一個(gè)統(tǒng)一的地址空間。例如,對(duì)于一個(gè)有16根地址線的微機(jī)系統(tǒng),若采用統(tǒng)一編址方式,其地址空間的結(jié)構(gòu)如下圖所示。,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,采用統(tǒng)一編址方式后系統(tǒng)的特點(diǎn):1)CPU對(duì)I/O端口的輸入/輸出操作如同對(duì)存儲(chǔ)單元的讀/寫(xiě)操作一樣,所有訪問(wèn)內(nèi)存的指令同樣都可用于訪問(wèn)I/O端口。2)簡(jiǎn)化和控制器和指令系統(tǒng)的設(shè)計(jì),無(wú)需專門(mén)的I/O指令,給使用者提供了很大的方便。3)由于I/O端口占用了一部分存儲(chǔ)器地址空間,因而相對(duì)減少了內(nèi)存的地址可用范圍。MCS-51單片機(jī)就是采用存儲(chǔ)器映像編址,因此沒(méi)有專用的I/O指令,地址線16條,存儲(chǔ)器與I/O端口地址共64K。,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,2.I/O端口單獨(dú)編址在這I/O端口單獨(dú)編址方式中,系統(tǒng)建立了兩個(gè)地址空間,一個(gè)為內(nèi)存地址空間,一個(gè)為I/O地址空間。內(nèi)存地址空間和I/O地址空間是相對(duì)獨(dú)立的,通過(guò)控制總線來(lái)確定CPU到底要訪問(wèn)內(nèi)存還是I/O端口。為確??刂瓶偩€發(fā)出正確的信號(hào),除了要有訪問(wèn)內(nèi)存的指令之外,系統(tǒng)還要提供用于CPU與I/O端口之間進(jìn)行數(shù)據(jù)傳輸?shù)妮斎?輸出指令。,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,80 x86CPU組成的微機(jī)系統(tǒng)都采用獨(dú)立編址方式。在8086/8088系統(tǒng)中,共有20根地址線對(duì)內(nèi)存尋址,內(nèi)存的地址范圍是00000H~FFFFFH;用地址總線的低16位對(duì)I/O端口尋址,所以I/O端口的地址范圍是0000H~FFFFH,如下圖所示。CPU在訪問(wèn)內(nèi)存和外設(shè)時(shí),使用了不同的控制信號(hào)來(lái)加以區(qū)分。例如,當(dāng)8086CPU的M/IO信號(hào)為1時(shí),表示地址總線上的地址是一個(gè)內(nèi)存地址;為0時(shí),則表示地址總線上的地址是一個(gè)端口地址。,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,I/O端口與內(nèi)存單元獨(dú)立編址,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,采用I/O獨(dú)立編址后系統(tǒng)的特點(diǎn):1)采用獨(dú)立編址方式后,存儲(chǔ)器地址空間不受I/O端口地址空間的影響。2)專用的輸入/輸出指令與訪問(wèn)存儲(chǔ)器指令有明顯區(qū)別,便于理解和檢查。3)CPU需設(shè)計(jì)專用I/O指令及控制邏輯,增加了系統(tǒng)的復(fù)雜性。,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,5.1.4I/O的控制方式1.直接傳送方式微機(jī)系統(tǒng)中的一些簡(jiǎn)單的外設(shè),如開(kāi)關(guān)、繼電器、數(shù)碼管、發(fā)光二極管等,在它們工作時(shí),可以認(rèn)為輸入設(shè)備已隨時(shí)準(zhǔn)備好向CPU提供數(shù)據(jù),而輸出設(shè)備也隨時(shí)準(zhǔn)備好接收CPU送來(lái)的數(shù)據(jù),這樣,在CPU需要同外設(shè)交換信息時(shí),就能夠用IN或OUT指令直接對(duì)這些外設(shè)進(jìn)行輸入/輸出操作。由于在這種方式下CPU對(duì)外設(shè)進(jìn)行輸入/輸出操作時(shí)無(wú)需考慮外設(shè)的狀態(tài),故也稱之為無(wú)條件傳送方式。,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,對(duì)于簡(jiǎn)單外設(shè),若采用直接傳送方式,其接口電路也很簡(jiǎn)單。如簡(jiǎn)單外設(shè)作為輸入設(shè)備時(shí),輸入數(shù)據(jù)保持時(shí)間相對(duì)于CPU的處理時(shí)間要長(zhǎng)得多,所以可直接使用三態(tài)緩沖器和數(shù)據(jù)總線相連,如下圖(a)所示。當(dāng)執(zhí)行輸入的指令時(shí),讀RD信號(hào)有效,選擇信號(hào)M/IO處于低電平,因而三態(tài)緩沖器被選通,使其中早已準(zhǔn)備好的輸入數(shù)據(jù)送到數(shù)據(jù)總線上,再到達(dá)CPU。所以要求CPU在執(zhí)行輸入指令時(shí),外設(shè)的數(shù)據(jù)是準(zhǔn)備好的,即數(shù)據(jù)已經(jīng)存入三態(tài)緩沖器中。,,,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,簡(jiǎn)單外設(shè)為輸出設(shè)備時(shí),由于外設(shè)取數(shù)的速度比較慢,要求CPU送出的數(shù)據(jù)在接口電路的輸出端保持一段時(shí)間,因而一般都需要鎖存器,如上圖(b)所示。CPU執(zhí)行輸出指令時(shí),M/IO和WR信號(hào)有效,于是,接口中的輸出鎖存器被選中,CPU輸出的信息經(jīng)過(guò)數(shù)據(jù)總線送入輸出鎖存器中,輸出鎖存器保持這個(gè)數(shù)據(jù),直到外設(shè)取走。無(wú)條件傳送方式下,程序設(shè)計(jì)和接口電路都很簡(jiǎn)單,但是為了保證每一次數(shù)據(jù)傳送時(shí)外設(shè)都能處于就緒狀態(tài),傳送不能太頻繁。對(duì)少量的數(shù)據(jù)傳送來(lái)說(shuō),無(wú)條件傳送方式是最經(jīng)濟(jì)實(shí)用的一種傳送方法。,,,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,程序:MOVDX,218HINAL,DX,直接輸入輸出接口舉例1)簡(jiǎn)單輸入接口電路IOR=M/IO+RD,,,,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,例:由上圖K4-K1輸入一個(gè)BCD碼存入DATA1單元,同時(shí)在顯示器上顯示:解:MOVDX,218HINAL,DXANDAL,0FHCMPAL,0AHJCERRMOVDATA1,ALORAL,30HMOVDL,ALMOVAH,02INT21H:ERR::,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,2)簡(jiǎn)單輸出接口IOW=M/IO+WRMOVDX,219HOUTDX,AL,,,,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,例:從上圖(8位)循環(huán)移位顯示初值01或80和,每顯示一次延時(shí)1S。MOVDX,219HMOVAL,01NEXT:OUTDX,ALCALLDELAY;(延時(shí)程序中DX,AL不得改變?為什么?如何保證)ROLAL,1;MOVBL,ALMOVDX,280HINAL,DXTESTAL,10000000BJZSTOPMOVDX,219HMOVAL,BLJMPNEXT若沒(méi)有以上紅體部分程序,程序永遠(yuǎn)循環(huán)下去,如何停止?(K7合上),微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,2.查詢方式查詢傳送也稱為條件傳送,是指在執(zhí)行輸入指令(IN)或輸出指令(OUT)前,要先查詢相應(yīng)設(shè)備的狀態(tài),當(dāng)輸入設(shè)備處于準(zhǔn)備好狀態(tài),輸出設(shè)備處于空閑狀態(tài)時(shí),CPU才執(zhí)行輸入/輸出指令與外設(shè)交換信息。為此,接口電路中既要有數(shù)據(jù)端口,還要有狀態(tài)端口。查詢傳送方式的流程圖見(jiàn)下圖。從圖中可以看出,采用查詢方式完成一次數(shù)據(jù)傳送要經(jīng)歷如下過(guò)程:(1)CPU從狀態(tài)端口讀取狀態(tài)字。用IN指令(2)CPU檢測(cè)相應(yīng)的狀態(tài)位是否滿足“就緒”條件。(3)如果不滿足,則重復(fù)(1)、(2)步;若外設(shè)已處于“就緒”狀態(tài),則從數(shù)據(jù)端口讀數(shù)據(jù)(IN指令)或向數(shù)據(jù)端口寫(xiě)數(shù)據(jù)(OUT指令)。,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,查詢傳送方式的流程圖,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,下圖給出的是采用查詢傳送方式進(jìn)行輸入操作的接口電路。輸入設(shè)備在數(shù)據(jù)準(zhǔn)備好之后向接口發(fā)選通信號(hào),此信號(hào)有兩個(gè)作用:一方面將外設(shè)中的數(shù)據(jù)送到接口的鎖存器中;另一方面使接口中的一個(gè)D觸發(fā)器輸出“1”,從而使三態(tài)緩沖器的READY位置“1”。CPU輸入數(shù)據(jù)前先用輸入指令讀取狀態(tài)字,測(cè)試READY位,若READY位為“1”,說(shuō)明數(shù)據(jù)已準(zhǔn)備就緒,再執(zhí)行輸入指令讀入數(shù)據(jù)。由于在讀入數(shù)據(jù)時(shí)信號(hào)已將狀態(tài)位READY清0,于是可以開(kāi)始下一個(gè)數(shù)據(jù)輸入過(guò)程。,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,查詢式輸入的接口電路,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,下圖給出的是采用查詢傳送方式進(jìn)行輸出操作的接口電路。CPU輸出數(shù)據(jù)時(shí),先用輸入指令讀取接口中的狀態(tài)字,測(cè)試BUSY位,若BUSY位為0,表明外設(shè)空閑,此時(shí)CPU才執(zhí)行輸出指令,否則CPU必須等待。執(zhí)行輸出指令時(shí)由端口選擇信號(hào)、M/IO信號(hào)和寫(xiě)信號(hào)共同產(chǎn)生的選通信號(hào)將數(shù)據(jù)總線上的數(shù)據(jù)打入接口中的數(shù)據(jù)鎖存器,同時(shí)將D觸發(fā)器置1。D觸發(fā)器的輸出信號(hào)一方面為外設(shè)提供一個(gè)聯(lián)絡(luò)信號(hào),通知外設(shè)將鎖存器鎖存的數(shù)據(jù)取走;另一方面使?fàn)顟B(tài)寄存器的BUSY位置1,告訴CPU當(dāng)前外設(shè)處于忙狀態(tài),從而阻止CPU輸出新的數(shù)據(jù)。輸出設(shè)備從接口中取走數(shù)據(jù)后,會(huì)送一個(gè)回答信號(hào)ACK,該信號(hào)使接口中的D觸發(fā)器置0,從而使?fàn)顟B(tài)寄存器中的BUSY位清0,以便開(kāi)始下一個(gè)數(shù)據(jù)輸出過(guò)程。,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,查詢式輸出的接口電路,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,查詢傳送方式的主要優(yōu)點(diǎn)是能保證主機(jī)與外設(shè)之間協(xié)調(diào)同步地工作,且硬件線路比較簡(jiǎn)單,程序也容易實(shí)現(xiàn)。但是,在這種方式下,CPU花費(fèi)了很多時(shí)間查詢外設(shè)是否準(zhǔn)備就緒,在這些時(shí)間里CPU不能進(jìn)行其他的操作;此外,在實(shí)時(shí)控制系統(tǒng)中,若采用查詢傳送方式,由于一個(gè)外設(shè)的輸入/輸出操作未處理完畢就不能處理下一個(gè)外設(shè)的輸入/輸出,故不能達(dá)到實(shí)時(shí)處理的要求。因此,查詢傳送方式有兩個(gè)突出的缺點(diǎn):浪費(fèi)CPU時(shí)間,實(shí)時(shí)性差。所以,查詢傳送方式適用于數(shù)據(jù)輸入/輸出不太頻繁且外設(shè)較少、對(duì)實(shí)時(shí)性要求不高的情況。,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,查詢輸入輸出舉例1)查詢輸入,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,例:從上圖電路輸入10個(gè)數(shù)據(jù)DATASEGMENTDATA1DB10DUP(?)DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXLEASIDATA1MOVCX,10,NEXT1:MOVDX,380HTSTATE:INAL,DXTESTAL,00001000BJZTSTATEINCDXINAL,DXMOV[SI],ALINCSILOOPNEXT1CODEENDSENDSTART,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,2)查詢輸出,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,例:從上圖電路連續(xù)輸出3個(gè)數(shù)據(jù)。DATASEGMENTDATA1DB30H,31H,32HDATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXLEASIDATA1MOVCX,3,NEXT1:MOVDX,381HTSTATE:INAL,DXTESTAL,00010000BJNZTSTATEDECDXMOVAL,[SI]OUTDX,ALMOV[SI],ALINCSILOOPNEXT1CODEENDSENDSTART,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,查詢方式雖然能夠準(zhǔn)確傳送數(shù)據(jù),但它效率太低,需要占用CPU的時(shí)間來(lái)查詢。(CPU主動(dòng),I/O被動(dòng))3.中斷方式中斷傳送方式是指當(dāng)外設(shè)需要與CPU進(jìn)行信息交換時(shí),由外設(shè)向CPU發(fā)出請(qǐng)求信號(hào),使CPU暫停正在執(zhí)行的程序,轉(zhuǎn)去執(zhí)行數(shù)據(jù)的輸入/輸出操作,數(shù)據(jù)傳送結(jié)束后,CPU再繼續(xù)執(zhí)行被暫停的程序。,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,中斷傳送方式的特點(diǎn)是:1)CPU不必查詢等待,工作效率高2)實(shí)時(shí)性好3)適合于少量的數(shù)據(jù)傳送。4.DMA方式對(duì)于大批量數(shù)據(jù)的輸入/輸出,可采用高速的直接存儲(chǔ)器存取方式,即DMA方式。,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,5.2系統(tǒng)總線及接口5.2.1總線概述總線是用來(lái)連接各部件的一組通信線,用于部件之間的連接。為在各部件之間實(shí)現(xiàn)信息共享和交換,總線由傳送信息的物理介質(zhì)以及一套管理信息傳輸?shù)膮f(xié)議(標(biāo)準(zhǔn))所構(gòu)成??偩€結(jié)構(gòu)有兩個(gè)優(yōu)點(diǎn):1)各部件可通過(guò)總線交換信息,相互之間不必直接連線,減少了傳輸線的根數(shù),從而提高了微機(jī)的可靠性;2)擴(kuò)展微機(jī)功能時(shí),只需把要擴(kuò)展的部件接到總線上即可,使功能擴(kuò)展十分方便。,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,CPU讀存儲(chǔ)器總線周期(指令:如:MOVAX,[SI]),微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,,CPU寫(xiě)存儲(chǔ)器總線周期(指令如:MOV[SI],AX),微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,CPU讀(輸入)I/O讀總線周期(指令如:INAL,DX),微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,CPU寫(xiě)(輸出)I/O總線周期(OUTDX,AL;8位),微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,5.2.3總線信號(hào)與接口的連接1.數(shù)據(jù)信號(hào)的連接2.控制信號(hào)的連接系統(tǒng)總線中對(duì)接口最重要的控制信號(hào)有3個(gè):①IOR輸入輸出讀信號(hào),低電平有效。②IOW輸入輸出寫(xiě)信號(hào),低電平有效。對(duì)于兼有輸入輸出功能的雙向端口,IOR/IOW應(yīng)都能選中,這兩個(gè)控制信號(hào)是“或”的關(guān)系。③AEN是DMAC驅(qū)動(dòng)的總線信號(hào),高電平有效。AEN=1,表示地址總線上出現(xiàn)的是一個(gè)DMA地址;CPU執(zhí)行I/O指令讀寫(xiě)I/O端口時(shí),AEN=0。,,,,,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,3.地址信號(hào)的連接80 x66CPU用A15-A0管理I/O空間,一般使用I/O尋址A9-A0PC/XT的I/O分配表5.1IBMPC/XT系統(tǒng)中I/O地址的分配及譯碼。IBMPC/XT系統(tǒng)板上有不少接口芯片,其中包括DMA控制器8237A-5,中斷控制器8259A,并行接口8255A-5,計(jì)數(shù)器/定時(shí)器8253-5。這些接口芯片都是在相應(yīng)的片選信號(hào)有效時(shí)才能工作。圖5.10就是IBMPC/XT系統(tǒng)中產(chǎn)生片選信號(hào)的電路。,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,IBMPC/XT系統(tǒng)中,各接口芯片的對(duì)應(yīng)端口地址如下表所示:,,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,5.3.1中斷的基本概念1.中斷的定義在CPU執(zhí)行程序的過(guò)程中,出現(xiàn)了某種緊急或異常的事件(中斷請(qǐng)求),CPU需暫停正在執(zhí)行的程序,轉(zhuǎn)去處理該事件(執(zhí)行中斷服務(wù)程序),并在處理完畢后返回?cái)帱c(diǎn)處繼續(xù)執(zhí)行被暫停的程序,這一過(guò)程稱為中斷。(硬中斷)。為實(shí)現(xiàn)中斷功能而設(shè)置的硬件電路和與之相應(yīng)的軟件,稱為中斷系統(tǒng)。中斷最初是作為處理器與外部設(shè)備交換信息的一種控制方式提出的。由此,最初的中斷全部是對(duì)外部設(shè)備而言的,稱為外部中斷或硬件中斷。隨著計(jì)算機(jī)技術(shù)的發(fā)展,中斷的范圍也隨之?dāng)U大,出現(xiàn)了內(nèi)部軟件中斷的概念,它是為解決機(jī)器內(nèi)部運(yùn)行時(shí)出現(xiàn)的異常以及為編程方便而提出的。外部中斷或硬件中斷通常稱為中斷,軟件中斷或異常中斷通常稱為異常(Exception),微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,外部中斷處理圖解:,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,2.中斷的優(yōu)點(diǎn)1)解決CPU快,外設(shè)慢的矛盾,提高整個(gè)系統(tǒng)的工作效率。2)實(shí)時(shí)處理(計(jì)時(shí)、采集系統(tǒng))3)故障錯(cuò)誤處理(掉電,溢出)中斷源任何能夠引發(fā)中斷的事件都稱為中斷源,可分為硬件中斷源和軟件中斷源兩類。I/O設(shè)備(鍵盤(pán)、打印機(jī))數(shù)據(jù)通道(磁盤(pán)、磁帶)實(shí)時(shí)時(shí)鐘,現(xiàn)場(chǎng)鍵盤(pán)(狀態(tài))故障源調(diào)試程序(斷點(diǎn)),微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,4.中斷系統(tǒng)的功能1)可接收外設(shè)發(fā)來(lái)的中斷請(qǐng)求信號(hào)2)自動(dòng)轉(zhuǎn)入中斷服務(wù)程序入口(如同CPU產(chǎn)生一條INTn指令),由中斷源提供n,CPU根據(jù)n轉(zhuǎn)向入口。3)暫停主程序,執(zhí)行服務(wù)程序后自動(dòng)返回(IRET指令)斷點(diǎn)的保護(hù)(IP、CS、FLAGS壓棧,與出棧)其他現(xiàn)場(chǎng)的保護(hù)與恢復(fù)4)能實(shí)現(xiàn)中斷優(yōu)先排隊(duì)5)高級(jí)中斷可中斷低級(jí)中斷(中斷嵌套)5.IBMPC/XT機(jī)中斷類型PC系列微機(jī)最多可以支持256種中斷,它們被分為2種類型:內(nèi)部中斷(軟件中斷)外部中斷(硬中斷),微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,1)內(nèi)部中斷為處理器執(zhí)行某些操作而引起的中斷,包括除法錯(cuò)誤異常、單步調(diào)試中斷、斷點(diǎn)中斷等(1)INT0被0除中斷(2)單步中斷(3)INTO(INT4)溢出中斷(4)INTn2)外部中斷(1)非屏蔽中斷在CPU的NMI引腳收到寬度2T的正跳變信號(hào)則產(chǎn)生非屏蔽中斷,它不受狀態(tài)位IF的影響(相當(dāng)于執(zhí)行INT2指令)(2)屏蔽中斷在CPU的INTR為高電平且IF=1時(shí),產(chǎn)生正跳變信號(hào)則產(chǎn)生屏蔽中斷,否則CPU不響應(yīng)中斷,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,6、中斷過(guò)程可屏蔽中斷的響應(yīng)過(guò)程:1)I/O接口發(fā)中斷請(qǐng)求信號(hào)(由外設(shè)完成)2)當(dāng)前指令執(zhí)行結(jié)束后且IF=1,CPU中斷響應(yīng)3)I/O接口將中斷類型號(hào)(矢量)n通過(guò)DB自動(dòng)送CPU4)FLAGS、CS、IP自動(dòng)壓棧,(棧頂?shù)淖兓?)清IF、TF允許更高級(jí)中斷6)中斷服務(wù)程序入口偏移地址(4*n)送IP,段地址(4*n+2)送CS以上2)~6)動(dòng)作由CPU的自動(dòng)完成7)轉(zhuǎn)入中斷服務(wù)程序,微型計(jì)算機(jī)原理及接口技術(shù),第5章數(shù)字量輸入輸出,7、中斷服務(wù)程序要做的事情1)用PUSH指令保護(hù)必要的現(xiàn)場(chǎng)(寄存器內(nèi)容)2)需要的話,用CLI清IF,關(guān)中斷3)中斷服務(wù)4)用POP指令恢復(fù)現(xiàn)場(chǎng)5)用IERT指令中斷返回中斷服務(wù)程序入口地址的形成軟中斷由INTn由n得到;硬中斷由中斷源送出n給CPU得到。8、中斷服務(wù)程序與子程序的區(qū)別軟中斷與子程序的區(qū)別:多壓FLAGS,入口方式不同硬中斷與子程序的區(qū)別:除上以外,斷點(diǎn)的隨機(jī)性(不確定)。不由指令產(chǎn)生。,- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來(lái)的問(wèn)題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
14.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁(yè)顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開(kāi)word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 微型計(jì)算機(jī) 原理 接口 技術(shù) 第五
鏈接地址:http://www.820124.com/p-3266899.html