电磁式蜂鸣器有振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。接通电源后,振动器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场,振动膜片在电磁线圈和磁铁的相互作用下,周期性的振动发声。(它是有源蜂鸣器)
自激蜂鸣器是直流电压驱动的,不需要利用交流信号进行驱动,只需要对驱动口输出驱动电平并通过放大电路放大驱动电流就能使蜂鸣器发出声音,非常简单。
压电式蜂鸣器主要有多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。(它是无源蜂鸣器)
多谐振荡器由晶体管或集成电路构成,当接通电源后(1.5~15V直流工作电压),多谐振荡器起振,输出1.5~2.5kHZ的音频信号,阻抗匹配器推动压电蜂鸣片发声。
有源蜂鸣器和无源蜂鸣器的比较:有源蜂鸣器在外形上偏小、内部有晶振电路。
ULN2003内部集成了放大电路,可将有源蜂鸣器直接接在ULN2003上驱动
改变单片机引脚输出波形的频率,就可以调整控制蜂鸣器音调,产生各种不同音色、音调的声音。
改变输出电平的高低电平占空比,则可以控制蜂鸣器的声音大小。
蜂鸣器发声代码实现:
#include "reg52.h" typedef unsigned char u8; typedef unsigned int u16; sbit beep=p1^5; void delay(u16 i) { while(i--); } void main() { while(1) { beep=~beep; delay(10); } }