<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 51單片機 P0口工作原理詳細講解

51單片機 P0口工作原理詳細講解

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

一、P0端口的結構及工作原理

P0端口8位中的一位結構圖見(jiàn)下圖:

51單片機 P0口工作原理詳細講解

由上圖可見(jiàn),P0端口由鎖存器、輸入緩沖器、切換開(kāi)關(guān)、一個(gè)與非門(mén)、一個(gè)與門(mén)及場(chǎng)效應管驅動(dòng)電路構成。再看圖的右邊,標號為P0.X引腳的圖標,也就是說(shuō)P0.X引腳可以是P0.0到P0.7的任何一位,即在有8個(gè)與上圖相同的電路組成。

下面,我們先就組成的每個(gè)單元部份跟大家介紹一下:

先看輸入緩沖器:在中,有兩個(gè)三態(tài)的緩沖器,在學(xué)數字電路時(shí),我們已知道,三態(tài)門(mén)有三個(gè)狀態(tài),即在其的輸出端可以是高電平、低電平,同時(shí)還有一種就是高阻狀態(tài)(或稱(chēng)為禁止狀態(tài)),大家看上圖,上面一個(gè)是讀鎖存器的緩沖器,也就是說(shuō),要讀取D鎖存器輸出端Q的數據,那就得使讀鎖存器的這個(gè)緩沖器的三態(tài)控制端(上圖中標號為‘讀鎖存器’端)有效。下面一個(gè)是讀引腳的緩沖器,要讀取P0.X引腳上的數據,也要使標號為‘讀引腳’的這個(gè)三態(tài)緩沖器的控制端有效,引腳上的數據才會(huì )傳輸到我們單片機的內部上。

D鎖存器:構成一個(gè)鎖存器,通常要用一個(gè)時(shí)序電路,時(shí)序的單元電路在學(xué)數字電路時(shí)我們已知道,一個(gè)觸發(fā)器可以保存一位的二進(jìn)制數(即具有保持功能),在的32根I/O口線(xiàn)中都是用一個(gè)D觸發(fā)器來(lái)構成鎖存器的。大家看上圖中的D鎖存器,D端是數據輸入端,CP是控制端(也就是時(shí)序控制信號輸入端),Q是輸出端,Q非是反向輸出端。

對于D觸發(fā)器來(lái)講,當D輸入端有一個(gè)輸入信號,如果這時(shí)控制端CP沒(méi)有信號(也就是時(shí)序脈沖沒(méi)有到來(lái)),這時(shí)輸入端D的數據是無(wú)法傳輸到輸出端Q及反向輸出端Q非的。如果時(shí)序控制端CP的時(shí)序脈沖一旦到了,這時(shí)D端輸入的數據就會(huì )傳輸到Q及Q非端。數據傳送過(guò)來(lái)后,當CP時(shí)序控制端的時(shí)序信號消失了,這時(shí),輸出端還會(huì )保持著(zhù)上次輸入端D的數據(即把上次的數據鎖存起來(lái)了)。如果下一個(gè)時(shí)序控制脈沖信號來(lái)了,這時(shí)D端的數據才再次傳送到Q端,從而改變Q端的狀態(tài)。

多路開(kāi)關(guān):在中,當內部的存儲器夠用(也就是不需要外擴展存儲器時(shí),這里講的存儲器包括數據存儲器及程序存儲器)時(shí),P0口可以作為通用的輸入輸出端口(即I/O)使用,對于8031(內部沒(méi)有ROM)的單片機或者編寫(xiě)的程序超過(guò)了單片機內部的存儲器容量,需要外擴存儲器時(shí),P0口就作為‘地址/數據’總線(xiàn)使用。那么這個(gè)多路選擇開(kāi)關(guān)就是用于選擇是做為普通I/O口使用還是作為‘數據/地址’總線(xiàn)使用的選擇開(kāi)關(guān)了。大家看上圖,當多路開(kāi)關(guān)與下面接通時(shí),P0口是作為普通的I/O口使用的,當多路開(kāi)關(guān)是與上面接通時(shí),P0口是作為‘地址/數據’總線(xiàn)使用的。

輸出驅動(dòng)部份:從上圖中我們已看出,P0口的輸出是由兩個(gè)MOS管組成的推拉式結構,也就是說(shuō),這兩個(gè)MOS管一次只能導通一個(gè),當V1導通時(shí),V2就截止,當V2導通時(shí),V1截止。

與門(mén)、與非門(mén):這兩個(gè)單元電路的邏輯原理我們在第四課數字及常用邏輯電路時(shí)已做過(guò)介紹,不明白的同學(xué)請回到第四節去看看。

前面我們已將P0口的各單元部件進(jìn)行了一個(gè)詳細的講解,下面我們就來(lái)研究一下P0口做為I/O口及地址/使用時(shí)的具體工作過(guò)程。

51單片機相關(guān)文章:51單片機教程


存儲器相關(guān)文章:存儲器原理



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

評論


相關(guān)推薦

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

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>