新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 51單片機管腳說明(一)

51單片機管腳說明(一)

作者: 時間:2012-07-31 來源:網(wǎng)絡(luò) 收藏

各端口工作原理講解

并行端口

P0端口

總線I/O端口,雙向,三態(tài),數(shù)據(jù)地址分時復用,該端口除用于數(shù)據(jù)的輸入/輸出外,在8031外接程序存儲器時,還分時地輸出/輸入地址/指令。由Po端口輸出的信號無鎖存,輸入的信息有讀端口引腳和讀端口鎖存器之分。P0端口8位中的一位結(jié)構(gòu)圖見下圖:

由上圖可見,P0端口由鎖存器、輸入緩沖器、切換開關(guān)與相應(yīng)控制電路、場效應(yīng)管驅(qū)動電路構(gòu)成。

在輸出狀態(tài)下,當切換開關(guān)MUX向下時,從內(nèi)部總線來的數(shù)據(jù)經(jīng)鎖存器反相和場效應(yīng)管T2反相,輸出到端口引腳線上。此時,場效應(yīng)管T1關(guān)斷,因而這種輸出方式應(yīng)為外接上拉電阻的漏極開路式。當切換開關(guān)MUX向上時,一位地址/數(shù)據(jù)信號分時地輸出到端口線上。此外,由T1、T2的通斷組合,形成高電平、低電平與高阻浮動三態(tài)的輸出。

在輸入狀態(tài)下,從鎖存器和從引腳上讀來的信號一般是一致的,但也有例外。例如,當從內(nèi)部總線輸出低電平后,鎖存器Q=0,Q=1,場效應(yīng)管T2開通,端口線呈低電平狀態(tài)。此時無論端口線上外接的信號是低電乎還是高電平,從引腳讀入的信號都是低電平,因而不能正確地讀入端口引腳上的信號。又如,當從內(nèi)部總線輸出高電平后,鎖存器Q=1,Q=0,場效應(yīng)管T2截止。如外接引腳信號為低電平,從引腳上讀入的信號就與從鎖存器讀入的信號不同。為此,8031在對端口P0一P3的輸入操作上,有如下約定:為此,8031單片機在對端口P0一P3的輸入操作上,有如下約定:凡屬于讀-修改-寫方式的指令,從鎖存器讀入信號,其它指令則從端口引腳線上讀入信號。

讀-修改-寫指令的特點是,從端口輸入(讀)信號,在單片機內(nèi)加以運算(修改)后,再輸出(寫)到該端口上。下面是幾條讀--修改-寫指令的例子。

這樣安排的原因在于讀-修改-寫指令需要得到端口原輸出的狀態(tài),修改后再輸出,讀鎖存器而不是讀引腳,可以避免因外部電路的原因而使原端口的狀態(tài)被讀錯。

P0端口是8031單片機的總線口,分時出現(xiàn)數(shù)據(jù)D7一D0、低8位地址A7一AO,以及三態(tài),用來接口存儲器、外部電路與外部設(shè)備。P0端口是使用最廣泛的I/O端口。

P1端口:

通用I/0端口,準雙向靜態(tài)口。輸出的信息有鎖存,輸入有讀引腳和讀鎖存器之分。P1端口的一位結(jié)構(gòu)見下圖. 由圖可見,P1端口與P0端口的主要差別在于,P1端口用內(nèi)部上拉電阻R代替了P0端口的場效應(yīng)管T1,并且輸出的信息僅來自內(nèi)部總線。由內(nèi)部總線輸出的數(shù)據(jù)經(jīng)鎖存器反相和場效應(yīng)管反相后,鎖存在端口線上,所以,P1端口是具有輸出鎖存的靜態(tài)口。

由下圖可見,要正確地從引腳上讀入外部信息,必須先使場效應(yīng)管關(guān)斷,以便由外部輸入的信息確定引腳的狀態(tài)。為此,在作引腳讀入前,必須先對該端口寫入l。具有這種操作特點的輸入/輸出端口,稱為準雙向I/O口。8031單片機的P1、P2、P3都是準雙向口。P0端口由于輸出有三態(tài)功能,輸入前,端口線已處于高阻態(tài),無需先寫入l后再作讀操作。

單片機復位后,各個端口已自動地被寫入了1,此時,可直接作輸入操作。如果在應(yīng)用端口的過程中,已向P1一P3端口線輸出過0,則再要輸入時,必須先寫1后再讀引腳,才能得到正確的信息。此外,隨輸入指令的不同,H端口也有讀鎖存器與讀引腳之分。

Pl端口是803l單片機中唯一僅有的單功能I/O端口,并且沒有特定的專用功能,輸出信號鎖存在引腳上,故又稱為通用靜態(tài)口。



關(guān)鍵詞: 說明 管腳 單片機

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉