詳解開(kāi)漏輸出,推挽輸出,上拉電阻
掃描二維碼
隨時(shí)隨地手機(jī)看文章
首先我們來(lái)建立開(kāi)漏輸出與推挽輸出的模型吧!
這兩幅圖是開(kāi)漏輸出的簡(jiǎn)化模型!
推挽輸出實(shí)際上應(yīng)是把圖三的電阻也換成一個(gè)開(kāi)關(guān)(即場(chǎng)效應(yīng)管),當(dāng)上面開(kāi)關(guān)接通,下面關(guān)斷時(shí),輸出高電平;當(dāng)上面開(kāi)關(guān)關(guān)斷,下面開(kāi)關(guān)接通時(shí),輸出低電平;當(dāng)二者都關(guān)斷時(shí),呈高阻態(tài),此時(shí)可以輸入信號(hào)。當(dāng)然不允許兩者同時(shí)接通,所以才叫推挽,即同一時(shí)刻二者最多只能有一個(gè)工作。
為什么要有開(kāi)漏輸出?因?yàn)樗幸韵聝?yōu)點(diǎn):
1.利用外部電路的驅(qū)動(dòng)能力,減少I(mǎi)C內(nèi)部的驅(qū)動(dòng);
2.可以將多個(gè)開(kāi)漏輸出的Pin,連接到一條線上。形成 “與邏輯” 關(guān)系。如果是推挽輸出顯然是不行的,因?yàn)榧偃缒惆岩?rdquo;與”的I/O口都掛到一條線上,那么在一些高一些低的情況下顯然會(huì)燒掉場(chǎng)效應(yīng)管(原因是兩個(gè)場(chǎng)效應(yīng)管直接連通了,聯(lián)想上面的模型去想吧)
3.可以利用改變上拉電源的電壓,改變傳輸電平。比如你想這個(gè)I/O口輸出3.3V電平,那么只需要把上拉電平設(shè)為3.3V就OK了撒!這個(gè)5V的51單片機(jī)也可以輸出3.3V電平了,呵呵!但前提是用P0口哈!
那開(kāi)漏輸出又有什么不足的呢?
1.輸出電流低,因?yàn)?strong>上拉電阻一般取的比較大(為了減少靜態(tài)功耗),所以驅(qū)動(dòng)力不足,而推挽輸出用的是場(chǎng)效應(yīng)管,當(dāng)然驅(qū)動(dòng)能力強(qiáng)了.
2. 帶來(lái)上升沿的延時(shí),因?yàn)樯仙厥峭ㄟ^(guò)外接上拉無(wú)源電阻對(duì)負(fù)載充電的,當(dāng)電阻選擇小時(shí)延時(shí)就小、但功耗大,反之延時(shí)大功耗小。
推挽輸出的優(yōu)點(diǎn):
1.驅(qū)動(dòng)能力強(qiáng),因?yàn)橛玫氖菆?chǎng)效應(yīng)管,當(dāng)然驅(qū)動(dòng)能力強(qiáng)了.
2.真正的雙向口
推挽輸出的缺點(diǎn):
1.不能把兩個(gè)都是推挽輸出的CMOS門(mén)級(jí)相連,這樣當(dāng)一高一低時(shí)很容易因功耗過(guò)大燒管子,推挽輸出一般用于驅(qū)動(dòng).
關(guān)于雙向口與準(zhǔn)雙向口!
什么是準(zhǔn)雙向口?
首先我們要明白什么是雙向口?
雙向口是指輸入輸出口具有三態(tài),即輸出高,輸出低,和輸入高阻態(tài)
例如PO口作為地址/數(shù)據(jù) 復(fù)用口時(shí)就是完全意義上的雙向口,它的上下兩個(gè)場(chǎng)效應(yīng)管交替工作,當(dāng)上面的場(chǎng)效應(yīng)管工作時(shí),輸出1,當(dāng)下面的場(chǎng)效應(yīng)管工作時(shí),輸出0,當(dāng)兩個(gè)都不工作時(shí),為高阻輸入態(tài).此時(shí)實(shí)際上就和推挽輸出沒(méi)有兩樣。
而P1,P2,P3口和PO口作為普通I/O口時(shí)就只能稱(chēng)為準(zhǔn)雙向口,因這種情況下是沒(méi)有高阻輸入態(tài)的,為什么?因?yàn)樗冀K有個(gè)上拉電阻存在(開(kāi)漏條件下加的嘛),輸入0時(shí),是靠外界把這個(gè)上拉電阻拉低得到輸入的0的.
擴(kuò)展閱讀:三極管放大的基本電路