資源描述:
《新第4章IO接口基礎(chǔ)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫(kù)。
1、第4章:I/O接口基礎(chǔ)4.1I/O接口的基本概念再好的CPU,如果不配上一定的外部設(shè)備而構(gòu)成一個(gè)完備的微機(jī)系統(tǒng),其強(qiáng)人的功能和優(yōu)越的性能將無(wú)法顯示出來(lái),因而也就不具有實(shí)用價(jià)值。那么,外設(shè)包括那些東西呢?首先,任何計(jì)算機(jī)必須有一條接收程序和數(shù)據(jù)的通道,才能接收“外界”的信息來(lái)進(jìn)行處理,這就必須有輸入設(shè)備,如鍵盤、鼠標(biāo)器、光筆、觸摸屏、掃描儀等;其次,微機(jī)處理的結(jié)果還必須送回給要求進(jìn)行信息處理的“外界”,這就必須有輸出設(shè)備,如顯示器、打印機(jī)、繪圖儀、記錄儀等。其三,在一些工業(yè)控制場(chǎng)合,還需要模/數(shù)轉(zhuǎn)
2、換器、數(shù)/模轉(zhuǎn)換器、傳感器、發(fā)光二極管、光電隔離器等。上述這些設(shè)備在信息格式、工作速度、驅(qū)動(dòng)方式等方面差別很大,所以不能直接與CPU相連,亦即不能直接接入總線,必須通過(guò)接口(Interface)電路連接。I/O(Input/Output,,I/O)接口是CPU與外設(shè)之間的橋梁,是用來(lái)協(xié)助兩者完成數(shù)據(jù)傳輸?shù)膶S秒娐?。圖4-1體現(xiàn)了微機(jī)系統(tǒng)中總線、接口、外設(shè)的關(guān)系。讀者借助此圖能更好地學(xué)習(xí)理解木章內(nèi)容。CPUAB、DB‘BusCB圖4?1微型計(jì)算機(jī)系統(tǒng)4.1.11/0接口的基本功能微機(jī)系統(tǒng)可選用的接
3、口的種類很多,作用各顯:各外部設(shè)備更是千差萬(wàn)別;總線與外設(shè)通信的方式也不一樣。但無(wú)論哪種接口都是專門為解決CPU與外設(shè)Z間的速度和時(shí)序不匹配、不能協(xié)調(diào)工作而設(shè)置的,它處在總線和外設(shè)之間,一?般應(yīng)具有以下基本功能。1?接口對(duì)輸入/輸出數(shù)據(jù)進(jìn)行緩沖、隔離和鎖存接口必須具備“輸入口冇三態(tài)、輸出口能鎖存”的特點(diǎn)。2接口有尋址功能:?根據(jù)輸入的地址信息選擇相應(yīng)的端口一個(gè)接口含多個(gè)端口,正如一個(gè)存儲(chǔ)器含多個(gè)存儲(chǔ)單元一樣。端口指1/0接口中可被CPU讀/寫的寄存器,而外設(shè)也接在端口。若某接口具有多個(gè)端口,但C
4、PU在某一段時(shí)間內(nèi)只能與一個(gè)端口交換信息,因此需要通過(guò)接口地址譯碼對(duì)端口進(jìn)行尋址,以選定CPU所需的端口,只冇選中的端口才能與CPU交換信息。此即所謂尋址功能。3.正確控制微機(jī)少外設(shè)間交換數(shù)據(jù)的方向,即輸入/輸出功能??偠灾?,接口的功能就是完成微機(jī)的數(shù)據(jù)、地址、控制三總線和外設(shè)信號(hào)線之間的轉(zhuǎn)換與連接任務(wù)。由圖4-1可以較好理解此語(yǔ)的含義。4.3可編程并行I/O接口芯片可編程芯片意即該芯片功能多而功能待定義,必須先定義該芯片功能而后才能使用Z。定義的方法一般是對(duì)該芯片寫入所謂控制字,是通過(guò)執(zhí)行一
5、段程序完成這個(gè)工作的?!翱删幊獭备拍罴丛从诖?。PA.P6、點(diǎn):1)通過(guò)多根信號(hào)線同時(shí)傳送多位數(shù)據(jù)。2)并行接口多用于傳送距離感,數(shù)據(jù)量大,速度高的實(shí)時(shí)傳輸場(chǎng)合。3)傳送時(shí)一般不需要特定的數(shù)據(jù)傳送格式。Intel8255A是一種典型的并行接口芯片。雖然它面世的年代有些久遠(yuǎn),但在許多領(lǐng)域仍得到了廣泛應(yīng)用;同時(shí)從“可編程芯片”的角度來(lái)說(shuō),它涉及的技術(shù)概念較為全面,有利于初涉接口技術(shù)的人學(xué)習(xí),所以本書仍重點(diǎn)介紹之。3.3.18255A的結(jié)構(gòu)可編程并行接口芯片8255A是Tntel公司生產(chǎn)的并行接口芯片的代表產(chǎn)品,具有通用性強(qiáng)、使用靈活、方便、可編程等優(yōu)點(diǎn)。它本
7、是為Intel系列微處理器設(shè)計(jì)的配套電路,但也可用于其他微型計(jì)算機(jī)系統(tǒng)中。8255的外部引腳和內(nèi)部結(jié)構(gòu)分別如圖4-9和4-10所示。8255A圖4-10中,8255A由三個(gè)數(shù)據(jù)端口(A、B、C)、A組和B組控制邏輯電路、數(shù)據(jù)總線緩沖器及讀/寫控制邏輯等四部分組成。1.數(shù)據(jù)端口在8255A內(nèi)部包含了三個(gè)8位輸入/輸岀數(shù)據(jù)端口:端口A、端口B、端口c。端口A和端口B可作為8位的輸入/輸出端口,端口C既可以作為一個(gè)8位的輸入/輸出端口,乂可作為兩個(gè)4位的輸入/輸出端口(即PC7?PC4和PC3?PCO
8、)。另外,需要特別指出的是端口C不僅可作為輸入/輸出端口使用,還能配合端口A、端口B工作,作為端口A和端口B的與外設(shè)的聯(lián)絡(luò)信號(hào)。2.端口控制邏輯端口控制邏輯分為A組和B組,各組管理的端口如下:A組:管理端MA及端MC的上半部(PC7?PC4)。B組:管理端口B及端口C的下半部(PC3?PCO)010)113141516181920圖4-98255A外部引腳端口控制邏輯的內(nèi)部有一個(gè)控制字寄存器,用來(lái)接收CPU輸出的控制命令字。D,?D(1<==^>R細(xì)端口c低四位ANJ「5~rj)數(shù)據(jù)總線緩沖器R