雙向IO口與準(zhǔn)雙向IO口的區(qū)別_第1頁
雙向IO口與準(zhǔn)雙向IO口的區(qū)別_第2頁
雙向IO口與準(zhǔn)雙向IO口的區(qū)別_第3頁
雙向IO口與準(zhǔn)雙向IO口的區(qū)別_第4頁
雙向IO口與準(zhǔn)雙向IO口的區(qū)別_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、單片機P0口是雙相口,而P1P2P3是準(zhǔn)雙相口。舉個例子:相信大家都理解準(zhǔn)媽媽,就是懷孕的女人,當(dāng)然這里也是這樣的,就不是真正的雙相口了。為什么P0是雙向口,這里的差別是什么呢?最主要原因是:P0沒有上拉電阻,所以當(dāng)P0最I(lǐng)O口的時候一定要加上上拉電阻,否則的話,你輸出的1就是無效了,這樣T2截止了,那么P0都就是呈現(xiàn)高阻狀態(tài)了。下圖分別是P0,P1P2P3的讀寫數(shù)據(jù),紅線表示輸出,藍線表示輸入(讀引腳)還有一個就是讀鎖存器的,沒畫出來。在讀引腳的時候,有一點注意:每當(dāng)讀引腳的時候要確保場效應(yīng)管T2是截止的,否則的話1(高電平)外部數(shù)據(jù)讀不出來,T2會把它拉低,所以通過MOV PX,FFH,把

2、T2截止,就完美了。在單片機學(xué)習(xí)、開發(fā)和應(yīng)用中,IO口的配置對功能的實現(xiàn)起著重要的作用,下面介紹常見的四種配置,而現(xiàn)在很多單片機都兼有這四種配置,可供選擇。一.準(zhǔn)雙向口配置如下圖,當(dāng)IO輸出為高電平時,其驅(qū)動能力很弱,外部負(fù)載很容易將其拉至低電平。當(dāng)IO輸出為低電平時,其驅(qū)動能力很強,可吸收相當(dāng)大的電流。準(zhǔn)雙向口有三個上拉晶體管,一個“極弱上拉”,當(dāng)端鎖存器為邏輯“1”時打開,當(dāng)端口懸空時,“極弱上拉”將端口上拉至高電平。第二個上拉晶體管為“弱上拉”,當(dāng)端口鎖存器為邏輯“1”且端口本身也為“1”時打開,此上拉提供的電流,使準(zhǔn)雙向口輸出為“1”。如果此時端口被外部裝置拉到邏輯“0”時,通過施密特

3、觸發(fā)器,控制“弱上拉”關(guān)閉,而“極弱上拉”維持開狀態(tài),為了把這個端口拉低,外部裝置必須有足夠的灌電流能力,使管腳上的電壓,降到門檻電以下。第三個上拉晶體管為“強上拉”,當(dāng)端口鎖存器由“0”跳變到“1”時,這個上拉用來加快端口由邏輯“0”到邏輯“1”的轉(zhuǎn)換速度。準(zhǔn)雙向口做為輸入時,通個一個施密特觸如器和一個非門,用以干擾和濾波。準(zhǔn)雙向口用作輸入時,可對地接按鍵,如下圖1,當(dāng)然也可以去掉R1直接接按鍵,當(dāng)按鍵閉合時,端口被拉至低電平,當(dāng)按鍵松開時,端口被內(nèi)部“極弱上拉”晶體管拉至高電平。當(dāng)端口作為輸出時,不應(yīng)對地外接LED如圖形控制,這樣端口的驅(qū)動能力很弱,LED只能發(fā)很微弱的光,如果要驅(qū)動LED

4、,要采用圖 3的方法,這樣準(zhǔn)雙向口在輸出為低時,可吸收20mA的電流,故能驅(qū)動LED。圖4的方法也可以,不過LED不發(fā)光時,端口要吸收收很大電流。二.開漏輸出配置這種配置,關(guān)閉所有上拉晶體管,只驅(qū)動下拉晶體管,下拉與準(zhǔn)雙向口下拉配置相同,因此只能輸出低電平(吸收電流),和高阻狀態(tài)。不能輸出高電平(輸也電流)。如果要作為邏輯輸出,必須接上拉電阻到VCC。這種配置也可以通過上圖3和圖4來驅(qū)動LED。三.推挽輸出配置這種配置的下拉與準(zhǔn)雙向口和開漏配置相同,具有較強的拉電流能力,不同的是,具有持續(xù)的強上拉。因此可以用上圖2的方法來驅(qū)動LED。四.僅為輸入配置(高阻配置)這種配置不能輸出電流,也不能有收

5、電流,只能作為輸入數(shù)據(jù)使用。以上四種配置各有其特點,在使用中應(yīng)根據(jù)其特點靈活運用。準(zhǔn)雙向口的最大特點是既可以作為輸入,也可以作為輸出,不需要通過控制切換。推挽輸出的特點是,無論輸也高電平還是低電平都有較大的驅(qū)動能力,在輸也高電平時,也能直接點亮LED,這在準(zhǔn)雙向口中是不能辦到的。這種配置不宜作為輸入,因為這需要外部設(shè)備有很強的拉電流的能胃。僅為輸入配置的特點是端口只能作為輸入使用,可以獲得很高的輸入阻抗,在有模擬比較器或ADC的端口中用得較多。開漏輸出配置與準(zhǔn)又向口相似,但內(nèi)部沒有上拉電阻。有很好的電氣兼容性,外部接上拉電阻到3V電源,就能和3V邏輯器件連接。外部接上拉電阻到5V電源,就要以和

6、5V器件連接。需要說明的是以上四種配置均可以作為輸入,也就是都可以檢測端的邏輯狀態(tài),但其特性不同,不是每種配置都可以直接接按鍵。=下面通過51的IO口介紹各種狀態(tài)的工作原理MCS-51有4組8位I/O口:P0、P1、P2和P3口,P1、P2和P3為準(zhǔn)雙向口,P0口則為雙向三態(tài)輸入輸出口,下面我們分別介紹這幾個口線。一、P0口和P2口 圖1和圖2為P0口和P2口其中一位的電路圖。由圖可見,電路中包含一個數(shù)據(jù)輸出鎖存器(D觸發(fā)器)和兩個三態(tài)數(shù)據(jù)輸入緩沖器,另外還有一個數(shù)據(jù)輸出的驅(qū)動(T1和T2)和控制電路。這兩組口線用來作為CPU與外部數(shù)據(jù)存儲器、外部程序存儲器和I/O擴展口,而不能象P1、P3直

7、接用作輸出口。它們一起可以作為外部地址總線,P0口身兼兩職,既可作為地址總線,也可作為數(shù)據(jù)總線。圖1 單片機P0口內(nèi)部一位結(jié)構(gòu)圖圖2 單片機P0口內(nèi)部一位結(jié)構(gòu)圖 P2口作為外部數(shù)據(jù)存儲器或程序存儲器的地址總線的高8位輸出口AB8-AB15,P0口由ALE選通作為地址總線的低8位輸出口AB0-AB7。外部的程序存儲器由PSEN信號選通,數(shù)據(jù)存儲器則由WR和RD讀寫信號選通,因為216=64k,所以MCS-51最大可外接64kB的程序存儲器和數(shù)據(jù)存儲器。二、P1口 圖3為P1口其中一位的電路圖,P1口為8位準(zhǔn)雙向口,每一位均可單獨定義為輸入或輸出口,當(dāng)作為輸入口時,1寫入鎖存器,Q(非)=0,T2

8、截止,內(nèi)上拉電阻將電位拉至1,此時該口輸出為1,當(dāng)0寫入鎖存器,Q(非)=1,T2導(dǎo)通,輸出則為0。圖3 單片機P2口內(nèi)部一位結(jié)構(gòu)圖 作為輸入口時,鎖存器置1,Q(非)=0,T2截止,此時該位既可以把外部電路拉成低電平,也可由內(nèi)部上拉電阻拉成高電平,正因為這個原因,所以P1口常稱為準(zhǔn)雙向口。需要說明的是,作為輸入口使用時,有兩種情況: 1.首先是讀鎖存器的內(nèi)容,進行處理后再寫到鎖存器中,這種操作即讀修改寫操作,象JBC(邏輯判斷)、CPL(取反)、INC(遞增)、DEC(遞減)、ANL(與邏輯)和ORL(邏輯或)指令均屬于這類操作。 2.讀P1口線狀態(tài)時,打開三態(tài)門G2,將外部狀態(tài)讀入CPU。

9、三、P3口 P3口的電路如圖4所示,P3口為準(zhǔn)雙向口,為適應(yīng)引腳的第二功能的需要,增加了第二功能控制邏輯,在真正的應(yīng)用電路中,第二功能顯得更為重要。由于第二功能信號有輸入輸出兩種情況,我們分別加以說明。圖4 單片機P0口內(nèi)部一位結(jié)構(gòu)圖 P3口的輸入輸出及P3口鎖存器、中斷、定時/計數(shù)器、串行口和特殊功能寄存器有關(guān),P3口的第一功能和P1口一樣可作為輸入輸出端口,同樣具有字節(jié)操作和位操作兩種方式,在位操作模式下,每一位均可定義為輸入或輸出。 我們著重討論P3口的第二功能,P3口的第二功能各管腳定義如下: P3.0 串行輸入口(RXD) P3.1 串行輸出口(TXD) P3.2 外中斷0(INT0

10、) P3.3 外中斷1(INT1) P3.4 定時/計數(shù)器0的外部輸入口(T0) P3.5 定時/計數(shù)器1的外部輸入口(T1) P3.6 外部數(shù)據(jù)存儲器寫選通(WR) P3.7 外部數(shù)據(jù)存儲器讀選通(RD) 對于第二功能為輸出引腳,當(dāng)作I/O口使用時,第二功能信號線應(yīng)保持高電平,與非門開通,以維持從鎖存器到輸出口數(shù)據(jù)輸出通路暢通無阻。而當(dāng)作第二功能口線使用時,該位的鎖存器置高電平,使與非門對第二功能信號的輸出是暢通的,從而實現(xiàn)第二功能信號的輸出。對于第二功能為輸入的信號引腳,在口線上的輸入通路增設(shè)了一個緩沖器,輸入的第二功能信號即從這個緩沖器的輸出端取得。而作為I/O口線輸入端時,取自三態(tài)緩沖

11、器的輸出端。這樣,不管是作為輸入口使用還是第二功能信號輸入,輸出電路中的鎖存器輸出和第二功能輸出信號線均應(yīng)置“1”。四、IO口工作原理 1. P0作為地址數(shù)據(jù)總線時,T1和T2是一起工作的,構(gòu)成推挽結(jié)構(gòu)。高電平時,T1打開,T2截止;低電平時,T1截止,T2打開。這種情況下不用外接上拉電阻.而且,當(dāng)T1打開,T2截止,輸出高電平的時候,因為內(nèi)部電源直接通過T1輸出到P0口線上,因此驅(qū)動能力(電流)可以很大,這就是為什么教科書上說可以驅(qū)動8個TTL負(fù)載的原因。 2. P0作為一般端口時,T1就永遠的截止,T2根據(jù)輸出數(shù)據(jù)0導(dǎo)通和1截止,導(dǎo)通時拉地,當(dāng)然是輸出低電平;要輸出高電平,T2就截止,P0

12、口就沒有輸出了,(注意,這種情況就是所謂的高阻浮空狀態(tài)),如果加上外部上拉電阻,輸出就變成了高電平1。 3. 其他端口P1、P2和P3,在內(nèi)部直接將P1口中的T1換成了上拉電阻,所以不用外接,但內(nèi)部上拉電阻太大,電流太小,有時因為電流不夠,也會再并一個上拉電阻。 4. 在某個時刻,P0口上輸出的是作為總線的地址數(shù)據(jù)信號還是作為普通I/O口的電平信號,是依靠多路開關(guān)MUX來切換的。而MUX的切換,又是根據(jù)單片機指令來區(qū)分的。當(dāng)指令為外部存儲器/IO口讀/寫時,比如 MOVX A,DPTR ,MUX是切換到地址/數(shù)據(jù)總線上;而當(dāng)普通MOV傳送指令操作P0口時,MUX是切換到內(nèi)部總線上的。 5. P

13、0、P1、P2、P3口用于輸入時,需要寫1使IO下拉的MOS管截止,以免MOS管導(dǎo)通將輸入拉底為0,當(dāng)一直用于輸入時不用置1(先使用該IO輸出,該IO鎖存器里可能是0,再用該IO輸入則會使MOS管導(dǎo)通),將IO寫1后,該IO鎖存器不會變了,所以再一直用于輸入不用置1。p0用于地址數(shù)據(jù)線時輸入不用寫1,因為MUX沒和鎖存器相連。PS: Because Ports 1, 2, and 3 have fixed internal pullups, they are sometimes called “quasi- bidirectional” ports. 因為端口1、2、3有固定的內(nèi)部上拉,所以有

14、時候他們被稱為準(zhǔn)雙向口。Port 0, on the other hand, is considered “true” bidirectional, because when configured as an input it floats. 端口0, 從另外一方面來說,就被 認(rèn)為是真正的雙向,因為當(dāng)它被設(shè)置為輸入的時候是浮空(高阻態(tài))的。五、P0口上拉電阻選擇 如果是驅(qū)動led,那么用1K左右的就行了。如果希望亮度大一些,電阻可減小,最小不要小于200歐姆,否則電流太大;如果希望亮度小一些,電阻可增大,增加到多少呢,主要看亮度情況,以亮度合適為準(zhǔn),一般來說超過3K以上時,亮度就很弱了,但是對

15、于超高亮度的LED,有時候電阻為10K時覺得亮度還能夠用。我通常就用1k的。 對于驅(qū)動光耦合器,如果是高電位有效,即耦合器輸入端接端口和地之間,那么和LED的情況是一樣的;如果是低電位有效,即耦合器輸入端接端口和VCC之間,那么除了要串接一個14.7k之間的電阻以外,同時上拉電阻的阻值就可以用的特別大,用100k500K之間的都行,當(dāng)然用10K的也可以,但是考慮到省電問題,沒有必要用那么小的。 對于驅(qū)動晶體管,又分為PNP和NPN管兩種情況:對于NPN,毫無疑問NPN管是高電平有效的,因此上拉電阻的阻值用2K20K之間的,具體的大小還要看晶體管的集電極接的是什么負(fù)載,對于LED類負(fù)載,由于發(fā)管電流很小,因此上拉電阻的阻值可以用20k的,但是對于管子的集電極為繼電器負(fù)載時,由于集電極電流大,因此上拉電阻的阻值最好不要大于4.7K,有時候甚至用2K的。對于PNP管,毫無疑問PNP管是低電平有效的,因此上拉電阻的阻值用100K以上的就行了,且管子的基極必須串接一個110K的電阻,阻值的大小要看管子集電極的負(fù)載是什么,對于LED類負(fù)載,由于發(fā)光電流很小,因此基極串接的電阻的阻值可以用20k的,但是對于管子的集電極為繼

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論