Pull驅(qū)動(dòng)的選擇。之前迷迷糊糊地搞不明白,這次決心深入搞一下,希望下次就不用再迷糊了。
首先,度娘里頭找到的資料告訴我們,OD驅(qū)動(dòng)和Push-Pull驅(qū)動(dòng)(又叫推挽)是很不一樣的(廢話文學(xué)要被我發(fā)揚(yáng)光大了)。
Open-Collector/Open-Drain輸出電路
先來講講集電極開路/開漏電路。OD門和OC門其實(shí)本質(zhì)上很接近,區(qū)別就是一個(gè)是漏極開路,一個(gè)是集電極開路。原理圖如下,僅僅就是管子的不同,而MOSFET一般會(huì)有一個(gè)續(xù)流二極管。開漏電路的原理就是指以MOSFET的漏極為輸出的電路。指內(nèi)部輸出和地之間有個(gè)N溝道的MOSFET。
咱們力出一孔,針對OD電路集中火力來進(jìn)行學(xué)習(xí)理解。
OD電路無法自己輸出高電平,只有漏電流(sink current)。若想要要用作高電平輸出使用時(shí),則必須在增加上拉電路,從而產(chǎn)生集電流(source current)。如下電路圖。
OD電路的工作狀態(tài):
當(dāng)IN為0時(shí),A為0,Q1為關(guān)斷狀態(tài),B為1,Q2為導(dǎo)通狀態(tài),電流經(jīng)過路徑1,此時(shí)OD電路輸出為0。
當(dāng)IN為1時(shí),A為1,Q1為導(dǎo)通狀態(tài),B為0,Q2為關(guān)斷狀態(tài),電流經(jīng)過路徑2,此時(shí)OD電路輸出為1。
同時(shí)由于OD電路的特性,多個(gè)OD電路連接在同一個(gè)網(wǎng)絡(luò)上時(shí),不需要額外的邏輯電路即可以實(shí)現(xiàn)“線與邏輯”。
只要其中任意一個(gè)IC輸入為1,則整個(gè)BUS均為0。所有IC輸入均為0,BUS才為1。
總結(jié)一下OD電路的優(yōu)點(diǎn):
1、可以便捷實(shí)現(xiàn)輸出電平的轉(zhuǎn)換。VDD與VCC的電壓可以不一致,輸VCC大于輸入VDD(Up-translate),輸出VCC小于輸出VDD(Down-translate)。
2、多個(gè)OD輸出的引腳接在一個(gè)網(wǎng)絡(luò)上,可以實(shí)現(xiàn)“線與”邏輯。這就是I2C、SMBus等總線判斷總線占用狀態(tài)的原理。
3、利用外部上拉電路的驅(qū)動(dòng)能力,IC內(nèi)部的MOSFET的柵極驅(qū)動(dòng)電流很小。驅(qū)動(dòng)能力由外部的上拉電阻調(diào)節(jié)。
4、可以通過改變上拉電源的電壓,實(shí)現(xiàn)電平轉(zhuǎn)換傳輸?shù)墓δ堋?/p>
那么缺點(diǎn)也總結(jié)一下:
1、OD電路外接上拉時(shí),輸出低電平有個(gè)持續(xù)的電流經(jīng)過上拉電阻和MOSFET,無法關(guān)斷此電流,會(huì)導(dǎo)致功耗的增大。
2、上拉電阻的阻值選擇不能太小,阻值太小會(huì)導(dǎo)致持續(xù)的sink電流功耗增大。
3、上拉電阻的阻值選擇不能太大,OD電路的上升時(shí)間由上拉電阻R和總線電容C共同決定。阻值R越大,上升時(shí)間越慢。
Push-Pull推挽輸出電路
理解完了OD電路,再來理解一下推挽電路。Push-pull電路是指輸出腳內(nèi)部有一對互補(bǔ)的MOSFET。當(dāng)Q1導(dǎo)通、Q2截止時(shí)輸出高電平;而當(dāng)Q1截止導(dǎo)通、Q2導(dǎo)通時(shí)輸出低電平。
Push-pull即能夠漏電流(sink current),又可以集電流(source current)。
除非Push-pull需要支持額外的高阻抗?fàn)顟B(tài),否則不需要額外的上拉電阻。
推挽電路的輸出能力看IC內(nèi)部輸出極N管P管的面積。推挽電路由于沒有上拉電阻,上升是由寄生電阻R(較?。┖涂偩€電容C來決定的。可以通過寄存器配置調(diào)整上下管的驅(qū)動(dòng)電流。
推挽電路的優(yōu)點(diǎn):
1、可以吸電流,也可以貫電流。
2、推挽電路的的高低電平由IC的電源確定。
3、驅(qū)動(dòng)能力比OD電路強(qiáng),相比OD電路可支持更高速率的電平翻轉(zhuǎn)。
相反的缺點(diǎn)有:
1、一條總線上只能有一個(gè)push-pull輸出的器件,不然會(huì)產(chǎn)生很大的對地電流,損壞電路。
2、功耗比OD電路要更大。
若一條總線上有兩路推挽輸出如上圖,當(dāng)Q1和Q4同時(shí)開通時(shí),會(huì)產(chǎn)生如上圖紅色通路的大電流,導(dǎo)致?lián)p壞IO。
現(xiàn)在大多數(shù)GPIO可以通過寄存器配置實(shí)現(xiàn)推挽電路或OD電路。在IC內(nèi)部實(shí)現(xiàn)的情況時(shí),通過打開或關(guān)閉上管從而實(shí)現(xiàn)推挽和OD電路的切換。
推挽輸出可支持更高的電平翻轉(zhuǎn)速率,但是功耗消耗也更大。OD輸出可以實(shí)現(xiàn)功耗低,并可以實(shí)現(xiàn)邏輯“線與”。這個(gè)則是在GPIO選擇時(shí)的權(quán)衡取舍。
評論
查看更多