一、漏極開路(OD)輸出:
漏極開路(OD)輸出,跟集電極開路輸出是十分類似的。將上面的三極管換成場(chǎng)效應(yīng)管即可。這樣集電極就變成了漏極,OC就變成了OD,原理分析是一樣的。對(duì)于漏極開路(OD)來說,輸出端相當(dāng)于三極管的集電極。 要得到高電平狀態(tài)需要上拉電阻才行。 適合于做電流型的驅(qū)動(dòng),其吸收電流的能力相對(duì)強(qiáng)(一般20ma以內(nèi))。
要實(shí)現(xiàn)“線與”需要用OC(open collector)門電路。是兩個(gè)參數(shù)相同的三極管或MOSFET,以推挽方式存在于電路中,各負(fù)責(zé)正負(fù)半周的波形放大任務(wù)。電路工作時(shí),兩只對(duì)稱的功率開關(guān)管每次只有一個(gè)導(dǎo)通,所以導(dǎo)通損耗小,效率高。輸出既可以向負(fù)載灌電流,也可以從負(fù)載抽取電流。
在電路設(shè)計(jì)時(shí)我們常常遇到開漏(open drain)和開集(open collector)的概念。
所謂開漏電路概念中提到的“漏”就是指MOSFET的漏極。同理,開集電路中的“集”就是指三極管的集電極。開漏電路就是指以MOSFET的漏極為輸出的電路。一般的用法是會(huì)在漏極外部的電路添加上拉電阻。完整的開漏電路應(yīng)該由開漏器件和開漏上拉電阻組成。如圖1所示:
組成開漏形式的電路有以下幾個(gè)特點(diǎn):
1. 利用外部電路的驅(qū)動(dòng)能力,減少IC內(nèi)部的驅(qū)動(dòng)(或驅(qū)動(dòng)比芯片電源電壓高的負(fù)載)。當(dāng)IC內(nèi)部MOSFET導(dǎo)通時(shí),驅(qū)動(dòng)電流是從外部的VCC流經(jīng)R pull-up ,MOSFET到GND。IC內(nèi)部?jī)H需很下的柵極驅(qū)動(dòng)電流。如圖1。
2. 可以將多個(gè)開漏輸出的Pin,連接到一條線上。形成 “與邏輯” 關(guān)系。如圖1,當(dāng)PIN_A、PIN_B、PIN_C任意一個(gè)變低后,開漏線上的邏輯就為0了。這也是I2C,SMBus等總線判斷總線占用狀態(tài)的原理。如果作為輸出必須接上拉電阻。接容性負(fù)載時(shí),下降延是芯片內(nèi)的晶體管,是有源驅(qū)動(dòng),速度較快;上升延是無源的外接電阻,速度慢。如果要求速度高電阻選擇要小,功耗會(huì)大。所以負(fù)載電阻的選擇要兼顧功耗和速度。
3. 可以利用改變上拉電源的電壓,改變傳輸電平。如圖2, IC的邏輯電平由電源Vcc1決定,而輸出高電平則由Vcc2(上拉電阻的電源電壓)決定。這樣我們就可以用低電平邏輯控制輸出高電平邏輯了(這樣你就可以進(jìn)行任意電平的轉(zhuǎn)換)。(例如加上上拉電阻就可以提供TTL/CMOS電平輸出等。)
4. 開漏Pin不連接外部的上拉電阻,則只能輸出低電平(因此對(duì)于經(jīng)典的51單片機(jī)的P0口而言,要想做輸入輸出功能必須加外部上拉電阻,否則無法輸出高電平邏輯)。一般來說,開漏是用來連接不同電平的器件,匹配電平用的。
5. 標(biāo)準(zhǔn)的開漏腳一般只有輸出的能力。添加其它的判斷電路,才能具備雙向輸入、輸出的能力。
6.正常的CMOS輸出級(jí)是上、下兩個(gè)管子,把上面的管子去掉就是OPEN-DRAIN了。這種輸出的主要目的有兩個(gè):電平轉(zhuǎn)換、線與。
7.線與功能主要用于有多個(gè)電路對(duì)同一信號(hào)進(jìn)行拉低操作的場(chǎng)合,如果本電路不想拉低,就輸出高電平,因?yàn)镺PEN-DRAIN上面的管子被拿掉,高電平是靠外接的上拉電阻實(shí)現(xiàn)的。(而正常的CMOS輸出級(jí),如果出現(xiàn)一個(gè)輸出為高另外一個(gè)為低時(shí),等于電源短路。)
8.OPEN-DRAIN提供了靈活的輸出方式,但是也有其弱點(diǎn),就是帶來上升沿的延時(shí)。因?yàn)樯仙厥峭ㄟ^外接上拉無源電阻對(duì)負(fù)載充電,所以當(dāng)電阻選擇小時(shí)延時(shí)就小,但功耗大;反之延時(shí)大功耗小。所以如果對(duì)延時(shí)有要求,則建議用下降沿輸出。
應(yīng)用中需注意:
1. 開漏和開集的原理類似,在許多應(yīng)用中我們利用開集電路代替開漏電路。例如,某輸入Pin要求由開漏電路驅(qū)動(dòng)。則我們常見的驅(qū)動(dòng)方式是利用一個(gè)三極管組成開集電路來驅(qū)動(dòng)它,即方便又節(jié)省成本。如圖3。
2. 上拉電阻R pull-up的阻值決定了邏輯電平轉(zhuǎn)換的沿的速度。阻值越大,速度越低功耗越小。反之亦然。
Push-Pull輸出就是一般所說的推挽輸出,在CMOS電路里面應(yīng)該較CMOS輸出更合適,因?yàn)樵贑MOS里面的push-pull輸出能力不可能做得雙極那么大。輸出能力看IC內(nèi)部輸出極N管P管的面積。和開漏輸出相比,push-pull的高低電平由IC的電源低定,不能簡(jiǎn)單的做邏輯操作等。push-pull是現(xiàn)在CMOS電路里面用得最多的輸出級(jí)設(shè)計(jì)方式。
當(dāng)然open drain也不是沒有代價(jià),這就是輸出的驅(qū)動(dòng)能力很差。輸出的驅(qū)動(dòng)能力很差的說法不準(zhǔn)確,驅(qū)動(dòng)能力取決于IC中的末級(jí)晶體管功率。OD只是帶來上升沿的延時(shí),因?yàn)樯仙厥峭ㄟ^外接上拉無源電阻對(duì)負(fù)載充電的,當(dāng)電阻選擇小時(shí)延時(shí)就小、但功耗大,反之延時(shí)大功耗小。OPEN DRAIN提供了靈活的輸出方式,但也是有代價(jià)的,如果對(duì)延時(shí)有要求,建議用下降沿輸出。
電阻小延時(shí)小的前提條件是電阻選擇的原則應(yīng)在末級(jí)晶體管功耗允許范圍內(nèi),有經(jīng)驗(yàn)的設(shè)計(jì)者在使用邏輯芯片時(shí),不會(huì)選擇1歐姆的電阻作為上拉電阻。在脈沖的上升沿電源通過上拉無源電阻對(duì)負(fù)載充電,顯然電阻越小上升時(shí)間越短,在脈沖的下降沿,除了負(fù)載通過有源晶體管放電外,電源也通過上拉電阻和導(dǎo)通的晶體管對(duì)地 形成通路,帶來的問題是芯片的功耗和耗電問題。電阻影響上升沿,不影響下降沿。如果使用中不關(guān)心上升沿,上拉電阻就可選擇盡可能的大點(diǎn),以減少對(duì)地通路的 電流。如果對(duì)上升沿時(shí)間要求較高,電阻大小的選擇應(yīng)以芯片功耗為參考。
二、推挽(Push-Pull)輸出:
1、什么是推挽?
一般指兩三極管分別受兩互補(bǔ)信號(hào)的控制,總是在一個(gè)三極管導(dǎo)通的時(shí)候另一個(gè)三極管截止,就剛好形成了推挽相連。這樣的電路也稱為推拉式或Totem-pole電路。推挽電路適用于低電壓大電流的場(chǎng)合,廣泛應(yīng)用于開關(guān)電源和功放電路中。簡(jiǎn)化電路圖如下所示:
2、推挽電路優(yōu)缺點(diǎn):
優(yōu)點(diǎn)是:結(jié)構(gòu)簡(jiǎn)單,開關(guān)變壓器磁芯利用率高,推挽電路工作時(shí),兩只對(duì)稱的功率開關(guān)管每次只有一個(gè)導(dǎo)通,所以導(dǎo)通損耗小。
缺點(diǎn)是:變壓器帶有中心抽頭,而且開關(guān)管的承受電壓較高;由于變壓器原邊漏感的存在,功率開關(guān)管關(guān)斷的瞬間,漏源極會(huì)產(chǎn)生較大的電壓尖峰,另外輸入電流的紋波較大,因而輸入濾波器的體積較大。
3、要理解推挽輸出,首先要理解好三極管(晶體管)的原理。
下面這種三極管有三個(gè)端口,分別是基極(Base)、集電極(Collector)和發(fā)射極(Emitter)。下圖是NPN型晶體管。
這種三極管是電流控制型元器件,注意關(guān)鍵詞電流控制。意思就是說,只要基極B有輸入(或輸出)電流就可以對(duì)這個(gè)晶體管進(jìn)行控制了。
下面請(qǐng)?jiān)试S我換一下概念,把基極B視為控制端,集電極C視為輸入端,發(fā)射極E視為輸出端。這里輸入輸出是指電流流動(dòng)的方向。
當(dāng)控制端有電流輸入的時(shí)候,就會(huì)有電流從輸入端進(jìn)入并從輸出端流出。
而PNP管正好相反,當(dāng)有電流從控制端流出時(shí),就會(huì)有電流從輸入端流到輸出端。
那么推挽電路:
上面的三極管是N型三極管,下面的三極管是P型三極管,請(qǐng)留意控制端、輸入端和輸出端。
當(dāng)Vin電壓為V+時(shí),上面的N型三極管控制端有電流輸入,Q3導(dǎo)通,于是電流從上往下通過,提供電流給負(fù)載。
經(jīng)過上面的N型三極管提供電流給負(fù)載(Rload),這就叫「推」。
當(dāng)Vin電壓為V-時(shí),下面的三極管有電流流出,Q4導(dǎo)通,有電流從上往下流過。
經(jīng)過下面的P型三極管提供電流給負(fù)載(Rload),這就叫「挽」。
以上,這就是推挽(push-pull)電路。
4、推挽輸出舉例
傳統(tǒng)8051單片機(jī)的I/O接口只可以作為標(biāo)準(zhǔn)雙向輸入/輸出接口,如果用其來驅(qū)動(dòng)LED則只能用灌電流的方式或是用三極管外擴(kuò)驅(qū)動(dòng)電路。灌電流方式是將LED正極接在VCC上,負(fù)極接在I/O接口上,當(dāng)I/O接口為高電平時(shí)LED兩極的電平相同,沒有電流,LED為熄滅狀態(tài)。當(dāng)I/O接口為低電平時(shí),電流從VCC流入I/O接口,LED點(diǎn)亮。當(dāng)把LED正極接在I/O接口,負(fù)極接在GND,將I/O接口置于高電平時(shí),LED會(huì)點(diǎn)亮,但因?yàn)镮/O接口上拉能力不足而使亮度不理想。推挽工作方式就是具有強(qiáng)上拉能力的工作方式,它可以實(shí)現(xiàn)高電平驅(qū)動(dòng)LED。驚喜出現(xiàn)了,把LED正負(fù)極分別接在兩個(gè)I/O接口上,然后設(shè)置正極的I/O接口為推挽輸出,負(fù)極的I/O接口為標(biāo)準(zhǔn)雙向灌電流輸入,結(jié)果會(huì)怎么樣呢?非常好,我們可以直接用I/O接口驅(qū)動(dòng)LED而不需要VCC和GND。LED點(diǎn)陣屏就是多個(gè)LED的陣列連接,只要把LED點(diǎn)陣屏的所有引腳接在I/O接口上,然后根據(jù)LED點(diǎn)陣屏的引腳定義,將對(duì)應(yīng)正極的I/O接口設(shè)置成推挽,將對(duì)應(yīng)負(fù)極的I/O接口設(shè)置成標(biāo)準(zhǔn)雙向輸入,余下的就是把將要點(diǎn)亮的LED點(diǎn)陣屏上的點(diǎn)所對(duì)應(yīng)的行列線分別給予高低電平,那么一切就盡在掌握之中。
評(píng)論
查看更多