实验十蜂鸣器应用

  • 格式:docx
  • 大小:39.42 KB
  • 文档页数:2

下载文档原格式

  / 2
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验十蜂鸣器应用

蜂鸣器发声原理是电流通过电磁线圈,使电磁线圈产生磁场来驱动振动膜发声的,因此需要一定的电流才能驱动它,单片机IO引脚输出的电流较小,单片机输出的TTL电平基本上驱动不了蜂鸣器,因此需要增加一个电流放大的电路。本单片机实验板通过一个三极管9015来放大驱动蜂鸣器。

蜂鸣器的正极接到VCC(+5V)电源上面,蜂鸣器的负极接到三极管的发射极E,三极管的基级B经过限流电阻后由单片机的P2.1引脚控制,当P2.1输出高电平时,三极管截止,没有电流流过线圈,蜂鸣器不发声;当P2.1输出低电平时,三极管导通,这样蜂鸣器的电流形成回路,发出声音。因此,我们可以通过程序控制P2.1脚的电平来使蜂鸣器发出声音和关闭。

程序中改变单片机P2.1引脚输出波形的频率,就可以调整控制蜂鸣器音调,产生各种不同音色、音调的声音。另外,改变P2.1输出电平的高低电平占空比,则可以控制蜂鸣器的声音大小,这些我们都可以通过编程实验来验证。

(1) 实验任务

产生500Hz的音频信号驱动扬声器,作报警信号。

学习板默认是没有接通蜂鸣器,需要用跳线帽短接SPcon。本实验需要产生一个500Hz的报警声,即可以通过计算1S内开关蜂鸣器500次。

(2) 实验电路

(3)实验目的:

●掌握蜂鸣器的使用

●学会编写软件延时函数

(4)实验步骤

●分析设计内容,设计软硬件设计方法

●编写C语言代码

●编译代码

●下载可执行文件

●硬件调试

●观察现象

/**************************头文件***********************/ #include"regx52.h"

#include

#define uchar unsigned char

#define uint unsigned int

sbit buzzer=P2^1; //控制蜂鸣器

uchar i; //全局变量

/*********************毫秒级延时函数*****************/ void delayms(uint ms)

{

uchar b;

while(ms--)

{

for(b=0;b<125;b++);

}

}

/***********************主函数***********************/ main()

{

while(1) //大循环

{

buzzer=~buzzer;

delayms(1); //延时1MS

}

}

(7)现象

500HZ音调发生。

(8)扩展任务

自行改变频率,例如可以播放一首简短的歌曲。