第6章 輸入輸出與接口技術(shù)_第1頁
第6章 輸入輸出與接口技術(shù)_第2頁
第6章 輸入輸出與接口技術(shù)_第3頁
第6章 輸入輸出與接口技術(shù)_第4頁
第6章 輸入輸出與接口技術(shù)_第5頁
已閱讀5頁,還剩57頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

6.16.26.3接口概述I/O端口和I/O指令數(shù)據(jù)傳送方式6.4基本輸入輸出接口設(shè)計第6章輸入輸出和接口技術(shù)微機(jī)原理與接口技術(shù)---中南大學(xué)出版社

輸入輸出(I/O)是指微型計算機(jī)與外界的信息交換,即通信(communication)。微型計算機(jī)與外界的通信,是通過輸入輸出設(shè)備進(jìn)行的,通常一種I/O設(shè)備與微型機(jī)連接,就需要一個連接電路,我們稱之為I/O接口。6.1接口概述

接口是用于控制微機(jī)系統(tǒng)與外設(shè)或外設(shè)與系統(tǒng)設(shè)備之間的數(shù)據(jù)交換和通信的硬件電路。接口設(shè)計涉及到兩個基本問題,一是中央處理器如何尋址外部設(shè)備,實現(xiàn)多個設(shè)備的識別;二是中央處理器如何與外設(shè)連接,進(jìn)行數(shù)據(jù)、狀態(tài)和控制信號的交換。微機(jī)原理與接口技術(shù)---中南大學(xué)出版社

1.接口的一般定義

接口是一組電路,是中央處理器與存儲器、輸入輸出設(shè)備等外設(shè)之間協(xié)調(diào)動作的控制電路。接口電路并不局限在中央處理器與存儲器或外設(shè)之間,也可在存儲器與外設(shè)之間,如直接存儲器存取DMA接口就是控制存儲器與外設(shè)之間數(shù)據(jù)傳送的電路。6.1.1接口的功能微機(jī)原理與接口技術(shù)---中南大學(xué)出版社2.接口電路的功能接口是微處理器與存儲器、輸入輸出設(shè)備等外設(shè)之間協(xié)調(diào)動作、交換信息的控制電路。接口電路并不局限于微處理器與存儲器及外設(shè)之間,也存在于存儲器和外設(shè)之間。接口電路的作用就在于把多種多樣的外部設(shè)備與主機(jī)連接起來,實現(xiàn)通信雙方的數(shù)據(jù)信號的處理和傳輸控制。因此,接口必須具備以下功能:微機(jī)原理與接口技術(shù)---中南大學(xué)出版社1).數(shù)據(jù)緩沖總線是微型計算機(jī)系統(tǒng)中傳輸信息的公共線路,任何外設(shè)或存儲器都不允許長期占用總線,只允許被選中的外設(shè)或存儲器在讀/寫操作時使用總線。此外,外設(shè)的工作速度與微處理器不匹配。因此,大多數(shù)外設(shè)不能直接和CPU的數(shù)據(jù)總線直接相連,要借助接口電路使外設(shè)與總線隔離,起緩沖、暫存數(shù)據(jù)的作用,使主機(jī)和外設(shè)協(xié)調(diào)一致的工作。微機(jī)原理與接口技術(shù)---中南大學(xué)出版社2).聯(lián)絡(luò)控制接口電路可以提供聯(lián)絡(luò)信號給微處理器和外設(shè),協(xié)調(diào)主機(jī)和外設(shè)間數(shù)據(jù)傳送速度不匹配的矛盾。大多數(shù)外設(shè)輸入輸出信息的速度遠(yuǎn)遠(yuǎn)低于微處理器,為同步外設(shè)與主機(jī)的工作,在輸入輸出控制中,常需要接口電路提供外設(shè)的工作狀態(tài)給微處理器,同時接收主機(jī)發(fā)送給外設(shè)的命令,從而使主機(jī)與外設(shè)之間協(xié)調(diào)一致地工作。

微機(jī)原理與接口技術(shù)---中南大學(xué)出版社3).信號變換

外設(shè)的信息格式與微處理器不一致時,需要接口電路進(jìn)行信息的變換。從本質(zhì)上說,微處理器的信息格式是并行的數(shù)字信號,而外設(shè)由于其功能的多樣性,信息格式也是多種多樣的,對于一個具體的外部設(shè)備而言,其使用的信息可能是數(shù)字式的,也可能是模擬的;大部分外部設(shè)備是數(shù)字式的,但是又分并行的和串行的,這就需要進(jìn)行電平變換、并串變換、數(shù)模變換等信號變換。

微機(jī)原理與接口技術(shù)---中南大學(xué)出版社4).外設(shè)尋址

由于微機(jī)系統(tǒng)中的接口電路不止一個,而且接口電路中有不同的寄存器,因此微處理器與外部設(shè)備進(jìn)行信息交換時,首先必須對外部設(shè)備進(jìn)行尋址,然后進(jìn)行數(shù)據(jù)傳輸。外設(shè)的尋址一般由地址譯碼電路負(fù)責(zé)。微機(jī)原理與接口技術(shù)---中南大學(xué)出版社6.1.2接口中的信息類型數(shù)據(jù)信息:它是CPU與外設(shè)之間傳送的主要信息,可分為數(shù)字量、模擬量和開關(guān)量三種形式。狀態(tài)信息:是外設(shè)通過接口送往CPU的信息,作為外設(shè)與CPU之間交換數(shù)據(jù)的聯(lián)絡(luò)信號,反映了當(dāng)前外設(shè)所處的工作狀態(tài)??刂菩畔ⅲ菏荂PU通過接口傳送給外設(shè)的信息,用來設(shè)置外設(shè)(包括接口)的工作方式、控制外設(shè)的工作等。外設(shè)的啟動信號和停止信號就是常見的控制信息。微機(jī)原理與接口技術(shù)---中南大學(xué)出版社控制總線CB地址總線ABI/O接口電路數(shù)據(jù)控制狀態(tài)數(shù)據(jù)總線DBCPU外設(shè)控制寄存器狀態(tài)寄存器數(shù)據(jù)寄存器6.1.3接口電路的典型結(jié)構(gòu)微機(jī)原理與接口技術(shù)---中南大學(xué)出版社

數(shù)據(jù)寄存器用來暫存微處理器和外設(shè)之間傳送的數(shù)據(jù),一般來說,輸入接口采用緩沖器,輸出接口采用鎖存器。

控制寄存器用來接收微處理器發(fā)送的控制命令,以便完成對接口電路及外設(shè)的全部操作的控制。

狀態(tài)寄存器用來存放外設(shè)及接口本身的狀態(tài),微處理器和外設(shè)根據(jù)狀態(tài)寄存器的設(shè)置進(jìn)行聯(lián)絡(luò)協(xié)調(diào)。微機(jī)原理與接口技術(shù)---中南大學(xué)出版社6.2.1接口部件的I/O端口每個接口電路中都包含三類寄存器,微處理器與外設(shè)進(jìn)行信息交換時,不同信息存入接口中的相應(yīng)寄存器,一般稱這些寄存器為I/O端口,簡稱為端口(Port)。微機(jī)系統(tǒng)中的每一個端口都分配有一個地址,稱為端口地址,微處理器通過端口地址實現(xiàn)對不同接口電路中的寄存器的尋址。6.2I/O端口和I/O指令微機(jī)原理與接口技術(shù)---中南大學(xué)出版社

微處理器進(jìn)行I/O操作時,對I/O接口的尋址方式與存儲器尋址方式相似。即必須完成兩種選擇:一是選擇出所選中的I/O接口芯片(稱為片選);二是選擇出該芯片中的某一寄存器(稱為字選)。

在微機(jī)系統(tǒng)中,一般有兩種I/O端口的編址方式:一種是統(tǒng)一編址方式,一種是獨立編址方式6.2.2端口地址譯碼微機(jī)原理與接口技術(shù)---中南大學(xué)出版社

1.統(tǒng)一編址方式又稱為存儲器映象I/O尋址方式,有3個特點:

(1)I/O接口與存儲器共用同一個地址空間。即在系統(tǒng)設(shè)計時指定存儲器地址空間內(nèi)的一個區(qū)域供I/O設(shè)備使用,故I/O設(shè)備的每一個寄存器占用存儲器空間的一個地址。這時存儲器與I/O設(shè)備之間的唯一區(qū)別是其所占用的地址不同。

(2)CPU利用對存儲器的存儲單元進(jìn)行操作的指令來實現(xiàn)對I/O設(shè)備的管理。

(3)CPU用存儲器讀/寫控制信號(、)對I/O設(shè)備進(jìn)行讀/寫控制。

統(tǒng)一編址方式微機(jī)原理與接口技術(shù)---中南大學(xué)出版社2.統(tǒng)一編址方式的優(yōu)點:

(1)CPU對外設(shè)的操作可使用全部的存儲器操作指令,故指令多,使用方便,如可對外設(shè)中的數(shù)據(jù)(存于外設(shè)的寄存器中)進(jìn)行算術(shù)和邏輯運(yùn)算,進(jìn)行循環(huán)或移位等;(2)存儲器和外設(shè)的地址分布圖是同一個;(3)不需要專門的輸入/輸出指令。

3.其缺點有以下兩種:(1)外設(shè)占用了內(nèi)存單元,使內(nèi)存容量減??;(2)存儲器操作指令通常要比I/O指令的字節(jié)多,故加長了I/O操作的時間。微機(jī)原理與接口技術(shù)---中南大學(xué)出版社

獨立編址方式有以下3個特點:

(1)I/O設(shè)備的地址空間和存儲器地址空間是獨立的、分開的,即I/O接口地址不占用存儲器的地址空間。(2)微處理器對I/O設(shè)備的管理是利用專用的IN(輸入)和OUT(輸出)指令來實現(xiàn)數(shù)據(jù)傳送的。

(3)CPU對I/O設(shè)備的讀/寫控制是用I/O讀/寫控制信號(、)。一個外設(shè)常有若干個端口地址。

獨立編址方式微機(jī)原理與接口技術(shù)---中南大學(xué)出版社

80x86微處理器都由低16位地址線尋址I/O端口,故可尋址64K個I/O端口,但在實際的80x86PC機(jī)中,只用了最前面1K個端口地址,也即只尋址1K范圍內(nèi)的I/O空間。因此僅使用了地址總線的低10位,即只有地址線A9~A0用于I/O地址譯碼。

在DMA操作時,DMA控制器控制了系統(tǒng)總線。DMA控制器在發(fā)出地址的同時還要發(fā)出地址允許信號AEN,所以還必須將DMA控制器發(fā)出的地址允許信號AEN也參加端口地址的譯碼,用AEN限定地址譯碼電路的輸出。當(dāng)AEN信號有效時即DMA控制器控制系統(tǒng)總線時,地址譯碼電路無輸出;當(dāng)AEN信號無效時,地址譯碼電路才有輸出。

I/O端口地址譯碼微機(jī)原理與接口技術(shù)---中南大學(xué)出版社無論是大規(guī)模集成電路的接口芯片,還是基本的輸入輸出緩沖單元,都是由一個或多個寄存器加上一些附加控制邏輯構(gòu)成的。對這些寄存器的尋址就是對接口的尋址。通常采用兩級譯碼方法,譯碼地址的高位組確定一個地址區(qū)域,作為組選信號;低位組地址直接接到芯片的地址輸入端,選擇芯片內(nèi)各寄存器。

微機(jī)原理與接口技術(shù)---中南大學(xué)出版社1.門電路構(gòu)成的端口地址譯碼電路

用各種基本門電路構(gòu)成譯碼器是常用的方法,如圖6-2所示,CPU輸出的地址A9~A5與AEN信號一起作為8與非門74LS30的輸入,從而使74LS30產(chǎn)生組選信號,地址范圍為380H~39FH。低位地址A0~A4作為片內(nèi)尋址信號,可尋址多個個端口。

微機(jī)原理與接口技術(shù)---中南大學(xué)出版社圖6-2所示的直接地址譯碼電路的輸出線,既可以用于輸入也可以用于輸出。圖6-2門電路直接地址譯碼

微機(jī)原理與接口技術(shù)---中南大學(xué)出版社2.譯碼器構(gòu)成的端口地址譯碼電路

當(dāng)接口電路需要多個端口地址的時候,采用譯碼器構(gòu)成地址譯碼電路比較簡單。如圖6-3所示,系統(tǒng)地址的高位A9~A3經(jīng)過門電路74LS30產(chǎn)生組選信號(2F8H~2FFH),低3位地址A0~A2作為兩個譯碼器74LS138輸入端A、B、C的輸入,與讀寫信號配合對組內(nèi)相同的端口進(jìn)行尋址。當(dāng)A2~A0在000~111之間變化時,譯碼器的輸出端Y0~Y7對應(yīng)輸出有效信號,在讀寫信號的控制下對端口地址2F8H~2FFH進(jìn)行讀寫。微機(jī)原理與接口技術(shù)---中南大學(xué)出版社圖6-3譯碼器譯碼電路

圖6-3譯碼器譯碼電路

圖6-3譯碼器譯碼電路

微機(jī)原理與接口技術(shù)---中南大學(xué)出版社PC微機(jī)接口芯片的譯碼電路圖6-4接口芯片的譯碼電路微機(jī)原理與接口技術(shù)---中南大學(xué)出版社1.輸入指令I(lǐng)NAcc,Port或INAcc,DX

輸入指令是把一個字節(jié)或一個字由輸入端口傳送至AL(8位Acc)或AX(16位Acc)。端口地址若是由指令中的port所規(guī)定,則只可尋址0~255。端口地址若用寄存器DX間址,則允許尋址64K個輸入端口。6.2.3I/O指令微機(jī)原理與接口技術(shù)---中南大學(xué)出版社2.輸出指令OUTPort,Acc或OUTDX,Acc

輸出指令是把在AL中的一個字節(jié)或在AX中的一個字,傳送至輸出端口。端口尋址方式與IN指令相同。輸入輸出指令傳送字節(jié)還是字,取決于端口的寬度。PCXT機(jī)端口寬度只有8位,只能傳送字節(jié)。

微機(jī)原理與接口技術(shù)---中南大學(xué)出版社1.數(shù)據(jù)傳送方式

在微機(jī)系統(tǒng)內(nèi),如,大系統(tǒng)部件之間的數(shù)據(jù)傳送都采用并行數(shù)據(jù)傳送方式。并行數(shù)據(jù)的每一位都對應(yīng)獨立的傳輸線路,所以數(shù)據(jù)傳送速度快,但線路多,一般只用于較短距離的數(shù)據(jù)傳送。(1)并行數(shù)據(jù)傳送6.3CPU與外設(shè)之間數(shù)據(jù)傳送的方法微機(jī)原理與接口技術(shù)---中南大學(xué)出版社串行數(shù)據(jù)傳送是將構(gòu)成字符的每個二進(jìn)制數(shù)據(jù)位,按一定的順序逐位進(jìn)行傳送的方式。串行數(shù)據(jù)傳送主要用于遠(yuǎn)程終端或經(jīng)過公共電話網(wǎng)的計算機(jī)之間的通信。遠(yuǎn)距離數(shù)據(jù)傳送采用串行方式比較經(jīng)濟(jì),但串行數(shù)據(jù)傳送比并行數(shù)據(jù)傳送控制復(fù)雜。(2)串行數(shù)據(jù)傳送微機(jī)原理與接口技術(shù)---中南大學(xué)出版社異步串行通信協(xié)議規(guī)定字符數(shù)據(jù)的傳送格式:

異步串行通信中,接收設(shè)備和發(fā)送設(shè)備必須保持相同的傳送波特率,并與每個字符數(shù)據(jù)的起始位同步。起始位、數(shù)據(jù)位、奇偶位和停止位約定,在同一次傳送過程中必須保持一致。微機(jī)原理與接口技術(shù)---中南大學(xué)出版社2.傳送控制方式

CPU通過接口與外設(shè)之間數(shù)據(jù)傳送的方式,根據(jù)其控制原理的不同,一般可劃分為無條件傳送方式、查詢方式、中斷控制方式和直接存儲器存取方式。微機(jī)原理與接口技術(shù)---中南大學(xué)出版社2.傳送控制方式

(1)無條件傳送方式

無條件傳送方式與查詢方式本質(zhì)上都是在程序控制下的數(shù)據(jù)傳送方式,如果CPU能夠確認(rèn)一個外設(shè)已經(jīng)準(zhǔn)備就緒,那么就不必查詢外設(shè)的狀態(tài)而直接進(jìn)行數(shù)據(jù)傳送,這就是無條件傳送方式。這種傳送方式只適用于對簡單外設(shè)的操作,這些外設(shè)始終處于就緒狀態(tài),典型的外設(shè)如開關(guān)、七段發(fā)光二極管。微機(jī)原理與接口技術(shù)---中南大學(xué)出版社顯然,無條件傳送方式對于雙方而言,不需要聯(lián)絡(luò)信號和控制信號,只需要通過數(shù)據(jù)緩沖器和寄存器進(jìn)行數(shù)據(jù)交換

(1)無條件傳送方式

微機(jī)原理與接口技術(shù)---中南大學(xué)出版社(2)查詢方式

查詢方式也稱為程序控制下的有條件傳送方式,微處理器在數(shù)據(jù)傳送之前通過執(zhí)行程序不斷讀取狀態(tài)寄存器并測試外設(shè)的狀態(tài),待外設(shè)處于準(zhǔn)備就緒時,執(zhí)行I/O指令進(jìn)行數(shù)據(jù)傳送。

微機(jī)原理與接口技術(shù)---中南大學(xué)出版社

在查詢方式下,接口電路中的狀態(tài)寄存器保存外設(shè)的狀態(tài)。對于輸入過程,當(dāng)外設(shè)將數(shù)據(jù)準(zhǔn)備好后,使接口中狀態(tài)端口的“準(zhǔn)備好”標(biāo)志位置1,表示輸入緩沖器為滿;

對輸出過程來說,當(dāng)外設(shè)取走數(shù)據(jù)后,接口將狀態(tài)寄存器的對應(yīng)標(biāo)志位置1,表示當(dāng)前輸出寄存器為“空”,可以接受下一個數(shù)據(jù)。

(2)查詢方式

微機(jī)原理與接口技術(shù)---中南大學(xué)出版社(3)中斷方式

中斷方式是在外設(shè)要與中央處理器傳送數(shù)據(jù)時,外設(shè)向中央處理器發(fā)出請求,中央處理器響應(yīng)后再傳送數(shù)據(jù)的操作方式。

在中斷方式下,中央處理器不必查詢外設(shè),提高了系統(tǒng)的工作效率,但中央處理器管理中斷的接口比管理查詢復(fù)雜。

微機(jī)原理與接口技術(shù)---中南大學(xué)出版社(4)直接存儲器存?。―MA)方式

DMA方式是數(shù)據(jù)不經(jīng)過中央處理器在存儲器和外設(shè)之間直接傳送的操作方式。DMA方式是這3種方式中效率最高的一種傳送方式,DMA方式控制接口也最復(fù)雜,需要專用的DMA控制器。

DMA方式適合數(shù)據(jù)量較大的傳送,如存儲器與磁盤之間的數(shù)據(jù)傳送。微機(jī)原理與接口技術(shù)---中南大學(xué)出版社6.4.1緩沖器與鎖存器

在接口電路中,大量使用三態(tài)緩沖器、寄存器和三態(tài)緩沖寄存器來作微處理器與外部設(shè)備的數(shù)字量通道,用來輸入輸出數(shù)據(jù)或檢測和控制與之相連接的外部設(shè)備。微處理器可以將接口電路中的三態(tài)緩沖(寄存)器視為存儲單元,把控制或狀態(tài)信號作為數(shù)據(jù)位信息寫到寄存器中或從三態(tài)緩沖(寄存)器中讀出。寄存器的輸出信號可以接到外部設(shè)備上,外部設(shè)備的信號也可以輸入到三態(tài)緩沖寄存器中。

一般說來,微處理器都是通過三態(tài)緩沖(寄存)器檢測外設(shè)的狀態(tài),通過輸出寄存器發(fā)出控制信號。6.4基本輸入/輸出接口設(shè)計微機(jī)原理與接口技術(shù)---中南大學(xué)出版社

數(shù)據(jù)輸出寄存器用來寄存微處理器送出的數(shù)據(jù)和命令。74LS273可以用作無條件傳送的輸出接口電路。

8D觸發(fā)器74LS273微機(jī)原理與接口技術(shù)---中南大學(xué)出版社外設(shè)輸入的數(shù)據(jù)和狀態(tài)信號,通過數(shù)據(jù)輸入三態(tài)緩沖器經(jīng)數(shù)據(jù)總線傳送給微處理器。74LS244三態(tài)總線驅(qū)動器

74LS244可以用作無條件傳送的輸入接口電路。微機(jī)原理與接口技術(shù)---中南大學(xué)出版社

三態(tài)緩沖寄存器是三態(tài)緩沖器和寄存器組成的。數(shù)據(jù)進(jìn)入寄存器寄存后并不立即從寄存器輸出,要經(jīng)過三態(tài)緩沖才能輸出。三態(tài)緩沖寄存器既可以作數(shù)據(jù)輸入寄存器,又可作數(shù)據(jù)輸出寄存器。寄存器既可以由觸發(fā)器構(gòu)成,也可以鎖存器構(gòu)成。觸發(fā)器與鎖存器是有差別的。74LS373就是三態(tài)緩沖鎖存器,74LS374是三態(tài)緩沖觸發(fā)器,它的引線排列與74LS373相同。

微機(jī)原理與接口技術(shù)---中南大學(xué)出版社

寄存器和緩沖器接口的應(yīng)用簡單又靈活,只要處理好它們的時鐘端(選通端)或輸出允許端與微型計算機(jī)的連接即可。在下述應(yīng)用接口電路中都使用圖6-8所示的電路的地址譯碼,該電路的8個輸出端是對圖6-2所示的輸入輸出直接地址譯碼電路的進(jìn)一步譯碼的輸出。圖6-8讀緩沖器和寫寄存器信號

微機(jī)原理與接口技術(shù)---中南大學(xué)出版社

需要注意的是圖6--8中的不僅僅是對地址信號譯碼的輸出信號,其中也包含有輸入和輸出的讀或?qū)懶盘?。若使用的僅僅是對地址信號譯碼的輸出信號,則要將它和或者相與后才能用作讀緩沖器或?qū)懠拇嫫鞯男盘?。微機(jī)原理與接口技術(shù)---中南大學(xué)出版社

發(fā)光二極管顯示器(LED)是微型計算機(jī)應(yīng)用系統(tǒng)中常用的輸出裝置。

1.七段發(fā)光二極管顯示器接口

6.4.2LED顯示接口設(shè)計微機(jī)原理與接口技術(shù)---中南大學(xué)出版社圖6-9是共陰極LED驅(qū)動電路示意圖,CPU將字形編碼存入段選鎖存器中,經(jīng)過8位反相驅(qū)動器,驅(qū)動a~h共8個陽極段,使LED顯示字形。圖6-9微機(jī)原理與接口技術(shù)---中南大學(xué)出版社實際應(yīng)用時,往往要用幾個LED燈顯示管實現(xiàn)多位顯示。此時,如果每一個LED使用一個獨立的輸出端口與主機(jī)連接,那么,所占用的輸出通道就太多了,而且驅(qū)動電路也復(fù)雜了。因此,LED與主機(jī)的連接一般采用動態(tài)顯示接口方式,即用兩個8位的并行輸出端口實現(xiàn)多位LED的動態(tài)掃描顯示。其中,一個端口與幾個LED顯示器的共陰極型公共點相連,在程序的控制下LED逐個循環(huán)顯示,該端口稱為位控制端口;另一個端口與多個LED顯示器的陽極相連,用來輸出七段譯碼值,使LED顯示相應(yīng)的數(shù)字,該端口稱為段控制端口;這樣,適當(dāng)選擇循環(huán)速度,利用人眼“視覺暫留”效應(yīng),多個LED顯示器就能看到穩(wěn)定的數(shù)字顯示。2.多位LED顯示電路

微機(jī)原理與接口技術(shù)---中南大學(xué)出版社圖6-10七段顯示器動態(tài)顯示接口電路微機(jī)原理與接口技術(shù)---中南大學(xué)出版社根據(jù)圖6-10電路所示,為使LED顯示器的某一段發(fā)光,與該段相連的段控制端口的輸出必為0,同時與其他不發(fā)光的段相連的段控制端口的輸出必為1。例如顯示數(shù)字“1“的段控制碼為“01111001”,以此表示該數(shù)字的字形編碼,即“79H”。同理,可以得出其他十進(jìn)制數(shù)碼的字形編碼如表6-1所示。

表6-1共陰極LED顯示電路的字形編碼表字形0123456789編碼40H79H24H30H19H12H02H78H00H18H微機(jī)原理與接口技術(shù)---中南大學(xué)出版社

多位LED顯示電路的控制原理就是“掃描顯示”,通過電路中的位控制端口輸出“位選擇碼”,控制6個LED顯示器的某一個發(fā)光。若位選擇碼的某一位為“1”,則與此相連的LED顯示器發(fā)光,其余位為“0,”相應(yīng)的LED顯示器不發(fā)光。微機(jī)原理與接口技術(shù)---中南大學(xué)出版社把從PC機(jī)的鍵盤鍵入的六位十進(jìn)制數(shù)送七段顯示器顯示的程序如下:

stacksegmentstack

stack

dw32dup(0)stackendsdatasegmentIBFDB7,0,7DUP(0)SEGPT DB40H,79H,24H,30H,19H,12H,2,78H,0,18Hdataendscodesegmentstartprocfarassumess:stack,cs:code,ds:datapushdssubax,axpushaxmovax,data

mov

ds,axMOVDX,OFFSETIBF;鍵入MOVAH,10INT21HAGANO:MOVBP,OFFSETIBF+2;建立指針MOVAH,20H;位指針代碼MOVBH,0;將鍵入數(shù)的ASCII碼變?yōu)锽CD數(shù)

AGANI:MOVBL,DS:[BP]ANDBL,0FH微機(jī)原理與接口技術(shù)---中南大學(xué)出版社MOVAL,SEGPT[BX];取BCD數(shù)的七段顯示代碼MOVDX,380H;輸出段碼OUTDX,ALMOVAL,AH;輸出位碼MOVDX,384HOUTDX,ALMOVCX,1000;延時LOOP$INCBP;調(diào)整BCD數(shù)存放指針

SHRAH,1;調(diào)整位指針

ANDAH,AH;鍵入的6位數(shù)都輸出否?JNZAGANI;6位數(shù)都已輸出則退出內(nèi)循環(huán)MOVAH,11;系統(tǒng)功能調(diào)用檢查鍵盤有無輸入

INT21HCMPAL,0;鍵盤有輸入AL=0FFH,無輸入AL=0JEAGANO;有鍵入結(jié)束程序運(yùn)行,無鍵入循環(huán)

retstartendpcodeendsendstart微機(jī)原理與接口技術(shù)---中南大學(xué)出版社本節(jié)介紹的鍵盤是由若干個按鍵組成的開關(guān)矩陣,用于向計算機(jī)輸入數(shù)字、字符等代碼,是最常用的輸入電路。

在鍵盤的按鍵操作中,其開或閉均會產(chǎn)生10~20ms的抖動,可能導(dǎo)致一次按鍵被計算機(jī)多次讀入的情況。通常采有RC吸收電路或RS觸發(fā)器組成的閂鎖電路來消除按鍵抖動;也可以采用軟件延時的方法消除抖動。這里設(shè)開關(guān)為理想開關(guān)即沒有抖動。6.4.3鍵盤接口設(shè)計微機(jī)原理與接口技術(shù)---中南大學(xué)出版社下圖是一個4×4鍵盤及其接口電路,用它向計算機(jī)輸入0~F16個十六進(jìn)制數(shù)碼。

77B7D7E77BBBDBEB7DBDDDED7EBEDEEE按鍵與編碼的對應(yīng)關(guān)系微機(jī)原理與接口技術(shù)---中南大學(xué)出版社1、逐行掃描法:圖示是一個4×4的鍵盤矩陣及其接口電路,圖中寄存器74ls273的輸出接鍵盤矩陣的行線,緩沖器74ls244接鍵盤矩陣的列線,其控制端分別與端口地址譯碼器的輸出相連。微機(jī)原理與接口技術(shù)---中南大學(xué)出版社

首先,CPU通過寄存器74ls273向矩陣各行全部輸出低電平,從緩沖器74ls244讀取矩陣的列值,若所有列線均為高電平,說明無按鍵閉合;否則有按鍵閉合。然后,若有按鍵閉合,就逐行掃描檢測,通過寄存器74ls273向矩陣逐行輸出低電平,其他行輸出高電平,再從緩沖器74ls244讀取矩陣的列值,若所有列線均為高電平,說明該行無按鍵閉合;若列線中有一位是低電平,說明該行有按鍵閉合,則立即退出行掃描。最后,逐位檢查時哪一根列線為低電平,從而根據(jù)按鍵行線和列線的位置識別出按鍵的位置。微機(jī)原理與接口技術(shù)---中南大學(xué)出版社這里鍵名定位采用查表法:即將有鍵閉合的行值和列值進(jìn)行編碼,根據(jù)編碼查鍵名表。對于“鍵抖動”問題,這里采用軟件延時法,即在判定有某鍵按下時,退出行掃描后,延時一段時間(毫秒級),等待“鍵抖動”結(jié)束后再讀取列值。

微機(jī)原理與接口技術(shù)---中南大學(xué)出版社根據(jù)上面流程編寫的程序如下:STACK SEGMENT DW32DUP(0)STACK ENDSDATA SEGMENTMESG DB‘REARY……’,0DH,0AH,’$’KEY DB‘0FED123C456B789A’LINE DB?COUNT DW,?DATA ENDSCODE SEGMENTASSUME DS:DATA,CS:CODE,SS:STACKSTART: PUSH DS XOR AX,AX PUSH AX MOV AX,DATA MOV DS,AX微機(jī)原理與接口技術(shù)---中南大學(xué)出版社MOV AH,9 MOV DX,OFFSETMESG INT 21HSCAN: MOV DX,2F8H; ;行控制口

MOV AL,0 OUT DX,AL ;0送行控制口

MOV DX,2F9H IN AL,DX ;從列控制口讀列值A(chǔ)ND AL,0F0HCMP AL,0F0H ;列值=11110000B?JE SCAN ;是,無鍵閉合CALL DELAY ;延時MOV CH,4 ;行掃描次數(shù)送CHMOV COUNT,-1 ;掃描計數(shù)器初值為-1MOV LINE,01111111B ;行掃描值送LINE微機(jī)原理與接口技術(shù)---中南大學(xué)出版社LOP1: ROL LINE,1 MOV AL,LINE MOV DX,2F8H OUT DX,AL ;行控制口輸出掃描值

MOV DX,2F9H IN AL,DX ;讀列值

MOV CL,4 ;列掃描次數(shù)送CL LOP2: INC COUNT ;計數(shù)

AND AL,0F0H SHL AL,1 ;列值D7位

溫馨提示

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

評論

0/150

提交評論