?
NPN型三極管,由三塊半導(dǎo)體構(gòu)成,其中兩塊N型和一塊P型半導(dǎo)體組成,P型半導(dǎo)體在中間,兩塊N型半導(dǎo)體在兩側(cè),三極管是電子電路中最重要的器件,他主要的功能是電流放大和開關(guān)的作用。
?
實(shí)際上,只要你了解了三極管的特性,對(duì)你使用單片機(jī)就順手很多了。大家其實(shí)也都知道三極管具有放大作用,但如何去真正理解它,卻是你以后會(huì)不會(huì)使用大部分電子電路和IC的關(guān)鍵。
我們一般所說(shuō)的普通三極管是具有電流放大作用的器件。其它的三極管也都是在這個(gè)原理基礎(chǔ)上功能延伸。三極管的符號(hào)如下圖左邊,我們就以NPN型三極管為例來(lái)說(shuō)說(shuō)它的工作原理。?
“
它就是一個(gè)以b(基極)電流Ib來(lái)驅(qū)動(dòng)流過(guò)CE的電流Ic的器件,它的工作原理很像一個(gè)可控制的閥門。
”
?
左邊細(xì)管子里藍(lán)色的小水流沖動(dòng)杠桿使大水管的閥門開大,就可允許較大紅色的水流通過(guò)這個(gè)閥門。當(dāng)藍(lán)色水流越大,也就使大管中紅色的水流更大。
如果放大倍數(shù)是100,那么當(dāng)藍(lán)色小水流為1千克/小時(shí),那么就允許大管子流過(guò)100千克/小時(shí)的水。
三極管的原理也跟這個(gè)一樣,放大倍數(shù)為100時(shí),當(dāng)Ib(基極電流)為1mA時(shí),就允許100mA的電流通過(guò)Ice。
這個(gè)原理大家可能也都知道,但是把它用在電路里的狀況能理解,那單片機(jī)的運(yùn)用就少了一大障礙了。
最常用的連接如下圖:
?
我們來(lái)分析一下這個(gè)電路,如果它的放大倍數(shù)是100,基極電壓我們不計(jì)。基極電流就是10V÷10K=1mA,集電極電流就應(yīng)該是100mA。
根據(jù)歐姆定律,這樣Rc上的電壓就是0.1A×50Ω=5V。那么剩下的5V就吃在了三極管的C、E極上了。
好!
現(xiàn)在我們假如讓Rb為1K,那么基極電流就是10V÷1K=10mA,這樣按照放大倍數(shù)100算,Ic就是不是就為1000mA也就是1A了呢?假如真的為1安,那么Rc上的電壓為1A×50Ω=50V。
啊?50V!都超過(guò)電源電壓了,三極管都成發(fā)電機(jī)了嗎?其實(shí)不是這樣的。
見下圖:
?
我們還是用水管內(nèi)流水來(lái)比喻電流,當(dāng)這個(gè)控制電流為10mA時(shí)使主水管上的閥開大到能流過(guò)1A的電流,但是不是就能有1A的電流流過(guò)呢?
不是的,因?yàn)樯厦孢€有個(gè)電阻,它就相當(dāng)于是個(gè)固定開度的閥門,它串在這個(gè)主水管的上面,當(dāng)下面那個(gè)可控制的閥開度到大于上面那個(gè)固定電阻的開度時(shí),水流就不會(huì)再增大,而是等于通過(guò)上面那個(gè)固定閥開度的水流了,因此,
下面的三極管再開大開度也沒(méi)有用了。
因此我們可以計(jì)算出,那個(gè)固定電阻的最大電流10V÷50Ω=0.2A也就是200mA。
就是說(shuō)在電路中三極管基極電流增大集電極的電流也增大,當(dāng)基極電流Ib增大到2mA時(shí),集電極電流就增大到了200mA。當(dāng)基極電流再增大時(shí),集電極電流已不會(huì)再增大,就在200mA不動(dòng)了。
此時(shí)上面那個(gè)電阻也就是起限流作用了。
下面我們來(lái)理解單片機(jī)內(nèi)的IO的狀況:
?
在單片機(jī)內(nèi)有P1-P3的24個(gè)IO口的電路都如上圖那樣。
平常我們用電子電路的目的是最終讓目標(biāo)器件工作,例如讓發(fā)光二極管亮起來(lái),讓電機(jī)正常轉(zhuǎn)起來(lái),從根本上說(shuō)就是讓這些器件獲得一定的電流讓它做功。例如要讓發(fā)光二極管亮一般就需要1mA以上的電流。
但是,單片機(jī)是智能芯片,它可以通過(guò)檢測(cè)各IO口的電壓值來(lái)做出邏輯分析和判斷,并能輸出高或低電壓作為結(jié)果信號(hào),因此可以看出,單片機(jī)的各IO口注重的是所產(chǎn)生的電壓而不是流過(guò)R和三極管的電流。
那么單片機(jī)內(nèi)IO口的電壓和電流的關(guān)系又是怎么樣的呢?
我們還是用水管流水的例子來(lái)說(shuō)明:
?
假設(shè)我們讓R的這個(gè)閥開的較大,讓下面那個(gè)控制閥全關(guān),這時(shí)如圖1所示可以看出P點(diǎn)的壓力就是水箱的壓力。當(dāng)我們將下面的控制閥全開,如圖2所示,則水將以很大的水流流過(guò)管線,而此時(shí)P點(diǎn)的壓力為0。這個(gè)原理和電子電路很相似。
通過(guò)三極管的關(guān)閉或開大來(lái)使輸出點(diǎn)P測(cè)得的邏輯量為1(電源電壓)或0(0電位)。
但這個(gè)過(guò)程有一個(gè)問(wèn)題,就是當(dāng)需要P點(diǎn)輸出為0時(shí),三極管將開得很大,流過(guò)的電流很大,單片機(jī)上有32個(gè)IO口,這樣消耗的電能就很多。
有沒(méi)有辦法改進(jìn)呢?有!見下圖:
?
見圖3,如果我們將上面那個(gè)閥門R關(guān)得很小,將下面的控制閥全關(guān),這時(shí)P點(diǎn)的壓力仍舊會(huì)是水箱的壓力,和上面圖1是一樣的。但當(dāng)我們將控制閥開大時(shí),如圖4,P點(diǎn)的壓力雖然也同樣為0,但這時(shí)通過(guò)的水流就大大減少了。這樣我們既能輸出1或者0。但消耗的水卻很少。
單片機(jī)里的電路正是這樣做的,它上面的電阻R大約為50K,最大電流是5V÷50K=0.1mA。
也就是說(shuō),當(dāng)P輸出1時(shí),不消耗電流,當(dāng)P輸出0時(shí)消耗的電流為0.1mA。正因?yàn)樗纳侠娮鑂很大,因此對(duì)于初學(xué)者來(lái)說(shuō),要它直接驅(qū)動(dòng)發(fā)光管或其它的負(fù)載就要有一定的方法技巧了。
這里我再和大家一起分析一下IO口外接負(fù)載時(shí)的各種情況:
?
我們先來(lái)看看接TTL器件的情況,當(dāng)P1.0接到74HC373的一個(gè)輸入腳上時(shí),因?yàn)門TL器件的輸入阻抗很高,大約幾百K到M歐姆級(jí)。
這就相當(dāng)于P1.0接了個(gè)500K(我們假設(shè)為500K)的電阻到地。這樣當(dāng)三極管導(dǎo)通時(shí),P1.0點(diǎn)為低電平,0.1mA的電流經(jīng)Rc然后流過(guò)三極管一地,Ri上沒(méi)有電流流過(guò)。而當(dāng)三極管截止后,電流就由Rc流過(guò)再通過(guò)Ri流到地。由于電阻分壓的作用,在Rc和Ri上各有部分電壓,P1.0點(diǎn)的電壓為Rc和Ri的分壓。
總電流=5V÷(50K+500K)=0.009mA,則P1.0點(diǎn)的電壓=0.009mA×500K=4.5V。
TTL規(guī)定輸出2.4-5V為高電平;輸出0.4-0為低電平。因此這樣接是正確的。
下面我們?cè)賮?lái)看看用S51來(lái)驅(qū)動(dòng)發(fā)光管的情況:
?
先來(lái)看看圖7的情況,很顯然,發(fā)光管的方向?yàn)樯险仑?fù),只有P1.0為高電位才能點(diǎn)亮發(fā)光管,要讓S51的P1.0為高電位,就必須使三極管截止。當(dāng)三極管截止后,電流經(jīng)Rc流到發(fā)光管再?gòu)陌l(fā)光管流到地。 ? 要讓發(fā)光管導(dǎo)通必須要在發(fā)光管兩端有超過(guò)2.1V的門坎電壓。因此流過(guò)發(fā)光管的電流=(5V-2.1V)÷50K=0.058mA的電流,你們說(shuō)發(fā)光管能亮嗎?? ? 再來(lái)看圖8。 由圖可以看出,要想讓發(fā)光管導(dǎo)通P1.0就必須為低電位。那P1.0口的三極管必須得導(dǎo)通。 當(dāng)三極管一導(dǎo)通后,電流一路流過(guò)Rc到三極管再?gòu)娜龢O管流到地。另一路在發(fā)光管上消耗掉2.1V的電壓。 然后一路幾乎沒(méi)有阻力地流過(guò)三極管,而IO口的三極管最大電流不能超過(guò)15mA,超了就會(huì)燒壞三極管,因此這個(gè)接法不正確。 ? 那么如何才能讓這兩種接法都可以驅(qū)動(dòng)發(fā)光管呢 見下圖:
?
先看圖9,在P1.0端和Vcc間接上個(gè)電阻Ri。當(dāng)三極管導(dǎo)通時(shí)有兩路電流都要從它的CE極流過(guò),一路是內(nèi)部R上的0.1mA電流,另一路就是Ri上的電流,為了不讓三極管過(guò)流而燒壞我們就要確定它的電阻值。 Ri=5V÷15mA=0.333K,就大約是330歐姆。這時(shí)流過(guò)三極管的電流就大約為15mA,此時(shí)發(fā)光管是不亮的。 當(dāng)三極管截止后,這兩路電流就都要從發(fā)光管流過(guò)了,這時(shí)流過(guò)發(fā)光管的電流是多少呢。 S51的內(nèi)部電阻上流過(guò)的電流為(5V-2.1V)÷50K=0.06mA,很小我們可以忽略不計(jì)了。
流過(guò)Ri上的電流為(5V-2.1V)÷330Ω=0.0087A,也就是8.7mA。已經(jīng)能讓發(fā)光管比較亮了。 這樣驅(qū)動(dòng)是可以的,但發(fā)現(xiàn)沒(méi)有,發(fā)光管不亮?xí)r所消耗的電流比發(fā)光管點(diǎn)亮?xí)r消耗的電流還要大。 如果用許多個(gè)IO口去點(diǎn)亮很多發(fā)光管的話這樣的電路就不經(jīng)濟(jì)了。好!這就是P1.0高電平直接驅(qū)動(dòng)發(fā)光管的狀況。?
再來(lái)看圖10,在和發(fā)光管串聯(lián)一個(gè)電阻后接在Vcc和P1.0之間。當(dāng)三極管導(dǎo)通時(shí),也是兩路電流都匯合后從三極管的CE流過(guò),內(nèi)部電阻上的電流仍為0.1mA,發(fā)光管上的電流就要由電阻Ri和發(fā)光管共同來(lái)保證不讓三極管的CE超過(guò)15mA,則電阻的確定為(5V-2.1V)÷15mA=0.193K,大約是200歐姆。這樣流過(guò)發(fā)光管的電流就約為15mA,發(fā)光管比較亮了。當(dāng)三極管截止后,就阻斷了這兩路電流的通路,因此不消耗電流。 這個(gè)電路是P1.0低電平直接驅(qū)動(dòng)發(fā)光管的狀況,可以看出這個(gè)電路當(dāng)發(fā)光管被點(diǎn)亮?xí)r消耗15mA的電流,而熄滅時(shí)就不消耗電流,因此這個(gè)電路是最適合用的。S51直接驅(qū)動(dòng)數(shù)碼管一般也都是采用這個(gè)電路原理。?
? 下面是數(shù)碼管的原理圖:
編輯:黃飛
?
評(píng)論