集電極開(kāi)路(OC)輸出:
集電極開(kāi)路輸出的結構如圖1所示,右邊的那個(gè)三極管集電極什么都不接,所以叫做集電極開(kāi)路(左邊的三極管為反相之用,使輸入為"0"時(shí),輸出也為"0")。對于圖1,當左端的輸入為“0”時(shí),前面的三極管截止(即集電極C跟發(fā)射極E之間相當于斷開(kāi)),所以5V電源通過(guò)1K電阻加到右邊的三極管上,右邊的三極管導通(即相當于一個(gè)開(kāi)關(guān)閉合);當左端的輸入為“1”時(shí),前面的三極管導通,而后面的三極管截止(相當于開(kāi)關(guān)斷開(kāi))。

我們將圖1簡(jiǎn)化成圖2的樣子。圖2中的開(kāi)關(guān)受軟件控制,“1”時(shí)斷開(kāi),“0”時(shí)閉合。很明顯可以看出,當開(kāi)關(guān)閉合時(shí),輸出直接接地,所以輸出電平為0。而當開(kāi)關(guān)斷開(kāi)時(shí),則輸出端懸空了,即高阻態(tài)。這時(shí)電平狀態(tài)未知,如果后面一個(gè)電阻負載(即使很輕的負載)到地,那么輸出端的電平就被這個(gè)負載拉到低電平了,所以這個(gè)電路是不能輸出高電平的。
再看圖三。圖三中那個(gè)1K的電阻即是上拉電阻。如果開(kāi)關(guān)閉合,則有電流從1K電阻及開(kāi)關(guān)上流過(guò),但由于開(kāi)關(guān)閉和時(shí)電阻為0(方便我們的討論,實(shí)際情況中開(kāi)關(guān)電阻不為0,另外對于三極管還存在飽和壓降),所以在開(kāi)關(guān)上的電壓為0,即輸出電平為0。如果開(kāi)關(guān)斷開(kāi),則由于開(kāi)關(guān)電阻為無(wú)窮大(同上,不考慮實(shí)際中的漏電流),所以流過(guò)的電流為0,因此在1K電阻上的壓降也為0,所以輸出端的電壓就是5V了,這樣就能輸出高電平了。但是這個(gè)輸出的內阻是比較大的(即1KΩ),如果接一個(gè)電阻為R的負載,通過(guò)分壓計算,就可以算得最后的輸出電壓為5*R/(R+1000)伏,即5/(1+1000/R)伏。所以,如果要達到一定的電壓的話(huà),R就不能太小。如果R真的太小,而導致輸出電壓不夠的話(huà),那我們只有通過(guò)減小那個(gè)1K的上拉電阻來(lái)增加驅動(dòng)能力。但是,上拉電阻又不能取得太小,因為當開(kāi)關(guān)閉合時(shí),將產(chǎn)生電流,由于開(kāi)關(guān)能流過(guò)的電流是有限的,因此限制了上拉電阻的取值,另外還需要考慮到,當輸出低電平時(shí),負載可能還
會(huì )給提供一部分電流從開(kāi)關(guān)流過(guò),因此要綜合這些電流考慮來(lái)選擇合適的上拉電阻。
漏極開(kāi)路(OD)輸出:

漏極開(kāi)路(OD)輸出,跟集電極開(kāi)路輸出是十分類(lèi)似的。將上面的三極管換成場(chǎng)效應管即可。這樣集電極就變成了漏極,OC就變成了OD,原理分析是一樣的。對于漏極開(kāi)路(OD)來(lái)說(shuō),必須在漏極輸出端接上拉電阻,否則只能輸出低電平。
推挽(Push-Pull)輸出:
一般指兩三極管分別受兩互補信號的控制,總是在一個(gè)三極管導通的時(shí)候另一個(gè)三極管截止,就剛好形成了推挽相連。這樣的電路也稱(chēng)為推拉式或Totem-pole電路。推挽電路適用于低電壓大電流的場(chǎng)合,廣泛應用于開(kāi)關(guān)電源和功放電路中。簡(jiǎn)化電路圖如下所示:

簡(jiǎn)單理解:推挽輸出的結構就是把上面的上拉電阻也換成一個(gè)開(kāi)關(guān),當要輸出高電平時(shí),上面的開(kāi)關(guān)通,下面的開(kāi)關(guān)斷;而要輸出低電平時(shí),則剛好相反。比起OC或者OD來(lái)說(shuō),這樣的推挽結構高、低電平驅動(dòng)能力都很強。如果兩個(gè)輸出不同電平的輸出口接在一起的話(huà),就會(huì )產(chǎn)生很大的電流,有可能將輸出口燒壞。而上面說(shuō)的OC或OD輸出則不會(huì )有這樣的情況,因為上拉電阻提供的電流比較小。如果是推挽輸出的要設置為高阻態(tài)時(shí),則兩個(gè)開(kāi)關(guān)必須同時(shí)斷開(kāi)(或者在輸出口上使用一個(gè)傳輸門(mén)),這樣可作為輸入狀態(tài)。
推挽輸出舉例:傳統8051單片機的I/O接口只可以作為標準雙向輸入/輸出接口,如果用其來(lái)驅動(dòng)LED則只能用灌電流的方式或是用三極管外擴驅動(dòng)電路。灌電流方式是將LED正極接在VCC上,負極接在I/O接口上,當I/O接口為高電平時(shí)LED兩極的電平相同,沒(méi)有電流,LED為熄滅狀態(tài)。當I/O接口為低電平時(shí),電流從VCC流入I/O接口,LED點(diǎn)亮。當把LED正極接在I/O接口,負極接在GND,將I/O接口置于高電平時(shí),LED會(huì )點(diǎn)亮,但因為I/O接口上拉能力不足而使亮度不理想。推挽工作方式就是具有強上拉能力的工作方式,它可以實(shí)現高電平驅動(dòng)LED。驚喜出現了,把LED正負極分別接在兩個(gè)I/O接口上,然后設置正極的I/O接口為推挽輸出,負極的I/O接口為標準雙向灌電流輸入,結果會(huì )怎么樣呢?非常好,我們可以直接用I/O接口驅動(dòng)LED而不需要VCC和GND。LED點(diǎn)陣屏就是多個(gè)LED的陣列連接,只要把LED點(diǎn)陣屏的所有引腳接在I/O接口上,然后根據LED點(diǎn)陣屏的引腳定義,將對應正極的I/O接口設置成推挽,將對應負極的I/O接口設置成標準雙向輸入,余下的就是把將要點(diǎn)亮的LED點(diǎn)陣屏上的點(diǎn)所對應的行列線(xiàn)分別給予高低電平,那么一切就盡在掌握之中。 |