Q:什么是上拉/下拉電阻?有什么作用?又該怎么用?
A:上拉電阻:將一個(gè)不確定的信號(hào)通過(guò)電阻連接到高電平(VCC),使該信號(hào)初始電平為高電平。下拉電阻:將一個(gè)不確定的信號(hào)通過(guò)電阻連接到低電平(GND),使該信號(hào)的初始電平為低電平。
上拉下拉電阻如何接線?
上拉電阻示例
電阻R12將KEY1網(wǎng)絡(luò)標(biāo)識(shí)上拉到高電平,在按鍵S2沒(méi)有按下的情況下KEY1將被鉗制在高電平,從而避免了引腳懸空而引起的誤動(dòng)作。
下拉電阻示例
電阻R29將DIR網(wǎng)絡(luò)標(biāo)識(shí)下拉到低電平,在光耦沒(méi)有導(dǎo)通的情況下DIR將被鉗制在低電平,從而避免了引腳懸空而引起的誤動(dòng)作。
上拉下拉電阻的作用?
01、提高電路穩(wěn)定性,避免引起誤動(dòng)作
上拉電阻示例中的按鍵如果不通過(guò)電阻上拉到高電平,那么在上電的瞬間可能就發(fā)生誤動(dòng)作,因?yàn)樵谏想娝查gFPGA芯片的引腳電平是不確定的,上拉電阻R12的存在就保證了其引腳處于高電平狀態(tài),而不會(huì)發(fā)生誤動(dòng)作。
02、提高輸出管腳的帶載能力
受其他外圍電路的影響FPGA在輸出高電平時(shí)能力不足,達(dá)不到VCC狀態(tài),這會(huì)影響整個(gè)系統(tǒng)的正常工作,上拉電阻的存在就可以使管腳的驅(qū)動(dòng)能力增強(qiáng)。
注:帶有I2C資源的FPGA中,其SCL和SDA引腳是開(kāi)漏引腳,如果當(dāng)作普通的GPIO來(lái)用的話(huà),你會(huì)發(fā)現(xiàn)該引腳輸出高電平不穩(wěn)定甚至因?yàn)樨?fù)載的關(guān)系都無(wú)法正常輸出高電平,這時(shí)候就需要在這兩個(gè)引腳上加上上拉電阻。
開(kāi)漏/推挽輸出
三極管的工作原理
三極管有三個(gè)端口,分別是基極(Base)、集電極(Collector)、發(fā)射極(Emitter)。
這種三極管是電流控制型元器件,只要基極B有輸入(輸出)電流就可以對(duì)三極管進(jìn)行控制。
NPN型三極管:當(dāng)控制端(基極B)有電流輸入的時(shí)候,就會(huì)有電流從輸入端(集電極C)進(jìn)入并從輸出端(發(fā)射極E)輸出
PNP型三極管:當(dāng)控制端(基極B)有電流輸出的時(shí)候,就會(huì)有電流從輸入端(發(fā)射極E)進(jìn)入并從輸出端(集電極C)輸出
開(kāi)集電路
講解開(kāi)漏電路之前,我們先了解開(kāi)集電路:
開(kāi)集電路的意思就是集電極C一端什么都不接,直接作為輸出端口。
如果要用這種電路帶一個(gè)負(fù)載,比如一個(gè)LED,必須接一個(gè)上拉電阻,如下圖:
當(dāng)Vin沒(méi)有電流,Q5斷開(kāi)時(shí),LED亮;
當(dāng)Vin流入電流,Q5導(dǎo)通時(shí),LED滅。
開(kāi)漏電路
開(kāi)漏電路就是將上圖中的三極管換成場(chǎng)效應(yīng)管(MOSFET)。這樣集電極C就變成了漏極,OC就變成了OD,原理時(shí)一樣的。如下圖(N型場(chǎng)效應(yīng)管):
場(chǎng)效應(yīng)管是電壓控制型元器件,只要對(duì)柵極G施加電壓,DS就會(huì)導(dǎo)通。
注:結(jié)型場(chǎng)效應(yīng)管有一個(gè)特性就是它的輸入阻抗非常大,這意味著:沒(méi)有電流從控制電路流出,也沒(méi)有電流進(jìn)入控制電路。沒(méi)有電流流入或流出,就不會(huì)燒壞控制電路。而雙極型晶體管不同,是電流控制性元器件,如果使用開(kāi)集電路,可能會(huì)燒壞控制電路。這就是我們經(jīng)常用到或聽(tīng)到開(kāi)漏電路,而不是開(kāi)集電路的原因!
典型的集電極開(kāi)路電路:
右邊的三極管集電極什么都不接,所以叫做集電極開(kāi)路(左邊的三極管為反相作用,使輸入為”0“時(shí),輸出也為”0“)。
● 分析一
對(duì)于圖1,當(dāng)左端的輸入為“0”時(shí),前面的三極管截止(即集電極C跟發(fā)射極E之間相當(dāng)于斷開(kāi)),所以5V電源通過(guò)1K電阻加到右邊的三極管上,右邊的三極管導(dǎo)通(即相當(dāng)于一個(gè)開(kāi)關(guān)閉合),此時(shí)輸出端與地相接,電壓為“0”;當(dāng)左端的輸入為“1”時(shí),前面的三極管導(dǎo)通,此時(shí)后面的三極管輸入端電壓被接地,電壓拉低,三極管截止了(相當(dāng)于開(kāi)關(guān)斷開(kāi))。
● 分析二
我們將圖1簡(jiǎn)化成圖2的樣子。圖2中的開(kāi)關(guān)受軟件控制,“1”時(shí)斷開(kāi),“0”時(shí)閉合。很明顯可以看出,當(dāng)開(kāi)關(guān)閉合時(shí),輸出直接接地,所以輸出電平為0。而當(dāng)開(kāi)關(guān)斷開(kāi)時(shí),則輸出端懸空了,即高阻態(tài)。這時(shí)電平狀態(tài)未知,如果后面接一個(gè)電阻負(fù)載(即使很輕的負(fù)載)到地,那么輸出端的電平就被這個(gè)負(fù)載拉到低電平了,所以這個(gè)電路是不能輸出高電平的。
注:開(kāi)漏電路就是指以MOSFET的漏極為輸出的電路。一般的用法是會(huì)在漏極外部的電路添加上拉電阻。完整的開(kāi)漏電路應(yīng)該由開(kāi)漏器件和開(kāi)漏上拉電阻組成
如上圖所示組成開(kāi)漏形式的電路有以下幾個(gè)特點(diǎn):
1. 利用外部電路的驅(qū)動(dòng)能力,減少IC內(nèi)部的驅(qū)動(dòng)(或驅(qū)動(dòng)比芯片電源電壓高的負(fù)載)。當(dāng)IC內(nèi)部MOSFET導(dǎo)通時(shí),驅(qū)動(dòng)電流是從外部的VCC流經(jīng)R pull-up ,MOSFET到GND。IC內(nèi)部?jī)H需很下的柵極驅(qū)動(dòng)電流。
2. 可以將多個(gè)開(kāi)漏輸出的Pin,連接到一條線上。形成 “與邏輯” 關(guān)系。當(dāng)PIN_A、PIN_B、PIN_C任意一個(gè)變低后,開(kāi)漏線上的邏輯就為0了。這也是I2C,SMBus等總線判斷總線占用狀態(tài)的原理。如果作為輸出必須接上拉電阻。接容性負(fù)載時(shí),下降延是芯片內(nèi)的晶體管,是有源驅(qū)動(dòng),速度較快;上升延是無(wú)源的外接電阻,速度慢。如果要求速度高電阻選擇要小,功耗會(huì)大。所以負(fù)載電阻的選擇要兼顧功耗和速度。
3. 可以利用改變上拉電源的電壓,改變傳輸電平。IC的邏輯電平由電源Vcc1決定,而輸出高電平則由Vcc2(上拉電阻的電源電壓)決定。這樣我們就可以用低電平邏輯控制輸出高電平邏輯了(這樣你就可以進(jìn)行任意電平的轉(zhuǎn)換,例如加上上拉電阻就可以提供TTL/CMOS電平輸出等)。
4. 開(kāi)漏Pin不連接外部的上拉電阻,則只能輸出低電平(因此對(duì)于經(jīng)典的51單片機(jī)的P0口而言,要想做輸入輸出功能必須加外部上拉電阻,否則無(wú)法輸出高電平邏輯)。一般來(lái)說(shuō),開(kāi)漏是用來(lái)連接不同電平的器件,匹配電平用的。
5. 標(biāo)準(zhǔn)的開(kāi)漏腳一般只有輸出的能力。添加其它的判斷電路,才能具備雙向輸入、輸出的能力。
6. 正常的CMOS輸出級(jí)是上、下兩個(gè)管子,把上面的管子去掉就是OPEN-DRAIN了。這種輸出的主要目的有兩個(gè):電平轉(zhuǎn)換、線與。
7. 線與功能主要用于有多個(gè)電路對(duì)同一信號(hào)進(jìn)行拉低操作的場(chǎng)合,如果本電路不想拉低,就輸出高電平,因?yàn)镺PEN-DRAIN上面的管子被拿掉,高電平是靠外接的上拉電阻實(shí)現(xiàn)的。(而正常的CMOS輸出級(jí),如果出現(xiàn)一個(gè)輸出為高另外一個(gè)為低時(shí),等于電源短路)。
8. OPEN-DRAIN提供了靈活的輸出方式,但是也有其弱點(diǎn),就是帶來(lái)上升沿的延時(shí)。因?yàn)樯仙厥峭ㄟ^(guò)外接上拉無(wú)源電阻對(duì)負(fù)載充電,所以當(dāng)電阻選擇小時(shí)延時(shí)就小,但功耗大;反之延時(shí)大功耗小。所以如果對(duì)延時(shí)有要求,則建議用下降沿輸出。
應(yīng)用中需注意:
1) 開(kāi)漏和開(kāi)集的原理類(lèi)似,在許多應(yīng)用中我們利用開(kāi)集電路代替開(kāi)漏電路。例如,某輸入Pin要求由開(kāi)漏電路驅(qū)動(dòng)。則我們常見(jiàn)的驅(qū)動(dòng)方式是利用一個(gè)三極管組成開(kāi)集電路來(lái)驅(qū)動(dòng)它,即方便又節(jié)省成本。
2) 上拉電阻R pull-up的阻值決定了邏輯電平轉(zhuǎn)換的沿的速度。阻值越大,速度越低功耗越小。反之亦然。
推挽輸出電路
如下圖所示,一個(gè)典型的推挽輸出電路:
推挽輸出電路
如上圖所示,上面的三極管是N型三極管,下面的三極管是P型三極管,請(qǐng)留意控制端、輸入端和輸出端。
當(dāng)Vin電壓為V+時(shí),上面的N型三極管控制端有電流輸入,Q3導(dǎo)通,于是電流從上往下通過(guò),提供電流給負(fù)載。
推挽輸出電路-推電流
經(jīng)過(guò)上面的N型三極管提供電流給負(fù)載(Rload),這就叫「推」。
當(dāng)Vin電壓為V-時(shí),下面的三極管有電流流出,Q4導(dǎo)通,有電流從上往下流過(guò)。
推挽輸出電路-挽電流
經(jīng)過(guò)下面的P型三極管提供電流給負(fù)載(Rload),這就叫「挽」。
推挽輸出能夠輸出高或者低,而開(kāi)漏輸出只能輸出低,或者關(guān)閉輸出,因此開(kāi)漏輸出總是要配一個(gè)上拉電阻使用。
開(kāi)漏輸出的上拉電阻不能太小,太小的話(huà),當(dāng)開(kāi)漏輸出的下管導(dǎo)通時(shí),電源到地的電壓在電阻上會(huì)造成很大的功耗,因此這個(gè)電阻阻值通常在10k以上,這樣開(kāi)漏輸出在從輸出低電平切換到高電平時(shí),速度是很慢的。
推挽輸出任意時(shí)刻的輸出要么是高,要么是低,所以不能將多個(gè)輸出短接,而開(kāi)漏輸出可以將多個(gè)輸出短接,共用一個(gè)上拉,此時(shí)這些開(kāi)漏輸出的驅(qū)動(dòng)其實(shí)是與非的關(guān)系。
推挽輸出輸出高時(shí),其電壓等于推挽電路的電源,通常為一個(gè)定值,而開(kāi)漏輸出的高取決于上拉電阻接的電壓,不取決于前級(jí)電壓,所以經(jīng)常用來(lái)做電平轉(zhuǎn)換,用低電壓邏輯驅(qū)動(dòng)高電壓邏輯,比如3.3v帶5v。
編輯:hfy-
FPGA
+關(guān)注
關(guān)注
1625文章
21636瀏覽量
601308 -
三極管
+關(guān)注
關(guān)注
142文章
3592瀏覽量
121523 -
電阻
+關(guān)注
關(guān)注
86文章
5452瀏覽量
171494 -
推挽電路
+關(guān)注
關(guān)注
18文章
113瀏覽量
37828
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論