集電極開路輸出和漏極開路輸出
一、集電極開路輸出
1、集電極開路輸出原理
在電路中常會遇到漏極開路(Open Drain)和集電極開路(Open Collector)兩種情形。漏極開路電路概念中提到的“漏”是指 MOSFET的漏極。同理,集電極開路電路中的“集”就是指三極管的集電極。在數字電路中,分別簡稱OD門和OC門。
集電極開路電路是灌電流輸出器件。在關斷狀態時,集電極開路輸出連到地;在導通狀態時,集電極開路輸出懸空。因此,集電極開路輸出需要一個源電流輸入接口。下面表格中給出了一個簡單的集電極開路輸出電路的原理圖。
典型的集電極開路電路如下圖所示。電路中右側的三極管集電極什麽都不接,所以叫做集電極開路,左側的三極管用於反相作用,即左側輸入“0”時左側三極管截止,VCC通過電阻加到右側三極管基極,右側三極管導通,右側輸出端連接到地,輸出“0”。
從圖中電路可以看出集電極開路是無法輸出高電平的,如果要想輸出高電平可以在輸出端加上上拉電阻。因此集電極開路輸出可以用做電平轉換,通過上拉電阻上拉至不同的電壓,來實現不同的電平轉換。
用做驅動器。由於OC門電路的輸出管的集電極懸空,使用時需外接一個上拉電阻Rp到電源VCC。OC門使用上拉電阻以輸出高電平,此外為了加大輸出引腳的驅動能力,上拉電阻阻值的選擇原則,從降低功耗及芯片的灌電流能力考慮應當足夠大;從確保足夠的驅動電流考慮應當足夠小。
將OC門輸出連在一起時,再通過一個電阻接外電源,可以實現“線與”邏輯關系。只要電阻的阻值和外電源電壓的數值選擇得當,就能做到既保證輸出的高、低電平符合要求,而且輸出三極管的負載電流又不至於過大。
集電極開路輸出除了可以實現多門的線與邏輯關系外,通過使用大功率的三極管還可用於直接驅動較大電流的負載,如繼電器、脈沖變壓器、指示燈等。
2、集電極開路輸出的應用
應用一:
實現與或非邏輯,用做電平轉換,用做驅動器。由於OC門電路的輸出管的集電極懸空,使用時需外接一個上拉電阻Rp到電源VCC。OC門使用上拉電阻以輸出高電平,此外為了加大輸出引腳的驅動能力,上拉電阻阻值的選擇原則,從降低功耗及芯片的灌電流能力考慮應當足夠大;從確保足夠的驅動電流考慮應當足夠小。
應用二:
線與邏輯,即兩個輸出端(包括兩個以上)直接互連就可以實現“AND”的邏輯功能。在總線傳輸等實際應用中需要多個門的輸出端並聯連接使用,而一般TTL門輸出端並不能直接並接使用,否則這些門的輸出管之間由於低阻抗形成很大的短路電流(灌電流),而燒壞器件。在硬件上,可用OC門或三態門(ST門)來實現。 用OC門實現線與,應同時在輸出端口應加一個上拉電阻。
應用三:
三態門(TS門)主要用在應用於多個門輸出共享數據總線,為避免多個門輸出同時占用數據總線,這些門的使能信號(EN)中只允許有一個為有效電平(如高電平),由於三態門的輸出是推拉式的低阻輸出,且不需接上拉(負載)電阻,所以開關速度比OC門快,常用三態門作為輸出緩沖器。
二、漏極開路輸出
1、漏極開路輸出原理
和集電極開路一樣,顧名思義,開漏電路就是指從MOSFET的漏極輸出的電路。典型的用法是在漏極外部的電路添加上拉電阻到電源如圖所示。完整的開漏電路應由開漏器件和開漏上拉電阻組成。這裏的上拉電阻R的阻值決定了邏輯電平轉換的上升/下降沿的速度。阻值越大,速度越低,功耗越小。因此在選擇上拉電阻時要兼顧功耗和速度。標準的開漏腳一般只有輸出的能力。添加其它的判斷電路,才能具備雙向輸入、輸出的能力。
很多單片機等器件的I/O就是漏極開路形式,或者可以配置成漏極開路輸出形式,如51單片機的P0口就為漏極開路輸出。在實際應用中可以將多個開漏輸出的引腳連接到一條線上,這樣就形成“線與邏輯”關系。註意這個公共點必須接一個上拉電阻。當這些引腳的任一路變為邏輯0後,開漏線上的邏輯就為0了。在I2C等接口總線中就用此法判斷總線占用狀態。
同集電極開路一樣,利用外部電路的驅動能力,減少IC內部的驅動。當IC內部MOSFET導通時,驅動電流是從外部的VCC流經上拉電阻,再經MOSFET到GND。IC內部僅需很下的柵極驅動電流,因此漏極開路也常用於驅動電路中。
2、特點
1)利用外部電路的驅動能力,減少ic內部的驅動。 或驅動比芯片電源電壓高的負載。
2)可以將多個開漏輸出的pin,連接到一條線上。通過一只上拉電阻,在不增加任何器件的情況下,形成“與邏輯”關系。這也是i2c,smbus等總線判斷總線占用狀態的原理。如果作為圖騰輸出必須接上拉電阻。接容性負載時,下降沿是芯片內的晶體管,是有源驅動,速度較快;上升延是無源的外接電阻,速度慢。如果要求速度高電阻選擇要小,功耗會大。所以負載電阻的選擇要兼顧功耗和速度。
3)可以利用改變上拉電源的電壓,改變傳輸電平。例如加上上拉電阻就可以提供ttl/cmos電平輸出等。
4)開漏pin不連接外部的上拉電阻,則只能輸出低電平。一般來說,開漏是用來連接不同電平的器件,匹配電平用的。
5)正常的cmos輸出級是上、下兩個管子,把上面的管子去掉就是open-drain了。這種輸出的主要目的有兩個:電平轉換和線與。
6)由於漏級開路,所以後級電路必須接一上拉電阻,上拉電阻的電源電壓就可以決定輸出電平。這樣你就可以進行任意電平的轉換了。
7)線與功能主要用於有多個電路對同一信號進行拉低操作的場合,如果本電路不想拉低,就輸出高電平,因為open-drain上面的管子被拿掉,高電平是靠外接的上拉電阻實現的。(而正常的cmos輸出級,如果出現一個輸出為高另外一個為低時,等於電源短路。)
8)open-drain提供了靈活的輸出方式,但是也有其弱點,就是帶來上升沿的延時。因為上升沿是通過外接上拉無源電阻對負載充電,所以當電阻選擇小時延時就小,但功耗大;反之延時大功耗小。所以如果對延時有要求,則建議用下降沿輸出。
3、什麽是線或邏輯與線與邏輯?
在一個結點(線)上, 連接一個上拉電阻到電源 vcc 或 vdd 和 n 個 npn 或 nmos 晶體管的集電極 c 或漏極 d, 這些晶體管的發射極 e 或源極 s 都接到地線上, 只要有一個晶體管飽和, 這個結點(線)就被拉到地線電平上。
因為這些晶體管的基極註入電流(npn)或柵極加上高電平(nmos), 晶體管就會飽和, 所以這些基極或柵極對這個結點(線)的關系是或非 nor 邏輯。 如果這個結點後面加一個反相器, 就是或 or 邏輯。
註:個人理解:線與,接上拉電阻至電源。(~a)&(~b)=~(a+b),由公式較容易理解線與此概念的由來;
如果用下拉電阻和 pnp 或 pmos 管就可以構成與非 nand 邏輯, 或用負邏輯關系轉換與/或邏輯。
註:線或,接下拉電阻至地。(~a)+(~b)=~(ab);
這些晶體管常常是一些邏輯電路的集電極開路 oc 或源極開路 od 輸出端。 這種邏輯通常稱為線與/線或邏輯, 當你看到一些芯片的 oc 或 od 輸出端連在一起, 而有一個上拉電阻時, 這就是線或/線與了, 但有時上拉電阻做在芯片的輸入端內。
順便提示如果不是 oc 或 od 芯片的輸出端是不可以連在一起的, 總線 bus 上的雙向輸出端連在一起是有管理的, 同時只能有一個作輸出, 而其他是高阻態只能輸入。
集電極開路輸出和漏極開路輸出