单片机教程(六):蜂鸣器理论及实践教程

**强学博览,足以通古今。-宋•欧阳修**

单片机教程(六):蜂鸣器理论及实践教程

  • 理论部分
    • 什么是蜂鸣器
    • 蜂鸣器种类
    • 蜂鸣器的发声
  • 实践代码部分

理论部分

什么是蜂鸣器

蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。蜂鸣器在电路中用字母“H”或“HA”(旧标准用“FM”、“ZZG”、“LB”、“JD”等)表示。

蜂鸣器种类

  1. 按其驱动方式的原理不同:有源蜂鸣器(内含驱动线路,也叫自激式蜂鸣器)和无源蜂鸣器(外部驱动,也叫他激式蜂鸣器);
  2. 按构造方式的不同:电磁式蜂鸣器和压电式蜂鸣器;
  3. 按封装的不同:DIP BUZZER(插针蜂鸣器)和SMD BUZZER(贴片式蜂鸣器);
  4. 按电流的不同:直流蜂鸣器和交流蜂鸣器,其中,以直流最为常见压电式蜂鸣器,用的是压电材料,即当受到外力导致压电材料发生形变时压电材料会产生电荷。同样,当通电时压电材料会发生形变。

蜂鸣器的发声

  我们知道按其驱动方式的原理不同:有源蜂鸣器(内含驱动线路,也叫自激式蜂鸣器)和无源蜂鸣器(外部驱动,也叫他激式蜂鸣器)
无源蜂鸣器必须用2K-5K的方波去驱动它,而有源蜂鸣器内部带震荡源,所以只要一通电就会叫;

实践代码部分

我这里演示的是无源蜂鸣器,即使用方波进行驱动,而我们在代码部分只需要将其引脚不断在0和1之间反转即可得到方波

#include 
sbit Beep = P3^6;
void Delay200us()		//@11.0592MHz
{
	unsigned char i;


	i = 89;
	while (--i);
}
void main(void)
{
	while(1)
	{
	Beep = ~Beep;
	Delay200us();
	}
}

你可能感兴趣的:(51单片机教程,嵌入式硬件,学习,单片机,51单片机,stm32,经验分享)