開漏輸出:
oc門的輸出就是開漏輸出;od門的輸出也是開漏輸出。ttl電路有集電極開路oc門,mos管也有和集電極對應(yīng)的漏極開路的od門,它的輸出就叫做開漏輸出。它可以吸收很大的電流,但是不能向外輸出電流。所以,為了能輸入和輸出電流,它使用的時候要跟電源和上拉電阻一齊用。
oc門開漏輸出和od門開漏輸出都是為了同一個目的,都是為了實現(xiàn)邏輯器件的線與邏輯,當(dāng)然選用不同的外接電阻也可以實現(xiàn)外圍驅(qū)動能力的增加。當(dāng)你應(yīng)用此電路的時候,要注意應(yīng)用時要加上拉電阻接電源,這樣才能保證邏輯的正確,在電阻上要根據(jù)邏輯器件的扇入扇出系數(shù)來確定,但一般mos電路帶載同樣的mos電路能力比較強,所以電阻通??梢赃x擇2.2k,4.9k這樣一些常用的。
推挽輸出:
可以輸出高,低電平,連接數(shù)字器件;開漏輸出:輸出端相當(dāng)于三極管的集電極. 要得到高電平狀態(tài)需要上拉電阻才行. 適合于做電流型的驅(qū)動,其吸收電流的能力相對強(一般20ma以內(nèi)).
推挽結(jié)構(gòu)一般是指兩個三極管分別受兩互補信號的控制,總是在一個三極管導(dǎo)通的時候另一個截止.
要實現(xiàn) 線與需要用oc(open collector)門電路.是兩個參數(shù)相同的三極管或mosfet,以推挽方式存在于電路中,各負(fù)責(zé)正負(fù)半周的波形放大任務(wù),電路工作時,兩只對稱的功率開關(guān)管每次只有一個導(dǎo)通,所以導(dǎo)通損耗小,效率高。輸出既可以向負(fù)載灌電流,也可以從負(fù)載抽取電流。
所謂開漏電路概念中提到的“漏”就是指mosfet的漏極。同理,開集電路中的“集”就是指三極管的集電極。開漏電路就是指以mosfet的漏極為輸出的電路。一般的用法是會在漏極外部的電路添加上拉電阻。完整的開漏電路應(yīng)該由開漏器件和開漏上拉電阻組成。如圖1所示:
組成開漏形式的電路有以下幾個特點:
1. 利用 外部電路的驅(qū)動能力,減少ic內(nèi)部的驅(qū)動。當(dāng)ic內(nèi)部mosfet導(dǎo)通時,驅(qū)動電流是從外部的vcc流經(jīng)r pull-up ,mosfet到gnd。ic內(nèi)部僅需很下的柵極驅(qū)動電流。
2. 可以將多個開漏輸出的pin,連接到一條線上。形成 “與邏輯” 關(guān)系。如圖1,當(dāng)pin_a、pin_b、pin_c任意一個變低后,開漏線上的邏輯就為0了。這也是i2c,smbus等總線判斷總線占用狀態(tài)的原理。
3. 可以利用改變上拉電源的電壓,改變傳輸電平。ic的邏輯電平由電源vcc1決定,而輸出高電平則由vcc2決定。這樣我們就可以用低電平邏輯控制輸出高電平邏輯了。
4. 開漏pin不連接外部的上拉電阻,則只能輸出低電平(因此對于經(jīng)典的51單片機的p0口而言,要想做輸入輸出功能必須加外部上拉電阻,否則無法輸出高電平邏輯)。
5. 標(biāo)準(zhǔn)的開漏腳一般只有輸出的能力。添加其它的判斷電路,才能具備雙向輸入、輸出的能力。
應(yīng)用中需注意:
1. 開漏和開集的原理類似,在許多應(yīng)用中我們利用開集電路代替開漏電路。例如,某輸入pin要求由開漏電路驅(qū)動。則我們常見的驅(qū)動方式是利用一個三極管組成開集電路來驅(qū)動它,即方便又節(jié)省成本。
2. 上拉電阻r pull-up的 阻值 決定了 邏輯電平轉(zhuǎn)換的沿的速度 。阻值越大,速度越低功耗越小。反之亦然。
push-pull輸出就是一般所說的推挽輸出,在cmos電路里面應(yīng)該較cmos輸出更合適,應(yīng)為在cmos里面的push-pull輸出能力不可能做得雙極那么大。輸出能力看ic內(nèi)部輸出極n管p管的面積。和開漏輸出相比,push-pull的高低電平由ic的電源低定,不能簡單的做邏輯操作等。push-pull是現(xiàn)在cmos電路里面用得最多的輸出級設(shè)計方式。
at91rm9200 gpio 模擬i2c接口時注意!!