準雙向口 開漏輸出 推挽輸出結構介紹

2022-01-29 06:30:19 字數 2098 閱讀 8185

最近畫的一塊板子中用到了六路同相門晶元74hc07作為電平轉換,將fpga產生的3.3v訊號轉換為5v,但是沒有注意到74hc07的輸出是開漏結構(以為給74hc07乙個5v電源就可以將輸入的3.3v電平轉換為5v電平輸出……囧……,好吧我承認我是菜鳥),結果可想而知,板子拿回來完全不能用,只好用飛線給74hc07的幾個輸出口接了1k的上拉電阻,這樣板子才正常工作了,但是板子上接了一堆的飛線,怎麼看都覺得不爽,哎,都是這個開漏結構給害的……

於是乎,在做下一版之前,我仔細研究了一下這個開漏輸出結構,發現晶元的io口結構還是很有學問的,下面以51微控制器的輸出口結構為例,介紹一下常見的幾種輸出口結構:

1. 準雙向口結構

準雙向口,也就是說不是真正的雙向口,真正意義上的雙向口是需要通過設定專門的「輸入輸出方向暫存器」將io口設為輸入模式或者輸出模式,才能實現對應的輸入輸出功能。而準雙向口則不需要設定,作為輸出時直接向口線暫存器寫;作為輸入時則需要先向io口寫1再去讀。準雙向口的內部電路結構如下如所示:

圖1  準雙向口內部電路結構

由圖可以看出當口線暫存器為1時,左邊的場效電晶體斷開,右邊的場效電晶體導通,於是輸出被電源上拉為1,輸出高電平;當口線暫存器為0時,左邊的管子導通,右邊的管子截止,輸出管腳相當於直接通過左邊的管子接地,輸出低電平。在讀取資料時,如果口線暫存器的值為1,當管腳接低電平時,採集到時輸入資料為1,反之為0,這種情況下是可以正確的讀取資料的,但是如果口線暫存器的值為0 ,則左邊的場效電晶體導通,輸出相當於直接與地線相連,此時無論外部輸入為高電平還是低電平,採集到的輸入資料都是0,這樣就不能正確的讀取資料了。所以對於準雙向口,作為輸入口使用時,必須先向該io口寫1,再讀取,這就是準雙向口的特點。

2.開漏輸出結構

開漏(open drain),這裡的「漏」指的是場效電晶體的漏極(drain),對應於三極體的集電極(collector),開漏就是指場效電晶體的漏極保持開路,直接接出作為輸出口,如下圖所示:

圖2  開漏輸出結構

從圖中可以看出,當口線暫存器為0時,管子導通,輸出直接通過管子接地,輸出低電平;當口線暫存器為1時,管子截止,輸出腳相當於懸空,為高阻態,因此開漏輸出介面不能夠正確的輸出高低電平。對於開漏輸出結構,輸出必須接上拉電阻,才能夠正常使用,如下圖所示:

圖3  開漏輸出結構加上拉電阻

外接了上拉電阻後,當口線暫存器為0時,輸出被電源上拉為高電平,口線暫存器為0時,輸出口通過管子直接接地,為低電平,這樣就可以正確的讀取外部資料了。

很多晶元都提供開漏輸出結構,這是因為開漏輸出結構有很多優點:

a. 充分利用外部電路的驅動能力,減小晶元內部的驅動,從而降低晶元的功耗,提高晶元工作穩定性

b. 可以通過改變上拉電源的電壓,改變訊號的傳輸電平,比如某晶元的輸出為3.3v電平,其輸出口的上拉電源可以為5v,這樣就很方便的實現了電平轉換。

當然,開漏輸出也存在明顯的缺點:在輸出脈衝訊號時,在脈衝的上公升沿,電源通過上拉無源電阻對負載充電,其速度較慢,導致上公升時間變長,因而會導致脈衝上公升沿變壞,上拉電阻阻值越大,充電時間就越長,因此其速度越慢,而阻值較小時,其功耗又會變大,因此在設計時要兼顧速度和功耗。而對於下降沿,電源通過晶元內部的場效電晶體放電,其速度較快,所以上拉電阻對脈衝的下降沿影響不大,某些情況下可以考慮用下降沿輸出。

3.推挽輸出

推挽輸出也是一種很常見的輸出結構,其內部電路結構如圖所示:

圖4  推挽輸出結構

與準雙向口類似,只是右邊的場效電晶體為強上拉作用,因而輸出電流較大,適用於需要大電流驅動的場合。在使用推挽結構時,要注意不要將兩個io口短接,因為如果乙個io口為高電平而另外乙個為低電平時,會有很大的電流流入晶元,可能燒壞晶元。

總之呢,在使用一些不熟悉的晶元時,一定要注意其io口的結構,根據io口結構設計合適的電路,以免出現一些意想不到的錯誤。

推挽輸出與開漏輸出

lpc900系列微控制器的i o口特性有一定的不同,它們可以被配置成4種不同的工作模式 準雙向i o 推挽輸出 高阻輸入 開漏。準雙向i o模式與標準80c51相比,雖然在內部結構上是不同的,但在用法上類同,比如要作為輸入時都必須先寫 1 置成高電平,然後才能去讀引腳的電平狀態。推挽輸出的特點是不論...

推挽輸出與開漏輸出

推挽輸出與開漏輸出的區別 zt push pull輸出就是一般所說的推挽輸出,在cmos電路裡面應該較cmos輸出更合適,因為在cmos裡面的push pull輸出能力不可能做得雙極那麼大。輸出能力看ic內部輸出極n管p管的面積。和開漏輸出相比,push pull的高低電平由ic的電源低定,不能簡單...

開漏輸出和推挽輸出

1.推挽輸出與開漏輸出的區別 推挽輸出 可以輸出高,低電平,連線數字器件 開漏輸出 輸出端相當於三極體的集電極.要得到高電平狀態需要上拉電阻才行.適合於做電流型的驅動,其吸收電流的能力相對強 一般20ma以內 2.開漏電路特點 在電路設計時我們常常遇到開漏 open drain 和開集 open c...