【Open-Drain與Push-Pull】
GPIO的功能,簡單說就是可以根據自己的需要去配置為輸入或輸出。(General Purpose Input Output,簡稱為GPIO或總線擴展器,利用工業標準I2C、SMBus?或SPI?接口簡化了I/O口的擴展。當微控制器或芯片組沒有足夠的I/O端口,或當系統需要采用遠端串行通信或控制時,GPIO產品能夠提供額外的控制和監視功能。)但是在配置GPIO管腳的時候,常會見到兩種模式:開漏(open-drain,漏極開路)和推挽(push-pull)。對此兩種模式,有何區別和聯系,下面整理了一些資料,來詳細解釋一下:
【Push-Pull推挽輸出】
原理:
輸出的器件是指輸出腳內部集成有一對互補的MOSFET,當Q1導通、Q2截止時輸出高電平;而當Q1截止導通、Q2導通時輸出低電平。Push-Pull輸出,實際上內部是用了兩個晶體管(transistor),此處分別稱為Top-Transistor和Bottom-Transistor。通過開關對應的晶體管,輸出對應的電平。Top-Transistor打開(Bottom-Transistor關閉),輸出為高電平;Bottom-Transistor打開(Top-Transistor關閉),輸出低電平。Push-pull即能夠漏電流(sink current),又可以集電流(source current)。其也許有,也許沒有另外一個狀態:高阻抗(high impedance)狀態。除非Push-pull需要支持額外的高阻抗狀態,否則不需要額外的上拉電阻。
特點:在CMOS電路里面應該叫CMOS輸出更合適,因為在CMOS里面的push-pull輸出能力不可能做得雙極那么大。輸出能力看IC內部輸出極N管P管的面積。push-pull是現在CMOS電路里面用得最多的輸出級設計方式。
優點:(1)可以吸電流,也可以貫電流;(2)和開漏輸出相比,push-pull的高低電平由IC的電源低定,不能簡單的做邏輯操作等。
缺點:一條總線上只能有一個push-pull輸出的器件;
【Open-Drain開漏輸出】
原理:
開漏電路就是指以MOSFET的漏極為輸出的電路。指內部輸出和地之間有個N溝道的MOSFET(Q1),這些器件可以用于電平轉換的應用。輸出電壓由Vcc決定。Vcc可以大于輸入高電平電壓VCC (call UP-Translate)也可以低于輸入高電平電壓VCC(call Down-Translate)
Open-Drain輸出,則是比push-pull少了個top transistor,只有那個bottom transistor。(就像push-pull中的那樣)當bottom transistor關閉,則輸出為高電平。此處沒法輸出高電平,想要輸出高電平,必須外部再接一個上拉電阻(pull-up resistor)。Open-drain只能夠漏電流(sink current),如果想要集電流(source current),則需要加一個上拉電阻。
優點:
(1)對于各種電壓節點間的電平轉換非常有用,可以用于各種電壓節點的Up-translate和Down-translate轉換
(2)可以將多個開漏輸出的Pin腳,連接到一條線上,形成“與邏輯”關系,即“線與”功能,任意一個變低后,開漏線上的邏輯就為0了。這也是I2C,SMBus等總線判斷總線占用狀態的原理。
(3)利用 外部電路的驅動能力,減少IC內部的驅動。當IC內部MOSFET導通時,驅動電流是從外部的VCC流經R pull-up ,MOSFET到GND。IC內部僅需很小的柵極驅動電流。
(4)可以利用改變上拉電源的電壓,改變傳輸電平,如圖, IC的邏輯電平由電源Vcc1決定,而輸出高電平則由Vcc2決定。這樣我們就可以用低電平邏輯控制輸出高電平邏輯了。
OD輸出電平的原理 |
缺點:開漏Pin不連接外部的上拉電阻,則只能輸出低電平。當輸出電平為低時,N溝道三極管是導通的,這樣在Vcc'和GND之間有一個持續的電流流過上拉電阻R和三極管Q1。這會影響整個系統的功耗。采用較大值的上拉電阻可以減小電流。但是,但是大的阻值會使輸出信號的上升時間變慢。即上拉電阻R pull-up的阻值 決定了邏輯電平轉換的沿的速度。阻值越大,速度越低功耗越小。反之亦然。
==================================
常見的GPIO的模式可以配置為open-drain或push-pull,具體實現上,常為通過配置對應的寄存器的某些位來配置為open-drain或是push-pull。當我們通過CPU去設置那些GPIO的配置寄存器的某位的時候,其GPIO硬件IC內部的實現是,會去打開或關閉對應的top transistor。相應地,如果設置為了Open-D模式的話,是需要上拉電阻才能實現,也能夠輸出高電平的。因此,如果硬件內部(internal)本身包含了對應的上拉電阻的話,此時會去關閉或打開對應的上拉電阻。如果GPIO硬件IC內部沒有對應的上拉電阻的話,那么你的硬件電路中,必須自己提供對應的外部(external)的上拉電阻。而push-pull輸出的優勢是速度快,因為線路是以兩種方式驅動的。而帶了上拉電阻的線路,即使以最快的速度去提升電壓,最快也要一個常量的R×C的時間。其中R是電阻,C是寄生電容(parasitic capacitance),包括了pin腳的電容和板子的電容。但是,push-pull相對的缺點是往往需要消耗更多的電流,即功耗相對大。而open-drain所消耗的電流相對較小,由電阻R所限制,而R不能太小,因為當輸出為低電平的時候,需要sink更低的transistor,這意味著更高的功耗。而open-drain的好處之一是,允許你short多個open-drain的電路,共用一個上拉電阻,此種做法稱為wired-OR連接,此時可以通過拉低任何一個IO的pin腳使得輸出為低電平。為了輸出高電平,則所有的都輸出高電平。此種邏輯,就是“線與”的功能,可以不需要額外的門電路來實現此部分邏輯。
“GPIO中Open-Drain與Push-Pull之間的區別是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注本站網站,小編將為大家輸出更多高質量的實用文章!
本文由 貴州做網站公司 整理發布,部分圖文來源于互聯網,如有侵權,請聯系我們刪除,謝謝!
c語言中正確的字符常量是用一對單引號將一個字符括起表示合法的字符常量。例如‘a’。數值包括整型、浮點型。整型可用十進制,八進制,十六進制。八進制前面要加0,后面...
2022年天津專場考試原定于3月19日舉行,受疫情影響確定延期,但目前延期后的考試時間推遲。 符合報名條件的考生,須在規定時間登錄招考資訊網(www.zha...
:喜歡聽,樂意看。指很受歡迎?!巴卣官Y料”喜聞樂見:[ xǐ wén lè jiàn ]詳細解釋1. 【解釋】:喜歡聽,樂意看。指很受歡迎。2. 【示例】:這是...
中國喬丹改名叫中喬體育股份有限公司,大家也稱之為中喬體育。中喬也就是原喬丹體育在2000年就創立了,距今以及21年的歷史了,也算是伴隨一代國人記憶的品牌了,不過這個記憶還真不一定是什么好記憶,就拿我自己的經歷來說,我的第一雙籃球鞋就是中國喬丹的籃球鞋,那雙鞋也伴隨我從初中升到高中,我那時真的以為喬丹體育真的是邁克爾喬丹的品牌!中國喬丹和美國喬丹區別1、創辦者不同中國喬丹是由福建喬丹體育用品公司創立...
城市礦產是什么?隨著城市化和工業化的快速發展,各種原生資源從自然界被采掘并經過加工制造等生產環節,最終以產品和材料的形式堆積在城市中以滿足人類的生產消費需求。在這個過程中伴隨著的各種產品和材料的報廢、廢棄和回收,就形成了城市礦產。簡言之,城市礦產是蘊藏于城市中具有較高經濟價值并可回收利用的二次資源。據統計,全球各種廢棄物正在以每年10%的速度增長,年均產生量超過40億噸。“垃圾圍城&r...
什么是保理公司?保理公司是指賣方將貨物出售給買方,賣方可以將貿易過程中銷售或合同產生的應收賬款轉讓給保理公司,然后保理公司提前提供現金流給賣方用于采購和生產,以避免企業在恢復期的資金周轉問題。隨著市場的發展,賒銷在交易中越來越普遍,奠定了良好的市場基礎。例如:a公司與b公司簽訂了合同,所以a公司向b公司提供了商品或服務,理論上,b公司應該向a公司付款嗎?但是,當A公司完成了服務和產品,B公司沒有付...