<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)小白學(xué)步(22) IO口:蜂鳴器的使用/三極管的工作原理

          單片機(jī)小白學(xué)步(22) IO口:蜂鳴器的使用/三極管的工作原理

          作者: 時(shí)間:2016-11-19 來源:網(wǎng)絡(luò) 收藏
          ======================================

          這一篇繼續(xù)上一篇的內(nèi)容,我們來做實(shí)驗(yàn)四:按鍵控制有源蜂鳴器,按下按鍵蜂鳴器響,釋放按鍵不響。

          本文引用地址:http://www.ex-cimer.com/article/201611/318511.htm

          蜂鳴器

          實(shí)驗(yàn)四之前簡單介紹下蜂鳴器。蜂鳴器有兩種,無源蜂鳴器和有源蜂鳴器,一般用于發(fā)出報(bào)警的聲音。聲音是由震動(dòng)產(chǎn)生的,大家都見過喇叭,喇叭里面有磁鐵和線圈。給線圈通上不斷變化的電壓,在磁鐵產(chǎn)生的磁場中就會(huì)運(yùn)動(dòng)。于是和線圈固定在一起的振膜就會(huì)震動(dòng),于是就能聽見聲音了,而無源蜂鳴器和喇叭效果基本一樣。和無源蜂鳴器不同的是,有源蜂鳴器內(nèi)部就有發(fā)聲電路,通上電壓合適的直流電就會(huì)發(fā)出叫聲。另外,有源蜂鳴器有正負(fù)極之分。圖中是常用的一種工作電壓為5V的有源蜂鳴器,正面標(biāo)有加號(hào)的一側(cè)引腳為正極,如果器件是全新的沒有剪過引腳,正極引腳比負(fù)極長。

          驅(qū)動(dòng)電路

          從上面的介紹來看,有源蜂鳴器和LED一樣,只要通電就能工作(如果沒有特殊說明,后面蜂鳴器就是指有源蜂鳴器)。但是為什么要單獨(dú)作為一個(gè)實(shí)驗(yàn)?zāi)兀?/p>

          前面我們說了,單片機(jī)IO口能通過的電流是有限的,過大的電流可能會(huì)燒壞管腳,或者不能正常工作。蜂鳴器和LED相比最主要的區(qū)別,就是蜂鳴器比LED需要的電流大很多,電壓一般也會(huì)高一些。

          為了讓單片機(jī)驅(qū)動(dòng)蜂鳴器,也就是控制蜂鳴器工作,我們需要使用一些特別的電路。不知道大家是否了解繼電器,繼電器的特點(diǎn)就是用小電流低電壓,控制大電流高電壓電路。但是一般的繼電器控制端需要的電流,對(duì)于單片機(jī)來說還是太大了,而且繼電器價(jià)格比較高,能控制很大的電流,用在這里大材小用了。而這里我們要用的器件是三極管。

          三極管基本介紹

          三極管的作用主要是放大電流。和名字一樣,三極管有三個(gè)管腳:發(fā)射極、基極、集電極,分別簡寫為E、B、C。有兩種類型,PNP型和NPN型,兩種類型的三極管工作時(shí)電流方向恰好相反,電路符號(hào)也不相同,如圖所示。發(fā)射極上的箭頭正是表示工作時(shí)電流方向的。

          三極管有很多參數(shù),實(shí)際的三極管也有很多種,封裝也各種各樣。下圖是常見的TO-92封裝的直插式小功率三極管。注意,這種外形只是封裝,并不是三極管專用,也有其他器件會(huì)用這樣的封裝,具體要看上面標(biāo)示的器件型號(hào),例如圖中的S9012表示它是9012三極管。像圖中一樣管腳朝下放置,半圓柱的平面正對(duì)自己,從左往右三個(gè)管腳分別是E、B、C。

          三極管作為電子開關(guān)使用

          三極管有三種工作狀態(tài),截止區(qū)、放大區(qū)、飽和區(qū)。在放大區(qū),可以放大電信號(hào),我們用的擴(kuò)音器等設(shè)備就可以通過三極管實(shí)現(xiàn)。在單片機(jī)中我們主要利用三極管的截止區(qū)和飽和區(qū),作電子開關(guān)使用,常用下面這樣的電路圖。

          左圖和右圖分別是NPN、PNP型三極管的電路圖。R1、S1和R2、S2相當(dāng)于單片機(jī)IO口,三極管集電極接蜂鳴器。NPN型電路控制蜂鳴器高電平有效,即IO口輸出高電平的時(shí)候,蜂鳴器就會(huì)響。PNP型反之。為了方便觀察,我接的是LED,和蜂鳴器是一樣的道理,可以看到圖中LED就點(diǎn)亮了。注意三極管的管腳位置不可接反,要驅(qū)動(dòng)的負(fù)載即圖中的LED也不能接反。

          常用PNP三極管有9012、8550等,NPN三極管有9013,8050等。

          三極管的原理和很詳細(xì)的工作情況分析,需要不少的計(jì)算過程,有興趣的讀者可以查看模擬電路相關(guān)的書籍資料。文章末尾也會(huì)簡單分析三極管工作機(jī)制,有興趣的同學(xué)可以看看。如果覺得難以理解,學(xué)習(xí)單片機(jī)過程中,可以不做深入研究。

          電路設(shè)計(jì)

          程序的實(shí)現(xiàn)和點(diǎn)亮LED差不多,不過要看你的電路確定是高電平還是低電平有效。按照前面的三極管電路,我們可以用9012實(shí)現(xiàn)蜂鳴器驅(qū)動(dòng)電路,低電平有效,電路圖如下,注意蜂鳴器的正負(fù)極不能接反。

          圖中P1.0上接的LED還放在那(當(dāng)然也可以去掉),P2.0上接了按鍵開關(guān),P2.1上連接了三極管驅(qū)動(dòng)的蜂鳴器。

          我用面包板搭建的電路。

          備注:三極管在這里起到開關(guān)的狀態(tài),建議優(yōu)先考慮使用PNP型三極管電路。因?yàn)槿龢O管的作用是放大電流,對(duì)于同一個(gè)三極管而言,如果要輸出更大的電流,一般就要在基極輸入更大電流。而使用PNP型電路時(shí),IO口輸出低電平有效,對(duì)于單片機(jī)來說是灌電流,此時(shí)基極能提供的電流更大,從而提供更大電流以驅(qū)動(dòng)蜂鳴器。我在實(shí)際測試時(shí),如果使用NPN型三極管9013,可以驅(qū)動(dòng)LED,但不足以驅(qū)動(dòng)蜂鳴器,除非自己給IO口再外接一個(gè)上拉電阻。

          程序?qū)崿F(xiàn)

          首先是定義LED、按鍵、蜂鳴器三個(gè)IO口

          sbit LED = P1^0;

          sbit KEY = P2^0;

          sbit BUZZER = P2^1;

          然后先設(shè)置KEY=1,然后在主循環(huán)中處理即可。這里我用的是PNP驅(qū)動(dòng),蜂鳴器和LED一樣,是低電平有效。

          void main()

          {

          KEY = 1;

          while(1) {

          LED = KEY;

          BUZZER = KEY;

          }

          }

          搭建完電路并燒寫好程序,按下按鍵,LED會(huì)被點(diǎn)亮,同時(shí)蜂鳴器就能發(fā)出聲音了。

          三極管工作機(jī)制簡要分析

          三極管的特性分析比較復(fù)雜,這里我通過仿真進(jìn)行簡單介紹,三極管的原理和更多的深入知識(shí),可以查閱相關(guān)模擬電路書籍。下圖是我用Multisim軟件仿真的電路(如果有興趣自己仿真,請自行安裝學(xué)習(xí)Multisim軟件)。

          圖中左邊的VCC通過可調(diào)電阻Rp分壓,接到三極管基極,右邊VCC通過一個(gè)電阻接到三極管集電極,三極管發(fā)射極接地。兩個(gè)綠色箭頭是Multisim中的探針,可以在黃色的框中顯示導(dǎo)線上通過的電流大小,以及導(dǎo)線上的電壓(也就是相對(duì)于GND的電壓)。

          我們把這個(gè)電路看成兩個(gè)電流通路,分別是由紫色和橙色箭頭標(biāo)注。調(diào)節(jié)Rp到合適的位置,就會(huì)有電流通過基極,大小為Ib,也就是紫色通路的電流。由于三極管的特性,Ic即橙色通路的電流也會(huì)根據(jù)Ib而變化。從圖中也可以看出來,左右兩個(gè)探針顯示的直流電流I(dc)分別為1.71nA和172nA(即Ib和Ic)。

          如果調(diào)節(jié)Rp,如圖Ib=3.33uA,此時(shí)Ic=333uA。多調(diào)整幾次并觀察結(jié)果,可以發(fā)現(xiàn)在一定范圍內(nèi),始終近似有Ic=100*Ib(在模擬電路中,常直接用等號(hào)代表約等于,誤差在所難免)。這正是三極管的放大特性。如果在基極接的是話筒,在集電極接喇叭,就可以放大聲音信號(hào)了。當(dāng)然實(shí)際電路還需要添加一些器件。而這里的100就是圖中三極管的放大倍率,是三極管很重要的一個(gè)參數(shù)(所謂參數(shù),就像電阻的阻值一樣的道理)。

          如果調(diào)節(jié)Rp,使基極電流Ib很大,例如圖中Ib=1mA,此時(shí)Ic只有4.95mA,而不是100mA,不滿足前面的條件了。前面說的是在一定范圍內(nèi),Ic=100*Ib,也就是兩者成正比,叫做三極管的線性區(qū),也叫放大區(qū)。而如果基極和發(fā)射極之間電壓太大,超過一定范圍,就進(jìn)入了三極管的飽和區(qū),Ic的值比較大;反之,如果電壓太小就會(huì)進(jìn)入截止區(qū),在截止區(qū),Ic很小,幾乎為0。正是利用這個(gè)特性,我們可以把單片機(jī)IO口接在基極,而在三極管集電極連接蜂鳴器,從而進(jìn)行控制。

          備注1:仿真電路有很大的局限性,只能在一定程度上模擬實(shí)際電路。實(shí)際電路很復(fù)雜,例如導(dǎo)線有電阻,但是仿真軟件的設(shè)計(jì)很難考慮這么多因素,還有一些目前仍然未知的問題也不能考慮到。所以仿真結(jié)果只能作為參考。例如上面這個(gè)電路,我發(fā)現(xiàn)即使不斷調(diào)節(jié)Rp,讓滑片直接移動(dòng)到5V的那一端,基極電壓卻仍然沒有達(dá)到5V,和實(shí)際電路中并不相符。

          備注2:前面說單片機(jī)IO口使用了電子開關(guān),就類似于上面的三極管電路,不過單片機(jī)中實(shí)際用的一般是MOS管。

          備注3:為了讓三極管工作在放大區(qū),常常使用電阻使基極和發(fā)射極之間電壓保持在一定的范圍內(nèi)。這個(gè)過程叫做靜態(tài)工作點(diǎn)的設(shè)置。設(shè)置好靜態(tài)工作點(diǎn),然后在其上疊加需要放大的幅度較小的交流信號(hào)(如果直接加交流信號(hào),不會(huì)工作在放大區(qū))。

          備注4:三極管作為電子開關(guān)時(shí),雖然不工作在放大區(qū),但是仍然起到了電流放大的作用,只是不滿足線性區(qū)的放大倍數(shù)關(guān)系。上圖中的Rp如果換成一個(gè)固定電阻和一個(gè)阻值隨溫度變化的熱敏電阻,三極管放大倍數(shù)足夠大的情況下,就可以做成熱敏開關(guān),可以根據(jù)溫度控制LED的開關(guān),而電子開關(guān)也因此得名。

          =======================================================



          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();