新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > MCS-51單片機(jī)輸入/輸出口的P0并行擴(kuò)展方法

MCS-51單片機(jī)輸入/輸出口的P0并行擴(kuò)展方法

作者: 時(shí)間:2012-07-07 來(lái)源:網(wǎng)絡(luò) 收藏

家族的眾多成員中,系列以其優(yōu)越的性能、成熟的技術(shù)、高可靠性和高性?xún)r(jià)比,占領(lǐng)了工業(yè)測(cè)控和自動(dòng)化工程應(yīng)用的主要市場(chǎng),并成為國(guó)內(nèi)應(yīng)用領(lǐng)域中的主流機(jī)型。

本文引用地址:http://butianyuan.cn/article/171181.htm

單片機(jī)的口有、P1、P2和P3,由于口是地址/數(shù)據(jù)總線(xiàn)口,P2口是高8位地址線(xiàn),P3口具有第二功能,這樣,真正可以作為雙向I/O口應(yīng)用的就只有P1口了。這在大多數(shù)應(yīng)用中是不夠的,因此,大部分單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)都不可避免的需要對(duì)口進(jìn)行。

由于MCS-51單片機(jī)的外部RAM和I/O口是統(tǒng)一編址的,因此,可以把單片機(jī)外部64K字節(jié)RAM空間的一部分作為外圍I/O口的地址空間。這樣,單片機(jī)就可以像訪(fǎng)問(wèn)外部RAM存儲(chǔ)器單元那樣訪(fǎng)問(wèn)外部的P0口接口芯片,以對(duì)P0口進(jìn)行讀/寫(xiě)操作。用于P0口的專(zhuān)用芯片很多。如8255可編程P0口擴(kuò)展芯片、8155可編程P0口擴(kuò)展芯片等。本文重點(diǎn)介紹采用具有三態(tài)緩沖的74HC244芯片和輸出帶鎖存的74HC377芯片對(duì)P0口進(jìn)行的并行擴(kuò)展的具體

1 接口的擴(kuò)展

MCS-51單片機(jī)的數(shù)據(jù)總線(xiàn)是一種公用總線(xiàn),不能被獨(dú)占使用,這就要求接在上面的芯片必須具備“三態(tài)”功能,因此擴(kuò)展接口實(shí)際上就是要找一個(gè)能夠用于控制且具備三態(tài)輸出的芯片。以便在設(shè)備被選通時(shí),它能使輸入設(shè)備的數(shù)據(jù)線(xiàn)和單片機(jī)的數(shù)據(jù)總線(xiàn)直接接通;而當(dāng)輸入設(shè)備沒(méi)有被選通時(shí),它又能隔離數(shù)據(jù)源和數(shù)據(jù)總線(xiàn)(即三態(tài)緩沖器為高阻抗?fàn)顟B(tài))。

1.1 74HC244芯片的功能 74ls244 74hc244 pdf

如果輸入的數(shù)據(jù)可以保持比較長(zhǎng)的時(shí)間(比如鍵盤(pán)),簡(jiǎn)單輸入接口擴(kuò)展通常使用的典型芯片為74HC244,由該芯片可構(gòu)成三態(tài)數(shù)據(jù)緩沖器。74HC244芯片的引腳排列如圖1所示。

74HC244芯片內(nèi)部共有兩個(gè)四位三態(tài)緩沖器,使用時(shí)可分別以1C和2G作為它們的選通工作信號(hào)。當(dāng)1C和2G都為低電平時(shí),輸出端Y和輸入端A狀態(tài)相同;當(dāng)1G和2G都為高電平時(shí),輸出呈高阻態(tài)。

1.2 應(yīng)用74HC244芯片擴(kuò)展輸入接口

圖2是采用74HC2244芯片進(jìn)行輸入接口擴(kuò)展的原理電路,圖3是讀P0口的時(shí)序。由圖3可以看出,當(dāng)P2.7和RD同為低電平時(shí),74HC2244才能將輸入端的數(shù)據(jù)送到單片機(jī)的P0口。其中,P2.7決定了74HC244的地址,0000H-7FFFH(共32K)地址都可以訪(fǎng)問(wèn)這個(gè)單元,這就是用線(xiàn)選法所帶來(lái)的副作用。通??蛇x擇其中的最高地址作為這個(gè)芯片的地址來(lái)寫(xiě)程序,如這個(gè)芯片的地址是7FFFH。但這僅僅是一種習(xí)慣,并不是規(guī)定,當(dāng)然也完全可以用0000H作為這個(gè)芯片的地址。當(dāng)確定了地址之后,其接口的輸入操作程序如下:

MOV DPTR,#7FFFH

MOVX A,@DPTR

其中MOVX類(lèi)指令是MCS-5l單片機(jī)專(zhuān)用于對(duì)外部RAM進(jìn)行操作的指令。由于外部I/O與外部RAM是同一接口,所以一般使用這條指令對(duì)外部I/O進(jìn)行操作。一旦執(zhí)行到MOVX類(lèi)指令,單片機(jī)就會(huì)在RD或WR(根據(jù)輸入還是輸出指令)引腳產(chǎn)生一個(gè)下降沿,這個(gè)下降沿的波形與P2.7相或,則會(huì)在或門(mén)的輸也產(chǎn)生一個(gè)下降沿,這個(gè)下降沿將使74HC244的輸出與輸入接通,這樣,輸入設(shè)備的數(shù)據(jù)就可以被MCS-51單片機(jī)從總線(xiàn)上讀取。

需要說(shuō)明的是,74HC244是不帶鎖存的,因此,如果輸人設(shè)備提供的數(shù)據(jù)時(shí)間比較短,那么就要用帶鎖存的芯片進(jìn)行擴(kuò)展,如74HC373,74HC573等。

2 輸出接口的擴(kuò)展

由于單片機(jī)的數(shù)據(jù)總線(xiàn)是為各個(gè)芯片服務(wù)的,一般不可能為一個(gè)輸出而一直保持一種狀態(tài),因此,輸出接口的主要功能是進(jìn)行數(shù)據(jù)保持(即數(shù)據(jù)鎖存),也就是說(shuō),輸出接口的擴(kuò)展實(shí)際上就是擴(kuò)展鎖存器。


上一頁(yè) 1 2 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉