機(jī)電之家資源網(wǎng)
單片機(jī)首頁|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
單片機(jī)驅(qū)動蜂鳴器原理與設(shè)計
單片機(jī)驅(qū)動蜂鳴器原理與設(shè)計
 更新時間:2008-8-3 15:44:14  點(diǎn)擊數(shù):4
【字體: 字體顏色


    

蜂鳴器是一種一體化結(jié)構(gòu)的電子訊響器,本文介紹如何用單片機(jī)驅(qū)動蜂鳴器,他廣泛應(yīng)用于計算機(jī)、打印機(jī)、復(fù)印機(jī)、報警器、電話機(jī)等電子產(chǎn)品中作發(fā)聲器件。

蜂鳴器主要分為壓電式蜂鳴器和電磁式蜂鳴器兩種類型。


電磁式蜂鳴器由振蕩器、電磁線圈、磁鐵、振動膜片及外殼等組成。接通電源后,振蕩器產(chǎn)生的音頻信號電流通過電磁線圈,使電磁線圈產(chǎn)生磁場,振動膜片在電磁線圈和磁鐵的相互作用下,周期性地振動發(fā)聲。

壓電式蜂鳴器主要由多諧振蕩器、壓電蜂鳴片、阻抗匹配器及共鳴箱、外殼等組成。多諧振蕩器由晶體管或集成電路構(gòu)成,當(dāng)接通電源后(1.5~15V直流工作電壓),多諧振蕩器起振,輸出1.5~2.5kHZ的音頻信號,阻抗匹配器推動壓電蜂鳴片發(fā)聲。


下面是電磁式蜂鳴器的外形圖片及結(jié)構(gòu)圖。。。

電磁式蜂鳴器實物圖:  電磁式蜂鳴器結(jié)構(gòu)示意圖:
 
 
圖 1  圖 2 
電磁式蜂鳴器內(nèi)部構(gòu)成:  
1. 防水貼紙
2. 線軸
3. 線圈
4. 磁鐵  5. 底座
6. 引腳
7. 外殼
8. 鐵芯 9. 封膠
10. 小鐵片
11. 振動膜
12. 電路板
  
 


一、電磁式蜂鳴器驅(qū)動原理

蜂鳴器發(fā)聲原理是電流通過電磁線圈,使電磁線圈產(chǎn)生磁場來驅(qū)動振動膜發(fā)聲的,因此需要一定的電流才能驅(qū)動它,單片機(jī)IO引腳輸出的電流較小,單片機(jī)輸出的TTL電平基本上驅(qū)動不了蜂鳴器,因此需要增加一個電流放大的電路。S51增強(qiáng)型單片機(jī)實驗板通過一個三極管C8550來放大驅(qū)動蜂鳴器,原理圖見下面圖3:


S51增強(qiáng)型單片機(jī)實驗板蜂鳴器驅(qū)動原理圖:
 
 
 圖 3  


如圖所示,蜂鳴器的正極接到VCC(+5V)電源上面,蜂鳴器的負(fù)極接到三極管的發(fā)射極E,三極管的基級B經(jīng)過限流電阻R1后由單片機(jī)的P3.7引腳控制,當(dāng)P3.7輸出高電平時,三極管T1截止,沒有電流流過線圈,蜂鳴器不發(fā)聲;當(dāng)P3.7輸出低電平時,三極管導(dǎo)通,這樣蜂鳴器的電流形成回路,發(fā)出聲音。因此,我們可以通過程序控制P3.7腳的電平來使蜂鳴器發(fā)出聲音和關(guān)閉。

程序中改變單片機(jī)P3.7引腳輸出波形的頻率,就可以調(diào)整控制蜂鳴器音調(diào),產(chǎn)生各種不同音色、音調(diào)的聲音。另外,改變P3.7輸出電平的高低電平占空比,則可以控制蜂鳴器的聲音大小,這些我們都可以通過編程實驗來驗證。


二、蜂鳴器列子
下面我們舉幾個簡單的單片機(jī)驅(qū)動蜂鳴器的編程和電路設(shè)計的列子。

1、簡單的蜂鳴器實驗程序:本程序通過在P3.7輸出一個音頻范圍的方波,驅(qū)動實驗板上的蜂鳴器發(fā)出蜂鳴聲,其中DELAY延時子程序的作用是使輸出的方波頻率在人耳朵聽覺能力之內(nèi)的20KHZ以下,如果沒有這個延時程序的話,輸出的頻率將大大超出人耳朵的聽覺能力,我們將不能聽到聲音。更改延時常數(shù),可以改變輸出頻率,也就可以調(diào)整蜂鳴器的音調(diào)。大家可以在實驗中更改#228為其他值,聽聽蜂鳴器音調(diào)的改變。

ORG 0000H
AJMP MAIN ;跳轉(zhuǎn)到主程序

ORG 0030H
MAIN: CPL P3.7 ;蜂鳴器驅(qū)動電平取反
LCALL DELAY ;延時
AJMP MAIN ;反復(fù)循環(huán)

DELAY:MOV R7,#228 ;延時子程序,更改該延時常數(shù)可以改變蜂鳴器發(fā)出的音調(diào)
DE1: DJNZ R7,DE1
RET
END

2、倒車警示音實驗程序:我們知道各種卡車、貨柜車在倒車時候,會發(fā)出倒車的蜂鳴警示提示音,同時警示黃燈也同步閃爍,提醒后面的人或車輛注意。本實驗例程就實現(xiàn)倒車警示功能,通過實驗板上的蜂鳴器發(fā)出警示音,同時通過實驗板上P1.2和P1.5上的兩個黃色發(fā)光二極管來發(fā)出黃色警示燈。

ORG 0000H
AJMP START ;跳轉(zhuǎn)到初始化程序

ORG 0033H
START:
MOV SP,#60H ;SP初始化
MOV P3,#0FFH ;端口初始化

MAIN: ACALL SOUND ;蜂鳴器發(fā)聲
ACALL YS500M ;延時
AJMP MAIN

SOUND:
MOV P1,#11011011B ;點(diǎn)亮2個警示黃色發(fā)光二極管
MOV R2,#200 ;響200個周期
SND1: CLR P3.7 ;輸出低電平T1導(dǎo)通,蜂鳴器響
ACALL YS1ms ;延時
SETB P3.7 ;輸出高電平T1截止,蜂鳴器不響
ACALL YS1ms ;延時
DJNZ R2,SND1
MOV P1,#0FFH ;熄滅黃色警示燈
RET

YS1ms: ;1ms延時子程序
MOV R0,#2
YL1: MOV R1,#250 ;改變R0的數(shù)值可改變聲音頻率
DJNZ R1,$
DJNZ R0,YL1
RET

YS500M: ;500ms延時子程序
MOV R0,#6
YL2: MOV R1,#200
YL3: MOV R2,#250
DJNZ R2,$
DJNZ R1,YL3
DJNZ R0,YL2
RET

END


3、“叮咚”電子門鈴實驗程序:常見的家用電子門鈴在有客人來訪時候,如果按壓門鈴按鈕時,室內(nèi)會發(fā)出“叮咚”聲音,本實驗程序模擬電子門鈴的發(fā)音,當(dāng)我們按壓實驗板上的K1按鈕時候,蜂鳴器發(fā)出“叮咚”音樂聲,是一個比較實用的程序。

“叮咚”電子門鈴實驗ASM源程序:  “叮咚”電子門鈴C語言源程序:
ORG 0000H
LJMP START ;跳轉(zhuǎn)到初始化程序

ORG 000BH
LJMP PGT0 ;跳轉(zhuǎn)到T0中斷服務(wù)程序
START:
OBUF1 EQU 30H ;初始化程序
OBUF2 EQU 31H
OBUF3 EQU 32H
OBUF4 EQU 33H
FLAGB BIT 00H
STOPB BIT 01H
K1 BIT P3.2 ;定義按鈕K1,作為門鈴按鈕

MOV TMOD,#02H ;定時器初始化
MOV TH0,#06H
MOV TL0,#06H
SETB ET0 ;啟動定時器T0
SETB EA ;啟動總中斷

MAIN: ;主程序
JB K1,MAIN ;檢測K1按鈕
LCALL YS10M ;延時去抖動
JB K1,MAIN
SETB TR0 ;按鈕有效
MOV P1,#00H ;點(diǎn)亮按鈕指示燈
MOV OBUF1,#00H
MOV OBUF2,#00H
MOV OBUF3,#00H
MOV OBUF4,#00H
CLR FLAGB
CLR STOPB
JNB STOPB,$
MOV P1,#0FFH
LJMP MAIN ;發(fā)出“叮咚”完畢,返回重新檢測按鈕

YS10M: ;10ms延時子程序
MOV R6,#20
D1: MOV R7,#248
DJNZ R7,$
DJNZ R6,D1
RET

PGT0: ;定時器T0中斷服務(wù)程序
INC OBUF3 ;中斷服務(wù)程序中發(fā)出一聲“叮咚”響聲
MOV A,OBUF3
CJNE A,#100,NEXT
MOV OBUF3,#00H
INC OBUF4
MOV A,OBUF4
CJNE A,#20,NEXT
MOV OBUF4,#00H
JB FLAGB,PGSTP
CPL FLAGB
AJMP NEXT
PGSTP:
SETB STOPB
CLR TR0
LJMP INT0RET
NEXT: JB FLAGB,SOU2
INC OBUF2
MOV A,OBUF2
CJNE A,#03H,INT0RET
MOV OBUF2,#00H
CPL P3.7
LJMP INT0RET
SOU2: INC OBUF1
MOV A,OBUF1
CJNE A,#04H,INT0RET
MOV OBUF1,#00H
CPL P3.7
LJMP INT0RET
INT0RET:
RETI

END
  #include
unsigned char obuf1;
unsigned char obuf2;
unsigned int obuf3;

bit stopb;
bit flagb;

void main(void)
{
unsigned char i,j;

TMOD=0x02; //定時器T0初始化
TH0=0x06;
TL0=0x06;
ET0=1;
EA=1; //允許總中斷

while(1)
{
if(P3_2==0) //檢測K1按鍵
{
P1=0x00;
for(i=10;i>0;i--)
for(j=248;j>0;j--);
if(P3_2==0)
{
obuf1=0;
obuf2=0;
obuf3=0;
flagb=0;
stopb=0;
TR0=1; //啟動定時器T0,發(fā)出“叮咚”聲
while(stopb==0);
P1=0xff;
}
}
}
}

void t0(void) interrupt 1 using 0
{
obuf3++;
if(obuf3==2000)
{
obuf3=0;
if(flagb==0)
{
flagb=~flagb;
}
else
{
stopb=1;
TR0=0;
}
}
if(flagb==0)
{
obuf2++;
if(obuf2==3)
{
obuf2=0;
P3_7=~P3_7;
}
}
else
{
obuf1++;
if(obuf1==4)
{
obuf1=0;
P3_7=~P3_7;
}
}
}
 

 



[1] [2]  下一頁
  • 上一篇: 51單片機(jī)紅外遙控解碼程序
  • 下一篇: 基于OV6630圖像傳感器和DSP的圖像采集系統(tǒng)設(shè)計
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實性、準(zhǔn)確性和合法性。
    機(jī)電之家對此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請聯(lián)系機(jī)電之家,機(jī)電之家將及時作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會
    中國行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1