與推挽輸出相對(duì)的是開漏輸出,而開漏輸出分為OC、OD兩種,下文分別詳細(xì)介紹。
推挽輸出
推挽輸出(Push-Pull Output)是由兩個(gè)MOS或者三極管受到互補(bǔ)控制信號(hào)的控制,兩個(gè)管子始終處在一個(gè)導(dǎo)通另一個(gè)截止的狀態(tài),如圖1所示:
圖1 推挽輸出結(jié)構(gòu) 推挽輸出的最大特點(diǎn)是可以真正的輸出高電平和低電平,而且在兩種電平下都具有驅(qū)動(dòng)能力。
補(bǔ)充說明:
所謂的驅(qū)動(dòng)能力,就是指輸出電流的能力。對(duì)于驅(qū)動(dòng)大負(fù)載(即負(fù)載內(nèi)阻越小,負(fù)載越大)時(shí),例如IO輸出為5V,驅(qū)動(dòng)的負(fù)載內(nèi)阻為10ohm,于是根據(jù)歐姆定律可以正常情況下負(fù)載上的電流為0.5A(推算出功率為2.5W)。顯然一般的IO不可能有這么大的驅(qū)動(dòng)能力,也就是沒有辦法輸出這么大的電流。于是造成的結(jié)果就是輸出電壓會(huì)被拉下來,達(dá)不到標(biāo)稱的5V。當(dāng)然如果只是數(shù)字信號(hào)的傳遞,下一級(jí)的輸入阻抗理論上最好是高阻,也就是只需要傳電壓,基本沒有電流,也就沒有功率,于是就不需要很大的驅(qū)動(dòng)能力。 對(duì)于推挽輸出,輸出高、低電平時(shí)電流的流向如圖2所示。所以相比于后面介紹的開漏輸出,輸出高電平時(shí)的驅(qū)動(dòng)能力強(qiáng)很多。
圖2 灌電流與拉電流
缺點(diǎn)
但推挽輸出的一個(gè)缺點(diǎn)是,如果當(dāng)兩個(gè)推挽輸出結(jié)構(gòu)相連在一起,一個(gè)輸出高電平,即上面的MOS導(dǎo)通,下面的MOS閉合時(shí);同時(shí)另一個(gè)輸出低電平,即上面的MOS閉合,下面的MOS導(dǎo)通時(shí)。電流會(huì)從第一個(gè)引腳的VCC通過上端MOS再經(jīng)過第二個(gè)引腳的下端MOS直接流向GND。整個(gè)通路上電阻很小,會(huì)發(fā)生短路,進(jìn)而可能造成端口的損害。這也是為什么推挽輸出不能實(shí)現(xiàn)" 線與"的原因。
開漏輸出
常說的與推挽輸出相對(duì)的就是開漏輸出(Open Drain Output),對(duì)于開漏輸出和推挽輸出的區(qū)別最普遍的說法就是開漏輸出無法真正輸出高電平,即高電平時(shí)沒有驅(qū)動(dòng)能力,需要借助外部上拉電阻完成對(duì)外驅(qū)動(dòng)。關(guān)于上下拉電阻可以參考此文:通俗理解STM32中的上/下拉電阻。 下面就從內(nèi)部結(jié)構(gòu)和原理上說明為什么開漏輸出輸出高電平時(shí)沒有驅(qū)動(dòng)能力,以及進(jìn)一步比較與推挽輸出的區(qū)別。 首先需要介紹一些開漏輸出(OD)和開集輸出(OC)。這兩種輸出的原理和特性基本是類似的,區(qū)別如下:
開漏使用MOS管,其中的"漏"指的就是MOS管的漏極
開集使用三極管,其中的"集"指的就是三極管的集電極
這兩者其實(shí)都是和推挽輸出相對(duì)應(yīng)的輸出模式,由于使用MOS管的情況較多,很多時(shí)候就用"開漏輸出"這個(gè)詞代替了開漏輸出和開集輸出。 OC 介紹就先從開集輸出開始,其原理電路結(jié)構(gòu)如圖3所示。
圖3 OC
圖3左邊電路是開集(OC)輸出最基本的電路,當(dāng)輸入為高電平時(shí),NPN三極管導(dǎo)通,Output被拉到GND,輸出為低電平;當(dāng)輸入為低電平時(shí),NPN三極管閉合,Output相當(dāng)于開路(輸出高阻)。高電平時(shí)輸出高阻(高阻、三態(tài)以及floating說的都是一個(gè)意思),此時(shí)對(duì)外沒有任何的驅(qū)動(dòng)能力。這就是開漏和開集輸出最大的特點(diǎn),如何利用該特點(diǎn)完成各種功能稍后介紹。這個(gè)電路雖然完成了開集輸出的功能,但是會(huì)出現(xiàn)input為高,輸出為低;input為低,輸出為高的情況。 圖3右邊的電路中多使用了一個(gè)三極管完成了"反相"。當(dāng)輸入為高電平時(shí),第一個(gè)三極管導(dǎo)通,此時(shí)第二個(gè)三極管的輸入端會(huì)被拉到GND,于是第二個(gè)三極管閉合,輸出高阻;當(dāng)輸入為低電平時(shí),第一個(gè)三極管閉合,此時(shí)第二個(gè)三極管的輸入端會(huì)被上拉電阻拉到高電平,于是第二個(gè)三極管導(dǎo)通,輸出被拉到GND。這樣,這個(gè)電路的輸入與輸出是同相的了。 OD 接下來介紹開漏輸出的電路,如圖4所示。原理與開集輸出基本相同,只是將三極管換成了MOS而已。 圖4 OD
特點(diǎn)及應(yīng)用
接著說說開漏、開集輸出的特點(diǎn)以及應(yīng)用,由于兩者相似,后文中若無特殊說明,則用開漏表示開漏和開集兩種輸出電路。 開漏輸出最主要的特性就是高電平?jīng)]有驅(qū)動(dòng)能力,需要借助外部上拉電阻才能真正輸出高電平,其電路如圖5所示。
圖5 OD門上拉 當(dāng)MOS管閉合時(shí),開漏輸出電路輸出高電平,且連接著負(fù)載時(shí),電流流向是從外部電源,流經(jīng)上拉電阻RPU,流進(jìn)負(fù)載,最后進(jìn)入GND。
開漏輸出的這一特性一個(gè)明顯的優(yōu)勢(shì)就是可以很方便的調(diào)節(jié)輸出的電平,因?yàn)檩敵鲭娖酵耆缮侠娮柽B接的電源電平?jīng)Q定。所以在需要進(jìn)行電平轉(zhuǎn)換的地方,非常適合使用開漏輸出。
開漏輸出的這一特性另一個(gè)好處在于可以實(shí)現(xiàn)"線與"功能,所謂的"線與"指的是多個(gè)信號(hào)線直接連接在一起,只有當(dāng)所有信號(hào)全部為高電平時(shí),合在一起的總線為高電平;只要有任意一個(gè)或者多個(gè)信號(hào)為低電平,則總線為低電平。而推挽輸出就不行,如果高電平和低電平連在一起,會(huì)出現(xiàn)電流倒灌,損壞器件。
推挽、開漏對(duì)比
關(guān)于推挽輸出、開漏輸出在STM32中的應(yīng)用,請(qǐng)移步此文:STM32中GPIO工作原理詳解。理清楚了推挽、開漏之后,可以更好的理解GPIO工作原理。
編輯:黃飛
-
三極管
+關(guān)注
關(guān)注
142文章
3561瀏覽量
120890 -
STM32
+關(guān)注
關(guān)注
2258文章
10828瀏覽量
352493 -
MOS
+關(guān)注
關(guān)注
31文章
1199瀏覽量
92906
原文標(biāo)題:梳理清楚推挽、開漏、OC、OD
文章出處:【微信號(hào):c-stm32,微信公眾號(hào):STM32嵌入式開發(fā)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論