久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> MCU設(shè)計(jì)實(shí)例 >> 瀏覽文章

單片機(jī)驅(qū)動(dòng)蜂鳴器原理與設(shè)計(jì)

作者:mcu110   來源:51hei   點(diǎn)擊數(shù):  更新時(shí)間:2007年08月01日   【字體:

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

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


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

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


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

電磁式蜂鳴器實(shí)物圖:
  電磁式蜂鳴器結(jié)構(gòu)示意圖:
 

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

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

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

S51增強(qiáng)型單片機(jī)實(shí)驗(yàn)板蜂鳴器驅(qū)動(dòng)原理圖:

 

 
圖 3
 

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

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


    二、蜂鳴器列子

    下面我們舉幾個(gè)簡(jiǎn)單的單片機(jī)驅(qū)動(dòng)蜂鳴器的編程和電路設(shè)計(jì)的列子。

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

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

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

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

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

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

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

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

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

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

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

      END


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

    “叮咚”電子門鈴實(shí)驗(yàn)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 ;定時(shí)器初始化
    MOV      TH0,#06H
    MOV      TL0,#06H
    SETB     ET0 ;啟動(dòng)定時(shí)器T0
    SETB     EA ;啟動(dòng)總中斷

MAIN: ;主程序
    JB       K1,MAIN ;檢測(cè)K1按鈕
    LCALL    YS10M ;延時(shí)去抖動(dòng)
    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ā)出“叮咚”完畢,返回重新檢測(cè)按鈕

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

PGT0: ;定時(shí)器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 <AT89X51.H>
unsigned char obuf1;
unsigned char obuf2;
unsigned int obuf3;

bit stopb;
bit flagb;

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

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

while(1)
{
if(P3_2==0) //檢測(cè)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; //啟動(dòng)定時(shí)器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;
}
}
}

單片機(jī)驅(qū)動(dòng)蜂鳴器原理的程序編寫
關(guān)閉窗口

相關(guān)文章

主站蜘蛛池模板: 亚洲精品视频二区 | av中文字幕网 | 毛片电影 | 中文无码日韩欧 | 在线观看日韩精品视频 | 亚洲精品日韩在线 | 中文字幕丁香5月 | 超碰在线免费 | 国产精品1区 | 精品久久久久久久久久久下田 | 久久久久黑人 | 国产婷婷精品 | 一区二区在线免费观看视频 | 一区二区在线免费观看 | www国产亚洲精品久久网站 | 伊人免费视频二 | 91网站在线看 | 日韩在线视频观看 | 午夜精品一区二区三区免费视频 | 日韩中文字幕一区 | 亚洲成人免费网址 | 日韩在线精品视频 | 国产精品亚洲欧美日韩一区在线 | av资源网站 | 一区二区三区高清 | 国产精品综合久久 | 欧美日韩精品一区二区三区四区 | www.色.com| 国产美女一区二区三区 | 国产激情视频网 | 日韩精品视频一区二区三区 | 久久成人精品视频 | 中文字幕精品一区二区三区精品 | 久久精品一区二区 | 中文字幕色站 | 欧美成人影院在线 | 久久久久久久91 | 综合色在线 | 国产精品综合一区二区 | 91精品国产综合久久久久 | 精品视频在线观看 |