Skip to content

蜂鸣器(有源压电式) ​

电子讯响器 · 三极管驱动 · IO 口开关控制

一、理论基础 ​

1.1 传感器概述 ​

蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。

本系统采用的是有源压电式蜂鸣器。

1.2 蜂鸣器分类 ​

分类维度类型说明
结构压电式压电陶瓷压电效应带动金属片振动发声
结构电磁式电磁线圈通电产生磁场驱动振膜发声
驱动有源内含振荡驱动电路,直接给电压即可发声
驱动无源需外部提供方波驱动信号才能发声

有源 vs 无源:"有源"是指蜂鸣器本身内含驱动电路,直接给它一定的电压就可以响;"无源"是需要靠外部的驱动(方波信号)才可以响。

1.3 压电式蜂鸣器工作原理 ​

压电式蜂鸣器以压电陶瓷的压电效应来带动金属片的振动而发声。主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。

多谐振荡器产生特定频率的振荡信号,驱动压电蜂鸣片产生机械振动,经共鸣箱放大后发出声音。

1.4 典型应用 ​

  • 报警器(安防、烟雾、燃气报警)
  • 电子玩具、游戏机
  • 定时器、倒计时提醒
  • 汽车电子(倒车雷达、安全带提醒)
  • 计算机、打印机提示音
  • 物联网设备状态提示

二、实验实例:蜂鸣器控制 ​

2.1 实验目的 ​

  1. 掌握蜂鸣器的控制原理
  2. 掌握蜂鸣器控制程序的编程方法

2.2 实验内容 ​

在 IAR 集成开发环境中编写蜂鸣器控制程序,控制蜂鸣器循环鸣叫与停止。

2.3 预备知识 ​

  1. 了解 C 语言的基本知识
  2. 了解 IAR 中编写和调试程序的方法
  3. 了解 GPIO 输出控制的基本原理

2.4 实验设备 ​

  • 硬件:WSN-V 教学实验箱(带指示扩展板)、PC 机
  • 软件:Windows + IAR EW for 8051

2.5 驱动电路 ​

当 P0.7 输出高电平时,三极管 Q1(2N5551)导通,蜂鸣器上电而鸣叫;当 P0.7 输出低电平时,三极管 Q1 截止,蜂鸣器不通电并停止鸣叫。

蜂鸣器驱动电路原理图

电路说明:

  • BUZZER1 为有源压电式蜂鸣器,VCC3.3 供电
  • Q1(2N5551)为 NPN 三极管,作开关驱动
  • R11(100Ω)为蜂鸣器限流电阻
  • R9(2K)为基极限流电阻,R10(10K)为基极下拉电阻
  • P0.7 控制三极管基极,高电平导通

2.6 关键代码 ​

c
void main(void)
{
    P0DIR = (0x01<<0)|(0x01<<7);  // P0.0, P0.7 为输出方式
    P2DIR |= 0x01;                  // 设置 P2.0 为输出方式

    while(1)
    {
        P0_7 = 1;  // 打开蜂鸣器
        P0_0 = 0;
        P2_0 = 0;
        delay();

        P0_7 = 0;  // 关闭蜂鸣器
        P0_0 = 1;
        P2_0 = 1;
        delay();
    }
}

2.7 实验步骤 ​

  1. 连接好仿真器,及带指示扩展板的通用调试母板
  2. 新建工程 Buzzer,添加相应文件并修改工程设置
  3. 创建 Buzzer.c 并加入到工程中
  4. 编写 Buzzer 相关函数,在设定的间隔时间内控制蜂鸣器循环鸣叫和停止鸣叫
  5. 编译下载运行,观察蜂鸣器鸣叫和停止鸣叫

2.8 实验现象 ​

  • 蜂鸣器鸣叫时,通用调试母板上发光二极管 D2、D3 亮
  • 蜂鸣器停止鸣叫时,通用调试母板上的发光二极管 D2、D3 灭
  • 蜂鸣器按设定的间隔时间循环"鸣叫—停止—鸣叫—停止"

知识点

有源蜂鸣器只需给直流电压即可发声,控制简单,但只能发出固定频率的声音。无源蜂鸣器需要外部提供 2~5kHz 的方波驱动信号,可以通过改变方波频率演奏不同音调(音乐)。如果需要播放音乐或复杂音效,应选用无源蜂鸣器并用 PWM/定时器产生不同频率的方波。

内容来源:《WSN-V 物联网综合教学实验指导书》第 7 章·7.1 蜂鸣器控制实验,结合课程教学经验整理。


aioteer · 物联网专业课程群

💬AI 伴学配置