一、蜂鸣器(Buzzer)
蜂鸣器是一种将电信号转换成声音信号的器件。按驱动方式分类,可以分为有源蜂鸣器和无源蜂鸣器。有源蜂鸣器内部自带震荡源,通直流电就能发声。无源蜂鸣器内部不带震荡源,需要控制震荡脉冲的频率,就能发出不同频率声音。
二、原理图
ULN2003:达林顿晶体管阵列,相当于一个反相器。如下图,P2_5控制BEEP。P2_5输出1,则BEEP输出0。
BEEP输出为0,形成电压差,蜂鸣器导通发声。
三、实验
1.蜂鸣器播放提示音
实验现象:按键按下,蜂鸣器以500us的频率,响1ms。
用到Key、Delay、Nixie模块。
Buzzer.c
Buzzer.h
main.c
2.蜂鸣器播放音乐
乐理知识:
小星星乐谱:
用定时器计数,溢出申请终中断,产生相应频率。以低音1为例:T=1/262=3816.7939us,半周期T=1908.3963us,则定时器计数1908us/1us产生溢出,65536-1908=63628就为THx和TLx的值。
实验现象:播放小星星。
Timer.c
Timer.h
Delay.c
Delay.h
main.c