快捷搜索:  汽车  科技

蜂鸣器测量方法:蜂鸣器实验

蜂鸣器测量方法:蜂鸣器实验从外观上看,两种蜂鸣器好像一样. 一般有源有源蜂鸣器比无源蜂鸣器厚一点.有源蜂鸣器往往比无源的略贵,就是因为里面多个震荡电路。注意:这里的“源”不是指电源,而是指震荡源。有源蜂鸣器内部带震荡源,所以只要一通电就会叫;无源蜂鸣器内部不带震荡源,所以如果用直流信号无法令其鸣叫。必须用2K-5K的波形脉冲信号去驱动它

一 了解蜂鸣器(Buzzer)

蜂鸣器是一种电子发声元器件,可以发出"beep beep"的声音. 采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。蜂鸣器在电路中用字母“FM”、“H”或“HA” 或“ZZG”、“LB”、“JD”等表示。

蜂鸣器测量方法:蜂鸣器实验(1)

蜂鸣器分为有源蜂鸣器和无源蜂鸣器两种。

有源蜂鸣器与无源蜂鸣器的区别:内部有否震荡源

注意:这里的“源”不是指电源,而是指震荡源。

有源蜂鸣器内部带震荡源,所以只要一通电就会叫;

无源蜂鸣器内部不带震荡源,所以如果用直流信号无法令其鸣叫。必须用2K-5K的波形脉冲信号去驱动它

有源蜂鸣器往往比无源的略贵,就是因为里面多个震荡电路。

从外观上看,两种蜂鸣器好像一样. 一般有源有源蜂鸣器比无源蜂鸣器厚一点.

但是 从外观上并不能绝对的区分出有源与无源,最可靠的做法除了查看产品的参数手册以外. 另一种方式是使用万用表测试蜂鸣器电阻,只有8Ω或者16Ω的是无源蜂鸣器,电阻在几百欧以上的是有源蜂鸣器。

1 准备元器件和器材

无源蜂鸣器 一个

面包板一块

PNP型三极管(型号8550)一个

1K 电阻一个

杜邦线若干

2 蜂鸣器驱动电路原理图

蜂鸣器元件需要通过一个驱动电路接在单片机上. 典型的驱动电路原理图如下:

蜂鸣器测量方法:蜂鸣器实验(2)

上述电路中用一个PNP型三极管做为控制开关 图中FM是蜂鸣器

三极管C极接GND,E极接蜂鸣器的负端,三极管的B极通过一只1K-2K的电阻到单片机的GPIO脚 . 蜂鸣器的正端接VCC.

该电路中三极管相当于一个开关, 运行原理如下:

1 当GPIO输出高电平,三极B极与E极间没有电压差,三极管E极与C极间不通,蜂鸣器FM没有电流通过,蜂鸣器不响。

2,当GPIO输出低电平,三极B极与E极间形成电压差,三极管E极与C极之间导通,电流通过蜂鸣器FM,如果是有源蜂鸣器,则立即发出beep声。

(1) 三极管型号为 8550 其引脚如下图:

如图所示,

1脚=E(发射极,电路图中带箭头的那个)

2脚=B(基极,电路图中跟R相接的那个)

3脚=C(集电极,与E相对的那个)

蜂鸣器测量方法:蜂鸣器实验(3)

(2) 蜂鸣器有两个脚有源蜂鸣器是一通电就响的,两个脚分别是正负极 两个脚一长一短 短脚为负极 长脚为正极接VCC. 本例用的是无源蜂鸣器。

而无源蜂鸣器的是需要波形信号驱动的,两个脚没有正负极。

用面包板接线

把三极管 蜂鸣器 电阻插入面包板 按上述电路原理图,用杜邦线接线 接线如下图:

蜂鸣器测量方法:蜂鸣器实验(4)

蜂鸣器的正极(长脚)接5V 负极(短脚)接三极管 E极

三极管B极接1K欧姆电阻,再接到Arduino D3脚

三极管C极接地

写入以下程序

void setup(){

pinMode(3 OUTPUT);

}

void loop(){

tone(3 400);//频率400

delay(1000);

tone(3 1000);//频率1000

delay(1000);

tone(3 600);

delay(1000);

tone(3 300);

delay(1000);

}

这里,我们用到了一个内置程序,tone(pin p)。pin代表输出脚,p代表输出频率。

tone()函数可以产生固定频率的PWM信号来驱动扬声器发声。发声时间长度和声调都可以通过参数控制。定义发声时间长度有两种方法,第一种是通过tone()函数的参数来定义发声时长,另一种是使用noTone()函数来停止发声。如果您在使用tone()函数时没有定义发声时间长度,那么除非您通过noTone()函数来停止声音,否则Arduino将会一直通过tone()函数产生声音信号。

Arduino一次只能产生一个声音。假如Arduino的某一个引脚正在通过tone()函数产生发声信号,那么此时让Arduino使用另外一个引脚通过tone()函数发声是不行的。

请注意:

1. 对于Arduino Mega以外的控制器,使用tone()函数时会影响引脚3和引脚11的PWM信号输出。

2. 如果你想要使用不同的引脚产生不同的声音音调,每一次更换发声引脚以前都要使用noTone函数停止上一个引脚发声。Arduino是不支持两个引脚同时发声的。

各种蜂鸣器都有适用的频率,在这个频率下,发生最大。读者可以从4000的频率试用,更改频率直到声音合适。

猜您喜欢: