9.4蜂鳴器實驗
在很多的單片機系統(tǒng)中除了顯示器件外經(jīng)常還有發(fā)聲器件,最常見的發(fā)聲器件是蜂鳴器。蜂鳴器一般用于一些要求不高的聲音報警及按鍵操作提示音等場合。蜂鳴器的形狀一般如圖9-11所示。雖然它有自己的固有頻率,但是它也可以被加以不同頻率的方波,從而編制一些簡單的音樂。
圖9-11 蜂鳴器實物圖
9.4.1 實例功能
本實例就是來實現(xiàn)蜂鳴器發(fā)聲,通過本小節(jié)的實驗,可以使讀者熟練掌握蜂鳴器的應(yīng)用。
圖9-12 蜂鳴器實驗演示圖
9.4.2 器件和原理
蜂鳴器和普通揚聲器相比,最重要一個特點是只要按照極性要求加上合適的直流電壓,就可以發(fā)出固有頻率的聲音,因此使用起來比揚聲器簡單。由此可知,蜂鳴器的控制和LED的控制對單片機而言是沒有區(qū)別的。
9.4.3 硬件電路
雖然蜂鳴器的控制和LED的控制對于單片機是一樣的,但在外圍硬件電路上卻有所不同,因為蜂鳴器是一個感性負載,一般不建議用單片機I/O口直接對它進行操作,所以最好加個驅(qū)動三極管,在要求較高的場合還會加上反相保護二極管。本例實驗只為了達到學(xué)習(xí)目的并沒有加反相二極管保護,硬件電路可以參考下圖9-13。
圖9-13 硬件原理圖
通過硬件原理圖可知,圖中三極管用了PNP型,所以要使蜂鳴器發(fā)聲只要給單片機P3.6置低電平就可,由此可以為下文的程序編寫提供關(guān)鍵參考。
9.4.4 程序設(shè)計
01#include <reg51.h>
02
03sbit BUZZER=P3^7;
04
05void main(void)
06{
07BUZZER = 0;
08while(1);
09}
9.4.5 代碼分析
序號1:包含51單片機寄存器定義地頭文件
序號3:位定義蜂鳴器為P3.7
序號5-9:main程序
序號7:使P3.7端口輸出電平0,蜂鳴器發(fā)聲
序號8:循環(huán)等待
9.5繼電器實驗
在現(xiàn)代自動控制設(shè)備中,都存在一個電子電路(弱電)與電氣電路(強電)的互相連接問題,一方面要使電子電路的控制信號能夠控制電氣電路的執(zhí)行元件(如電動機、電磁鐵、電燈等),另一方面又要為電子線路的電氣電路提供良好的電隔離,以保護電子電路和人身的安全。繼電器便能完成這一橋梁作用。
9.5.1 實例功能
本實例通過單片機來控制繼電器吸合、釋放,讀者可以熟練掌握繼電器的使用方法。在本例中讀者也可以用繼電器的常開、常閉觸點控制電燈的亮滅,實現(xiàn)“以小控大”。
圖9-14 繼電器實驗演示圖
9.5.2 器件和原理
繼電器是一種電子控制器件,它具有控制系統(tǒng)(又稱輸入回路)和被控制系統(tǒng)(又稱輸出回路),通常應(yīng)用于自動控制電路中,它實際上是用較小的電流去控制較大電流的一種“自動開關(guān)”。故在電路中起著自動調(diào)節(jié)、安全保護、轉(zhuǎn)換電路等作用。在大多數(shù)的情況下,繼電器就是一個電磁鐵,這個電磁鐵的銜鐵可以閉合或斷開一個或數(shù)個接觸點。當(dāng)電磁鐵的繞組中有電流通過時,銜鐵被電磁鐵吸引,因而就改變了觸點的狀態(tài)。繼電器一般可以分為電磁式繼電器、熱敏干簧繼電器、固態(tài)繼電器等。本實驗板上配置的繼電器如圖9-15。
圖9-15 繼電器實物圖
繼電器也是屬于感性器件,所以不能用單片機的I/O口直接來控制,且要在三極管等控制器件上加反相保護電路。一般實驗中都是單片機通過一個PNP型三極管,把三極管作為電子開關(guān)來驅(qū)動繼電器,繼電器的開和關(guān)完全由三極管的基極電平進行控制。當(dāng)三極管基極為高電平,PNP型三極管截止,這時繼電器不工作;反之為低電平的話,PNP型三極管導(dǎo)通,繼電器得電吸合。
9.5.3 硬件電路
繼電器實驗原理圖可以參考下圖9-16。
圖9-16 硬件原理圖
9.5.4 程序設(shè)計
01#include <reg51.h>
02
03sbit RELAY = P1^3;
04
05void Delay()
06{
07unsigned char i,j;
08for(i=0;i<255;i++)
09for(j=0;j<255;j++);
10}
11
12void main()
13{
14while(1)
15{
16RELAY = 0;
17Delay();
18RELAY = 1;
19Delay();
20}
21}
8.5.5 代碼分析
序號1:包含51單片機寄存器定義的頭文件
序號3:位定義繼電器為I/O口P1.3
序號5-10:一個延時函數(shù),具體延長的時間和使用的晶體相關(guān)
序號7:定義兩個無符號變量i,j
序號8-9:通過i,j的自加嵌套循環(huán)執(zhí)行,達到延時目的
序號12-21:main函數(shù)
序號14:進入主程序的while循環(huán)
序號16:繼電器吸合
序號17:調(diào)用延時程序
序號18:繼電器釋放
序號19:調(diào)用延時程序