程序小白天天打卡(51单片机蜂鸣器)

2018/2/28

1.蜂鸣器的分类

1.按照有无震荡源分类

分为无源蜂鸣器和有源蜂鸣器,区别在于内部有无震荡源;

2.按照用途分类

1.电磁式蜂鸣器由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。

接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场,振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。

2.压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。

多谐振荡器由晶体管或集成电路构成,当接通电源后(1.5~15V直流工作电压),多谐振荡器起振,输出1.5~2.5kHZ的音频信号,阻抗匹配器推动压电蜂鸣片发声。

3.自激蜂鸣器是直流电压驱动的,不需要利用交流信号进行驱动,只需对驱动口输出驱动电平并通过放大电路放大驱动电流就能使蜂鸣器发出声音

2.调整蜂鸣器的发声

1.改变单片机引脚输出波形的频率,就可以调整控制蜂鸣器音调,产生各种不同音色、音调的声音。

2.改变输出电平的高低电平占空比,则可以控制蜂鸣器的声音大小。

3.简单代码的实现(控制无源蜂鸣器发声)

注:控制有源蜂鸣器发声,只需要给蜂鸣器端口一个低电平就可以让震荡源震荡

       控制无源蜂鸣器发声,需要给予蜂鸣器一个高低脉冲(使用延时函数)

/*蜂鸣器的实现*/

#include<reg52.h>
typedef unsigned char u8;
typedef unsigned int u16;
sbit beep=P1^5;	  //蜂鸣器为P1^5接口

void delay(u16 i)
{
   while(i--);
}
void main()
{

	while(1)
	{
	  beep=~beep;//将电平进行取反
	  delay(10);//T=200ms
	  /*while(1)
	{
	beep=0;//启动
	delay(10);//注意:延时时间不能太长
	beep=1;
	delay(10);	
	}*/
	
	/*提供一定频率的脉冲*/
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值