文档库 最新最全的文档下载
当前位置:文档库 › 单片机控制蜂鸣器唱歌的原理

单片机控制蜂鸣器唱歌的原理

单片机控制蜂鸣器唱歌的原理
单片机控制蜂鸣器唱歌的原理

一般说来,单片机演奏音乐基本都是单音频率,它不包含相应幅度的谐波频率,也就是说不能象电子琴那样能奏出多种音色的声音。因此单片机奏乐只需弄清楚两个概念即可,也就是“音调”和“节拍”。音调表示一个音符唱多高的频率,节拍表示一个音符唱多长的时间。

1)音调的确定

音调就是我们常说的音高。它是由频率来确定的!我们可以查出各个音符所对应的相

应的频率,那么现在就需要我们来用51来发出相应频率的声音!

我们常采用的方法就是通过单片机的定时器定时中断,将单片机上对应蜂鸣器的I/O口来回取反,或者说来回清零,置位,从而让蜂鸣器发出声音,为了让单片机发出不同频率的声音,我们只需将定时器予置不同的定时值就可实现。那么怎样确定一个频率所对应的定时器的定时值呢?

以标准音高A 为例:

A 的频率f = 440 Hz, 其对应的周期为:T = 1/ f = 1/440 =2272μs

那么,单片机上对应蜂鸣器的I/O 口来回取反的时间应为:

t = T/2 = 2272/2 = 1136 μs ,也就是清零、置位在一个周期内完成.

这个时间t 也就是单片机上定时器应有的中断触发时间。一般情况下,单片机奏乐时,其定时器为工作方式1,它以振荡器的十二分频信号为计数脉冲。设振荡器频率为f0 ,则定时器的予置初值由下式来确定:

t = 12 * (TALL – THL)/ f0 式中TALL = 216= 65536,T HL为定时器待确定的计数初值。因此定时器的高低计数器的初值为:

TH =THL/ 256 = ( TALL – t* f0/12) / 256

TL = THL % 256 = ( TALL – t* f0/12) %256

将t=1136 μs 代入上面两式(注意:计算时应将时间和频率的单位换算一致)即可求出标准音高A 在单片机晶振频率f0=12Mhz,定时器在工作方式1 下的时器高低计数器的予置初值为:

TH440Hz = (65536 – 1136 * 12/12) /256 = FBH

TL440Hz = (65536 – 1136 * 12/12)%256 = 90H

就这样,我们通过延时,发出了我们所需要的频率

以单片机12MHZ晶振为例,例出高中低音符与单片机计数T0相关的计数值如下表所示:

2)节拍的确定

在一张乐谱中,我们经常会看到这样的表达式,如1=C (4/4) 、1=G(3/4) ……等等,这里1=C (4/4),1=G(3/4) 表示乐谱的曲调,和我们前面所谈的音调有很大的关联,4/4、3/4 就是用来表示节拍的。以3/4 为例加以说明,它表示乐谱中以四分音符为节拍,每一小结有三拍。

其中1 、2 为一拍,3、4、5为一拍,6为一拍共三拍。1 、2的时长为四分音符的一半,即为八分音符长,3、4的时长为八分音符的一半,即为十六分音符长,5的时长为四分音符的一半,即为八分音符长,6的时长为四分音符长。

一般说来,如果乐曲没有特殊说明,一拍的时长大约为400—500ms 。

蜂鸣器工作原理介绍及并联电阻原理

蜂鸣器工作原理介绍及并联电阻原理 目前市场上广泛使用的蜂鸣器有电磁式与压电式,我司使用的蜂鸣器以压电式为主。 压电式蜂鸣器主要由多谐振荡器,压电蜂鸣片(以压电陶瓷为主,如下图所示),阻抗匹配器及共鸣箱,外壳等组成。其主要原理是以压电陶瓷的压电效应,来带动金属片的震动而发声。 压电陶瓷其实是一能够将机械能和电能互相转换的功能陶瓷材料。 所谓压电效应是指某些介质在受到机械压力时,哪怕这种压力微小得像声波振动那样小,都会产生压缩或伸长等形状变化,引起介质表面带电,便会产生电位差,这是正压电效应。反之,施加激励电场或电压,介质将产生机械变形,产生机械应力,称逆压电效应。如果压力是一种高频震动,则产生的就是高频电流。而高频电信号加在压电陶瓷上时,则产生高频声信号(机械震动),这就是我们平常所说的超声波信号。也就是说,压电陶瓷具有机械能与电能之间的转换和逆转换的功能。压电式蜂鸣器就是运用其将电能转换问机械能的逆压电效应。 压电蜂鸣器的主要应用电路如下图所示,R为阻抗匹配电阻。 当脉冲信号为高电平时,通过三级管导通,则在蜂鸣器两端形成一个VDC的电压,使压电陶瓷产生形变。当脉冲信号为低电平时,通过三极管关断。此时压电陶瓷形变复原,则在其两端产生一个由机械能转换为电能的电压,此时的电压需要通过阻抗匹配电阻进行释放,从而可使蜂鸣器产生一个稳定频率的声音信号。如下图所示,幅值与VDC相等,频率与芯片控制端口频率相等。 压电蜂鸣片

蜂鸣器端口信号主控芯片端口信号 R=1K时蜂鸣器两端信号

蜂鸣器两端,以及当R=1K时,其等效电容的放电时间为46us 蜂鸣器两端,以及当R=100Ω时,其等效电容的放电时间为6.8us

单片机控制LED及蜂鸣器课程设计报告

单片机设计报告 课程单片机课程设计 设计题目 LED灯及蜂鸣器 设计题目: 一、要求 1.了解LED显示流水灯的原理。 2.能够在LED上显示和控制蜂鸣器的工作。 3.熟悉掌握keil软件的使用。 二、分析 本设计使用AT89C52RC做为主控制模块,利用简单的外围电路来驱动LED蝴蝶。设计分为三个模块:单片机控制模块,输出显示模块和驱动模块,单片机控制模块以单片机为核心,以软件KEIL编程实现信号输出,以驱动LED及蜂鸣器为目的。 三、设计 1、硬件方面 (1)、LED驱动模块 图文显示有静态和动态两种方案,本设计中静动态都用到了。动态扫描的意思简单的说就是轮流点亮。具体就图案来说,把内部同行的发光管的阳极相连在一起,先送出对应行的发光管亮灭的数据并锁存,然后选通其它行使其燃亮相同的时间,然后熄灭。反复循环。 蜂鸣器的控制则是加入三极管接在VCC,单片机的第20引脚和负极上,以此来控制蜂鸣器的工作。 (2)、硬件设计 实验板上设计一个蝴蝶状的LED显示,可用于简单的图形图像。蝴蝶的图案是由74个LED绿灯、8个红灯、10个黄灯拼接而成。 其中绿灯直接接到正负极上,黄灯和红灯接到单片机的P2口,来控制其闪动。 2、软件编程(包括流程图、完整的汇编源程序及其注释) 1.电路图 本软件要求实现如下要求:外圈绿灯亮度明亮,红灯和黄灯都不停地闪动,蜂鸣器自动播放歌曲。 电路图如下:

2.主程序 本设计的系统软件能使系统LED各点亮度均匀,充足,可显示清晰图案,并且闪动。 系统主程序开始后,首先是对系统环境初始化,包括设置串口,中断和端口;然后闪动红黄灯,由于单片机没有停机指令,所以可以设置系统程序不断循环。 3.序代码如下: #include #include #include #include #define uchar unsigned char #define uint unsigned int #define DY_PORT P2 //设置LED连接的I/O组 #define DY_SPEED 100 //设置每一个明亮级的停留时间(值域: 0~65535) struct music_type { uchar tone; uchar delay; }; void delay (unsigned int a){ // 1ms延时程序 unsigned int i; while( --a != 0){

单片机按键控制蜂鸣器发声程序(严选参考)

#include typedef unsigned char uint8; typedef unsigned int uint16; uint8 Count,i; sbit Speak =P1^2; //蜂鸣器器控制脚 sbit key1 =P3^2;//按键控制引脚 sbit key2 =P3^3; sbit key3 =P3^4; /*以下数组是音符编码*/ uint8 code SONG[] ={ 0xff,0x39,0x30,0x33,0x30,0xff,0x30,0x30,0x00,}; void Time0_Init()//定时器T0方式1,定时10ms { TMOD = 0x01; IE = 0x82; TH0 = 0xDC; TL0 = 0x00; } void Time0_Int() interrupt 1 { TH0 = 0xDC; TL0 = 0x00; Count++; } void delay (uint8 k)//按键防抖延时 { uint8 j; while((k--)!=0) { for(j=0;j<125;j++) {;} } } void Delay_xMs(uint8 x)//发声延时 { uint8 i,j; for(i=0; i

} } void Play_Song(uint8 i)//蜂鸣器发声函数 { uint8 Temp1,Temp2; uint8 Addr; Count = 0; //中断计数器清0 Addr = i *3; while(1) { Temp1 = SONG[Addr++]; if (Temp1 == 0xFF) //休止符 { TR0 = 0; Delay_xMs(100); } else if (Temp1 == 0x00) //歌曲结束符 { return; } else { Temp2 = SONG[Addr++]; TR0 = 1; while(1) { Speak = ~Speak; Delay_xMs(Temp1); if(Temp2 == Count) { Count = 0; break; } } } } } void keyscan (void)//按键切换声音函数 { if(key1==0) { delay(10);

蜂鸣器电路

报警电路的设计 蜂鸣器俗称喇叭,是广泛应用于各种电子产品的一种元器件,它用于提示、报警、音乐等许多应用场合。 蜂鸣器与家用电器上面的喇叭在用法上也有相似的地方,通常工作电流比较大,电路上的TTL 电平基本上驱动不了蜂鸣器,需要增加一个电流放大的电路才可以,这一点与家用电器中的功放有相似之处。 学习板采用了一个很简单的 电路来实现蜂鸣器的联接,由上所述,一个管脚很难驱动蜂鸣器发出声音,所以增加了一个三极管来增加通过蜂鸣器的电流,见下方原理图。 蜂鸣器的正极性的一端联接到5V 电源上面,另一端联接到三极管的集电极,三极管的基级由单片机的P1.5管脚通过一个与非门来控制,当P1.5管脚为低时,与非门输出高电平,三极管导通,这样蜂鸣器的电流形成回路,发出声音。当P1.5管脚为高时,与非门输出低电平,三极管截止,蜂鸣器不发出声音。在这里与非门是作为非门来用的,这里采用一个非门的作用是为了防止系统上电时峰鸣器发出声音,以为系统复位以后,I/O 口输出的是高电平。 用户可以通过程序控制P1.5管脚的置低和置高来使蜂鸣器发出声音和关闭。 蜂鸣器的声音大小及音调可以通过调整P1.5管脚的置高时间及输出的波形进行控制,这一点可以在调试程序的时候来试验。 EA/ VP 31X119X218RESET 9RD 17WR 16 INT 012INT 113T014 T115P10/T 1P11/T 2P123P134P145P156P167P178P0039P0138P0237P0336P0435P0534P0633P0732P2021P2122P2223P2324P2425P2526P2627P2728PSE N 29 ALE /P 30TXD 11RX D 10VCC 40GN D 20U1 SST 89E554RC C7 30P C630P XA L1 11.0592M HZ RX D TXD VCC GN D 23456789 1PR1 5.1K VCC P1.0P1.1P1.2P1.3 P1.5P1.6P1.7RST INT 0 VCC VCC P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7P2.0P2.1P2.2P2.3P2.4P2.5P1.4IO1IO023456789 1PR3 5.1K F_R P2.7H_R P2.6P2.6

单片机按键控制蜂鸣器发声程序

#include typedef unsigned char uint8; typedef unsigned int uint16; uint8 Count,i; sbit Speak =P1A2; //蜂鸣器器控制脚 sbit keyl =卩3人2;〃按键控制引脚 sbit key2 =P3A3; sbit key3 =P3A4; /* 以下数组是音符编码 */ uint8 code SONG[] ={ 0xff,0x39,0x30,0x33,0x30,0xff,0x30,0x30,0x00,}; void Time0_Init()// 定时器 T0 方式 1 ,定时 10ms { TMOD = 0x01; IE = 0x82; TH0 = 0xDC; TL0 = 0x00; void Time0_Int() interrupt 1 { TH0 = 0xDC; TL0 = 0x00; Count++; } void delay (uint8 k)// 按键防抖延时 { uint8 j; while((k--)!=0) { for(j=0;j<125;j++) {;} } } void Delay_xMs(uint8 x)// 发声延时 { uint8 i,j; for(i=0; i

Count = 0; // 中断计数器清 0 Addr = i *3; while(1) { Temp1 = SONG[Addr++]; if (Temp1 == 0xFF) //休止符 { TR0 = 0; Delay_xMs(100); } else if (Temp1 == 0x00) //歌曲结束符 { return; } else { Temp2 = SONG[Addr++]; TR0 = 1; while(1) { Speak = ~Speak; Delay_xMs(Temp1); if(Temp2 == Count) { Count = 0; break; } } } } }void keyscan (void)// 按键切换声音函数{ if(key1==0) { delay(10); if(key1==0) {

蜂鸣器的介绍

蜂鸣器的介绍 推荐 一)蜂鸣器的介绍 1.蜂鸣器的作用蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。 2.蜂鸣器的分类蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。 3.蜂鸣器的电路图形符号蜂鸣器在电路中用字母“H”或“HA”(旧标准用“FM”、“LB”、“JD”等)表示。 (二)蜂鸣器的结构原理 1.压电式蜂鸣器压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。有的压电式蜂鸣器外壳上还装有发光二极管。 多谐振荡器由晶体管或集成电路构成。当接通电源后(1.5~15V直流工作电压),多谐振荡器起振,输出1.5~2.5kHZ的音频信号,阻抗匹配器推动压电蜂鸣片发声。 压电蜂鸣片由锆钛酸铅或铌镁酸铅压电陶瓷材料制成。在陶瓷片的两面镀上银电极,经极化和老化处理后,再与黄铜片或不锈钢片粘在一起。 2.电磁式蜂鸣器电磁式蜂鸣器由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。 接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场。振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。 一、常规电磁蜂鸣器产品是如何工作的? 无源电磁蜂鸣器工作原理是:交流信号通过绕在支架上的线包在支架的芯柱上产生一交变的磁通,交变的磁通和磁环恒定磁通进行叠加,使钼片以给定的交流信号频率振动并配合共振腔发声。产品的整个频率和声压的响应曲线与间隙值、钼片的固有振动频率(可粗略折射为小钼片的厚度)、外壳(亥姆霍兹共振声腔)频率、磁环的磁强漆包线的线径有直接关系。 二、常规电磁无源蜂鸣器产品由哪些材料组成? 三、常规压电蜂鸣器产品是如何工作的?

单片机 利用蜂鸣器演奏音乐

实验三-利用蜂鸣器演奏音乐 一、实验目的 1.了解BlueSkyC51单片机实验板中蜂鸣器的硬件电路 2.学会利用蜂鸣器实现音乐的演奏 3.掌握蜂鸣器实现音乐演奏的编程 二、实验硬件设计及电路 1. BlueSkyC51单片机实验板 ` 2.单片机最小系统

。 3.蜂鸣器电路连接 三极管主要是做驱动用的。因为单片机的IO口驱动能力不够让蜂鸣器发出声音,所以

我们通过三极管放大驱动电流,从而可以让蜂鸣器发出声音,你要是输出高电平,三极管导通,集电极电流通过蜂鸣器让蜂鸣器发出声音,当输出低电平时,三极管截止,没有电流流过蜂鸣器,所以就不会发出声音。 三、实验原理 1.音调及节拍 用一个口,输出方波,这个方波输入进蜂鸣器就会产生声音,通过控制方波的频率、时间,就能产生简单的音乐。一般说来,单片机演奏音乐基本都是单音频率,因此单片机奏乐只需控制音调和节拍。 (1)音调的确定 音调是由频率来确定的。通过单片机的定时器定时中断,将单片机上对应蜂鸣器的I/O 口来回取反,从而让蜂鸣器发出不同频率的声音。只需将定时器给以不同的定时值就可实现。通过延时,即可发出所需要的频率。 … (2)节拍的确定 一拍的时长大约为400—500ms,每个音符的时长通过节拍来计算。详细见程序代码。 2.软件设计相关 (1)头文件 #include<> #define uint unsigned int #define uchar unsigned char #define ulong unsigned long sbit beep=P1^4; 译实验相关问题 ; (1)实际发音颤音重 解决方法为修改蜂鸣器的驱动频率. (2)实际节奏过快或者过慢 调整延时 四、C51程序代码(部分来源于网络) #include<> #define uint unsigned int #define uchar unsigned char #define ulong unsigned long ~ sbit beep=P1^4; //蜂鸣器与口连接 uchar th0_f; //中断装载T0高8位 uchar tl0_f; //T0低8位 uchar code freq[36*2]={ //音阶码表 0xf7,0xd8, //440hz , 1 //0 0xf8,0x50, //466hz , 1# //1

单片机控制蜂鸣器概要

单片机控制蜂鸣器20年月日

目录 绪论 (1) 1、硬件设计 (2) 1.1 总体设计图 (2) 1.2 简易结构框图 (2) 1.3各部分硬件设计及功能 (3) 1.3.1 蜂鸣器发声电路:(如图1.3.1) (3) 1.3.2 电源稳压电路: (4) 1.4 元件清单 (4) 2、软件设计 (5) 2.1设计思想 (5) 2.2 程序流程图 (5) 2.3 音调、节拍以及编码的确定方法 (6) 2.3.1音调的确定 (6) 2.3.2 节拍的确定 (8) 2.3.3 编码 (9) 3、电路仿真与分析 (10) 4、电路板焊接、调试 (11) 4.1 焊接 (11) 4.2 调试 (12) 5、讨论及进一步研究建议 (12) 6、心得 (12) 7、单片机音乐播放器程序实例(卡农) (13)

绪论 蜂鸣器播放音乐电路设计对于单片机初学者来说是一个简单易实现的课题。通过编写程序使单片机产生一定频率的方波信号,方波信号进入蜂鸣器便产生我们熟知的音调。 我们用定时/计数器使单片机产生方波,利用定时/计数器使输出管脚在一定周期内反复翻转,达到所需频率,而我们给定时/计数器的初始值就是我们的音符—半周期数据表,通过我们播放的音乐的乐谱,来对数据表进行调用。 我们用延时子程序来表示节拍,不同的节拍代表不同的延时。 完成此次设计之后完全可以进行扩展,例如增加按键以及LED灯光效果,制成一个简易的音乐盒,给人以视觉听觉等全方位的享受。

1、硬件设计1.1 总体设计图 1.2 简易结构框图

1.3各部分硬件设计及功能 1.3.1 蜂鸣器发声电路:(如图1.3.1) 图1.3.1 如图所示,蜂鸣器发声电路是播放音乐电路的主要执行电路,它由一个蜂鸣器,一个三极管和一个电位器组成。蜂鸣器负责发声,三极管将电流放大,而电位器则控制流过蜂鸣器电流的大小,来达到控制音量的目的。

蜂鸣器电路及其原理

蜂鸣器电路及其原理 蜂鸣器是一种一体化结构的电子讯响器,在电路中用字母“H”或“HA”(旧标准用“FM”、“LB”、“JD”等)表示。蜂鸣器采用直流电压供电,其能发出单调的或者某个固定频率的声音,如嘀嘀嘀,嘟嘟嘟等。蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型,通常在计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件使用。下面为大家介绍的是蜂鸣器的工作原理。 蜂鸣器的工作原理 电路原理图使用SH69P43 为控制芯片,使用4MHz 晶振作为主振荡器。 PORTC.3/T0 作为I/O 口通过三极管Q2 来驱动蜂鸣器LS1,而PORTC.2/PWM0 则作为PWM 输出口通过三极管Q1 来驱动蜂鸣器LS2。另外在PORTA.3 和PORTA.2 分别接了两个按键,一个是PWM 按键,是用来控制PWM 输出口驱动蜂鸣器使用的;另一个是PORT 按键,是用来控制I/O 口驱动蜂鸣器使用的。连接按键的I/O口开内部上拉电阻。

先分析一下蜂鸣器。所使用的蜂鸣器的工作频率是2000Hz,也就是说蜂鸣器的驱动信号波形周期是500μs,由于是1/2duty 的信号,所以一个周期内 的高电平和低电平的时间宽度都为250μs。软件设计上,将根据两种驱动方式来进行说明。 a)蜂鸣器工作原理:PWM 输出口直接驱动蜂鸣器方式 由于PWM 只控制固定频率的蜂鸣器,所以可以在程序的系统初始化时就对PWM 的输出波形进行设置。 首先根据SH69P43 的PWM 输出的周期宽度是10 位数据来选择PWM 时钟。系统使用4MHz 的晶振作为主振荡器,一个tosc 的时间就是0.25μs,若是将PWM 的时钟设置为tosc 的话,则蜂鸣器要求的波形周期500μs 的计数值为

基于C51单片机矩阵键盘控制蜂鸣器的应用

学校代码 10126 学号科研创新训练论文 题目基于C51单片机的蜂鸣器和流水灯的 应用 院系内蒙古大学鄂尔多斯学院 专业名称自动化 年级 2013 级 学生姓名高乐 指导教师高乐奇 2015年06月20日

基于C51单片机的蜂鸣器和流水灯的应用 摘要 当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。本文介绍了单片机的发展及应用,和基于单片机的蜂鸣器和流水灯的知识及应用,还介绍了此次我所设计的课题。 关键词:C-51单片机,控制系统,流水灯,蜂鸣器,程序设计

The application of buzzer and flowing water light based on C51 MCU Author:GaoLe Tutor:GaoLeQi Abstract This age is a new technology emerge in endlessly era, in the electronic field especially automation intelligent control field, the traditional schism components or digital logic circuit, is composed of control system with unprecedented speed was replaced by micro-controller intelligent control system. SCM has small, strong function, low cost, etc, it can be said that wide application, intelligent control and automatic control core is the micro-controller.This article introduces the MCU development and application,the knowledge and application of buzzer and flowing water light based on MCU,then introduces the task I have designed this time. Keyword:C51 micro-controller,control system,flowing water light,buzzer ,programming

单片机控制蜂鸣器唱歌的原理

单片机控制蜂鸣器唱歌 的原理 Document serial number【UU89WT-UU98YT-UU8CB-UUUT-UUT108】

一般说来,单片机演奏音乐基本都是单音频率,它不包含相应幅度的谐波频率,也就是说不能象电子琴那样能奏出多种音色的声音。因此单片机奏乐只需弄清楚两个概念即可,也就是“音调”和“节拍”。音调表示一个音符唱多高的频率,节拍表示一个音符唱多长的时间。1)音调的确定 音调就是我们常说的音高。它是由频率来确定的!我们可以查出各个音符所对应的相 应的频率,那么现在就需要我们来用51来发出相应频率的声音! 我们常采用的方法就是通过单片机的定时器定时中断,将单片机上对应蜂鸣器的I/O口来回取反,或者说来回清零,置位,从而让蜂鸣器发出声音,为了让单片机发出不同频率的声音,我们只需将定时器予置不同的定时值就可实现。那么怎样确定一个频率所对应的定时器的定时值呢? 以标准音高A 为例: A 的频率f = 440 Hz, 其对应的周期为:T = 1/ f = 1/440 =2272μs 那么,单片机上对应蜂鸣器的I/O 口来回取反的时间应为: t = T/2 = 2272/2 = 1136 μs ,也就是清零、置位在一个周期内完成. 这个时间t 也就是单片机上定时器应有的中断触发时间。一般情况下,单片机奏乐时,其定时器为工作方式1,它以振荡器的十二分频信号为计数脉冲。设振荡器频率为f0 ,则定时器的予置初值由下式来确定: t = 12 * (TALL – THL)/ f0 式中TALL = 216= 65536,T HL为定时器待确定的计数初值。因此定时器的高低计数器的初值为: TH =THL/ 256 = ( TALL – t* f0/12) / 256

蜂鸣器知识汇总(完整资料).doc

【最新整理,下载后即可编辑】 蜂鸣器知识汇总 1)蜂鸣器的介绍 1.蜂鸣器的作用蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。 2.蜂鸣器的分类蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。 3.蜂鸣器的电路图形符号蜂鸣器在电路中用字母“H”或“HA”(旧标准用“FM”、“LB”、“JD”等)表示。 2)蜂鸣器的分类 蜂鸣器根据结构不同分为压电式蜂鸣器和电磁式蜂鸣器; 无论是压电式蜂鸣器还是电磁式蜂鸣器,都有有源和无源的区分,其中,“有源”是指蜂鸣器本身内含驱动了,直接给它一定的电压就可以响;“无源”是需要靠外部的驱动才可以响的 1.蜂鸣器的结构原理 压电式蜂鸣器:以压电陶瓷的压电效应,来带动金属片的振动而发声,主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。有的压电式蜂鸣器外壳上还装有发光二极管。多谐振荡器由晶体管或集成电路构成。当接通电源后(1.5~15V直流工作电压),多谐振荡器起振,输出 1.5~ 2.5kHZ的音频信号,阻抗匹配器推动压电蜂鸣片发声。

压电蜂鸣片由锆钛酸铅或铌镁酸铅压电陶瓷材料制成。在陶瓷片的两面镀上银电极,经极化和老化处理后,再与黄铜片或不锈钢片粘在一起。 压电式蜂鸣器需要比较高的电压才能有足够的音压,一般建议为9V以上。压电的有些规格,可以达到120dB以上,较大尺寸的也很容易达到100dB 电磁式蜂鸣器:用电磁的原理,通电时将金属振动膜吸下,不通电时依振动膜的弹力弹回,由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场。振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。 用1.5V就可以发出85dB以上的音压了,唯消耗电流会大大的高于压电式蜂鸣器, 2.有源蜂鸣器和无源蜂鸣器 有源蜂鸣器直接接上额定电源(新的蜂鸣器在标签上都有注明)就可连续发声,有源蜂鸣器工作的理想信号是直流电,通常标示为VDC、VDD等。因为蜂鸣器内部有一简单的振荡电路,能将恒定的直流电转化成一定频率的脉冲信号,从面实出磁场交变,带动钼片振动发音。 但是在某些有源蜂鸣器在特定的交流信号下也可以工作,只是对交流信号的电压和频率要求很高,此种工作方式一般不采用。 无源蜂鸣器则和电磁扬声器一样,需要接在音频输出电路中才能发声,原因在于内部没有驱动电路。无源蜂鸣器工作的理想信号方波。如果给预直流信号蜂鸣器是不响应的,因为磁路恒定,钼片不能振动发音。有些公司和工厂称为讯响器,国标中称为声响器。 3.外观区分有源蜂鸣器和无源蜂鸣器

单片机驱动蜂鸣器原理与程序

单片机驱动蜂鸣器原理与设计下面是电磁式蜂鸣器的外形图片及结构图。。。

时,三极管T1截止,没有电流流过线圈,蜂鸣器不发声;当P3.7输出低电平时,三极管导通,这样蜂鸣器的电流形成回路,发出声音。因此,我们可以通过程序控制P3.7脚的电平来使蜂鸣器发出声音和关闭。 程序中改变单片机P3.7引脚输出波形的频率,就可以调整控制蜂鸣器音调,产生各种不同音色、音调的声音。另外,改变P3.7输出电平的高低电平占空比,则可以控制蜂鸣器的声音大小,这些我们都可以通过编程实验来验证。 二、蜂鸣器列子 下面我们举几个简单的单片机驱动蜂鸣器的编程和电路设计的列子。 1、简单的蜂鸣器实验程序:本程序通过在P3.7输出一个音频范围的方波,驱动实验板上的蜂鸣器发出蜂鸣声,其中DELAY延时子程序的作用是使输出的方波频率在人耳朵听觉能力之内的20KHZ以下,如果没有这个延时程序的话,输出的频率将大大超出人耳朵的听觉能力,我们将不能听到声音。更改延时常数,可以改变输出频率,也就可以调整蜂鸣器的音调。大家可以在实验中更改#228为其他值,听听蜂鸣器音调的改变。 ORG 0000H AJMP MAIN ;跳转到主程序 ORG 0030H MAIN: CPL P3.7 ;蜂鸣器驱动电平取反 LCALL DELAY ;延时 AJMP MAIN ;反复循环 DELAY:MOV R7,#228 ;延时子程序,更改该延时常数可以改变蜂鸣器发出的音调 DE1: DJNZ R7,DE1 RET

END 2、倒车警示音实验程序:我们知道各种卡车、货柜车在倒车时候,会发出倒车的蜂鸣警示提示音,同时警示黄灯也同步闪烁,提醒后面的人或车辆注意。本实验例程就实现倒车警示功能,通过实验板上的蜂鸣器发出警示音,同时通过实验板上P1.2和P1.5上的两个黄色发光二极管来发出黄色警示灯。 ORG 0000H AJMP START ;跳转到初始化程序 ORG 0033H START: MOV SP,#60H ;SP初始化 MOV P3,#0FFH ;端口初始化 MAIN: ACALL SOUND ;蜂鸣器发声 ACALL YS500M ;延时 AJMP MAIN SOUND: MOV P1,#11011011B ;点亮2个警示黄色发光二极管 MOV R2,#200 ;响200个周期 SND1: CLR P3.7 ;输出低电平T1导通,蜂鸣器响 ACALL YS1ms ;延时 SETB P3.7 ;输出高电平T1截止,蜂鸣器不响 ACALL YS1ms ;延时 DJNZ R2,SND1 MOV P1,#0FFH ;熄灭黄色警示灯 RET

单片机驱动蜂鸣器原理与程序学习资料

单片机驱动蜂鸣器原 理与程序

单片机驱动蜂鸣器原理与设计 作者:mcu110 来源:51hei 点击数:12159 更新时间:2007年08月01日【字体:大中小】 蜂鸣器是一种一体化结构的电子讯响器,本文介绍如何用单片机驱动蜂鸣器,他广泛应用于计算机、打印机、复印机、报警器、电话机等电子产品中作发声器件。 蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。 电磁式蜂鸣器由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场,振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。 压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。多谐振荡器由晶体管或集成电路构成,当接通电源后(1.5~15V直流工作电压),多谐振荡器起振,输出1.5~2.5kHZ的音频信号,阻抗匹配器推动压电蜂鸣片发声。 下面是电磁式蜂鸣器的外形图片及结构图。。。 电磁式蜂鸣器实物图:电磁式蜂鸣器结构示意图:

图 1 图 2 电磁式蜂鸣器内部构成: 1. 防水贴纸 2. 线轴 3. 线圈 4. 磁铁 5. 底座 6. 引脚 7. 外壳 8. 铁芯 9. 封胶 10. 小铁片 11. 振动膜 12. 电路板 一、电磁式蜂鸣器驱动原理 蜂鸣器发声原理是电流通过电磁线圈,使电磁线圈产生磁场来驱动振动膜发声的,因此需要一定的电流才能驱动它,单片机IO引脚输出的电流较小,单片机输出的TTL电平基本上驱动不了蜂鸣器,因此需要增加一个电流放大的电路。S51增强型单片机实验板通过一个三极管C8550来放大驱动蜂鸣器,原理图见下面图3: S51增强型单片机实验板蜂鸣器驱动原理图:

单片机课程设计报告(利用蜂鸣器播放音乐)

单片机课程设计报告(利用蜂鸣器播放音乐)

成绩 课程设计:电子设计 题目名称:音乐流水灯 姓名:戴锦超 学号:08123447 班级:信科12-3班 完成时间:2014年10月23日

1设计的任务 设计内容:动手焊接一个51单片机 设计目标:利用单片机上的蜂鸣器以及二极管实现音乐播放以及根据音乐的节奏而规律性闪亮的二极管。并且通过程序调节音乐节奏的快慢。 2 设计的过程 2.1 基本结构 1.STC89C52RC 在本次的试验中采用了STC89C52RC单片机,STC89C52RC单片机是宏晶科技推出的新一代高速/低功耗/超强抗干扰的单片机,指令代码完全兼容传统8051单片机,12时钟/机器周期,工作电压:5.5V~3.3V(5V单片机)/3.8V~2.0V(3V单片机),工作频率范围:0~40MHz,相当于普通8051的0~80MHz,实际工作频率可达48MHz,用户应用程序空间为8K字节。

(STC89C52RC引脚图) STC89C52RC单片机的工作模式: (1)典型功耗<0.1μA,可由外部中断唤醒,中断返回后,继续执行原程序 (2)空闲模式:典型功耗2mA (3)正常工作模式:典型功耗4Ma~7mA (4)唤醒,适用于水表、气表等电池供电系统及便携设备 2.蜂鸣器及其工作原理: 蜂鸣器按其结构分主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。电磁式蜂鸣器由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场,振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。本实验采用的是电磁式蜂鸣器。

单片机蜂鸣器音乐

关于“世上只有妈妈好”的单片机音乐演奏程序 2009-11-22 21:45 单片机演奏一个音符,是通过引脚,周期性的输出一个特定频率的方波。 这就需要单片机,在半个周期内输出低电平、另外半个周期输出高电平,周而复始。 半个周期的时间是多长呢?众所周知,周期为频率的倒数,可以通过音符的频率计算出半周期。 演奏时,要根据音符频率的不同,把对应的、半个周期的定时时间初始值,送入定时器,再由定时器按时输出高低电平。 下面是个网上广泛流传的单片机音乐演奏程序,它可以循环的播放“世上只有妈妈好”这首乐曲。很多人都关心如何修改这个乐曲的内容,但是不知如何入手。做而论道对这个程序,给出说明,希望对大家有所帮助,以后大家自己就能够编写进去新的乐曲。 在这个程序中,有两个数据表,其中存放了事先算好的、各种音符频率所对应的、半周期的定时时间初始值。 有了这些数据,单片机就可以演奏从低音、中音、高音和超高音,四个八度共28个音符。 演奏乐曲时,就根据音符的不同数值,从半周期数据表中找到定时时间初始值,送入定时器即可控制发音的音调。 比如把表中的0xF2和0x42送到定时器,定时器按照这个初始值来产生中断,输出的方波,人们听起来,这就是低音1。 乐曲的数据,也要写个数据表,程序中以 code unsigned char sszymmh[] 命名。这个表中每三个数字,说明了一个音符,它们分别代表: 第一个数字是音符的数值1234567之一,代表多来咪发...; 第二个数字是0123之一,代表低音、中音、高音、超高音; 第三个数字是时间长度,以半拍为单位。 乐曲数据表的结尾是三个0。 程序如下: #include sbit speaker = P1^7; unsigned char timer0h, timer0l, time; //-------------------------------------- //单片机晶振采用11.0592MHz // 频率-半周期数据表高八位本软件共保存了四个八度的28个频率数据code unsigned char FREQH[] = { 0xF2, 0xF3, 0xF5, 0xF5, 0xF6, 0xF7, 0xF8, //低音1234567 0xF9, 0xF9, 0xFA, 0xFA, 0xFB, 0xFB, 0xFC, 0xFC,//1,2,3,4,5,6,7,i 0xFC, 0xFD, 0xFD, 0xFD, 0xFD, 0xFE, //高音 234567

有源蜂鸣器与无源蜂鸣器的区别(超全)

有源蜂鸣器与无源蜂鸣器的区别(转) 有源(引脚长)无源(引脚长度相同) 无源蜂鸣器的优点是: 1。便宜 2。声音频率可控,可以做出“多来米发索拉西”的效果 3。在一些特例中,可以和LED复用一个控制口 而无源内部不带震荡源,所以如果用直流信号无法令其鸣叫。必须用2K~5K的方波去驱动它。 有源蜂鸣器往往比无源的贵,就是因为里面多个震荡电路。 有源蜂鸣器的优点是:程序控制方便 区分 1 把蜂鸣器一脚朝天,如果电路板是黑色的表明是有缘的,如果电路板是绿色的表示无源的。 2 把万用表调到欧姆挡RX1位,用黑表笔接蜂鸣器的正极,慢慢触碰,如果发出咔咔生,电阻组织为8Ω或16Ω表示无源蜂鸣,如果发出持续的声音,表示有源! 现在很常用的是一种有源蜂鸣器,内部有振荡、驱动电路。加电源就可以响,你所说的估计就是那种。优点是用起来省事,缺点是频率固定了,就只一个单音。 有源蜂鸣器和无源蜂鸣器的差别主要差别为:有源蜂鸣器和无源蜂鸣器的根本区别是产品对输入信号的要求不一样;有源蜂鸣器工作的理想信号是直流电,通常标示为VDC、VDD等。因为蜂鸣器内部有一简单的振荡电路,能将恒定的直流电转化成一定频率的脉冲信号,从面实出磁场交变,带动钼片振动发音。但是在某些有源蜂鸣器在特定的交流信号下也可以工作,只是对交流信号的电压和频率要求很高,此种工作方式一般不采用。而无源蜂鸣器没有内部驱动电路,有些公司和工厂称为讯响器,国标中称为声响器。无源蜂鸣器工作的理想信号方波。如果给预直流信号蜂鸣器是不响应的,因为磁路恒定,钼片不能振动发音。 实例中,把驱动方式给为交流驱动(PWM输出)控制,频率选为5kHz。 在实际使用蜂鸣器时,区分是有源还是无源蜂鸣器,电磁式还是压电式。 对于后者,他们的区别是: 电磁无源蜂鸣属于感性负载器件,理想输入是正向方波通常记作:VO-P。压无源蜂鸣属于容性负载器件,理想输入是双向方波通常记作:VP-P。但是如果IC是反向器4049等,取一非门的输入和输出接蜂鸣器也是很理想的,只是有时IC的输出功率太小,声音达不到预期要求。如果蜂鸣器是作为高声压报警用的,普通的两引脚电感还不能满足要求,一般会采用三脚抽头电感,一般为10倍的升压比,有些高声压110dB以上的可能要用小功率变压器实现升压。

51单片机通过按键控制蜂鸣器发生详解

单片机开发报告 院系:电子工程学院 专业:自动化 班级:自动化1401 学号:8 姓名:越 指导老师:星光

2018年01 月04 日 一.系统任务 按键控制蜂鸣器发声 二.电路原理图 三.程序设计容 “叮咚”电子门铃实验程序:常见的家用电子门铃在有客人来访时候,如果按压门铃按钮时,室会发出“叮咚”声音,本实验程序模拟电子门铃的发音,当我们按压实验板上的K1按钮时候,蜂鸣器发出“叮咚”音乐声,是一个比较实用的程序。 使用无源蜂鸣器输出7个基本音阶 声音是由物体振动所产生的。只是由于物体的材料以及振幅、频率不同,而产生不同的声音。声音的响度是由振幅决定的,而音调则是由频率决定的,那么我们只需要控制物体振动的频率,就可以发出固定

的声调。 五.汇编程序 ORG 0000H AJMP START ORG 000BH INC 20H ;中断服务,中断计数器加1 MOV TH0,#0D8H MOV TL0,#0F0H 12M晶振,形成10毫秒中断 RETI ORG 001BH LJMP INTT1 ;跳转到T1中断服务程序START: MOV DPTR,#00H ;初始化程序 MOV A,#00H OBUF1 EQU 30H OBUF2 EQU 31H OBUF3 EQU 32H OBUF4 EQU 33H FLAGB BIT 00H STOPB BIT 01H MOV SP,#50H

MOV TH0,#0D8H MOV TL0,#0F0H MOV TMOD,#21H MOV TH1,#09H MOV TL1,#09H MOV IE,#8AH AJMP LOOP LOOP: JNB P3.2,MUSIC0 JNB P3.1,MAIN AJMP LOOP MAIN: JB P3.1,MAIN ;检测p3.1按钮 LCALL YS10M ;延时去抖动 JB P3.1,MAIN SETB TR1 ;按钮有效 MOV OBUF1,#00H MOV OBUF2,#00H MOV OBUF3,#00H MOV OBUF4,#00H CLR FLAGB CLR STOPB

蜂鸣器演奏原理

蜂鸣器发声的音调和节拍的确定方法 单片机奏乐只需弄清楚两个概念即可,也就是“音调”和“节拍”。音调表示一个音符唱多高的频率,节拍表示一个音符唱多长的时间。 在音乐中所谓“音调”,其实就是我们常说的“音高”。在音乐中常把中央C上 方的A音定为标准音高,其频率f=440Hz。当两个声音信号的频率相差一倍时,也即 f2=2f1 时,则称f2 比f1高一个倍频程, 在音乐中1(do)与i ……正好相差一倍频程,在音乐学中称它相差一个八度音。在一个八度音内,有12 个半音。以1—i八音区为例,12个半音是:1—#1、#1—2、2—#2、#2—3、3—4、4—#4,#4—5、5 一#5、 #5—6、6—#6、#6—7、7—i。这12 个音阶的分度基本上是以对数关系来划分的。 如果我们知道了这十二个音符的音高,也就是其基本音调的频率,我们就可根据倍频程 的关系得到其他音符基本音调的频率。 知道了一个音符的频率后,怎样让单片机发出相应频率的声音呢?一般说来,常采用的方法就是通过单片机的定时器定时中断,将单片机上对应蜂鸣器的I/O口来回取反,或者说来回清零,置位,从而让蜂鸣器发出声音,为了让单片机发出不同频率的声音, 我们只需将定时器予置不同的定时值就可实现。那么怎样确定一个频率所对应的定时器 的定时值呢?以标准音高A为例: A的频率f = 440 Hz,其对应的周期为: T = 1/ f = 1/440 =2272μs 由上图可知,单片机上对应蜂鸣器的I/O口来回取反的时间应为: t = T/2 = 2272/2 = 1136μs 这个时间t也就是单片机上定时器应有的中断触发时间。一般情况下,单片机奏乐时, 其定时器为工作方式1,它以振荡器的十二分频信号为计数脉冲。设振荡器频率为f0, 则定时器的予置初值由下式来确定: t = 12 *(TALL –THL)/ f0 式中TALL = 2^16 = 65536,THL 为定时器待确定的计数初值。因此定时器的高低计数器 的初值为: TH = THL / 256 = ( TALL –t* f0/12) / 256 TL = THL % 256 = ( TALL –t* f0/12) %256 将t=1136μs代入上面两式(注意:计算时应将时间和频率的单位换算一致),即可求 出标准音高A在单片机晶振频率f0=12Mhz,定时器在工作方式1 下的定时器高低计数 器的予置初值为: TH440Hz = (65536 –1136 * 12/12) /256 = FBH TL440Hz = (65536 –1136 * 12/12)%256 = 90H 根据上面的求解方法,我们就可求出其他音调相应的计数器的予置初值。 音符的节拍我们可以举例来说明。在一张乐谱中,我们经常会看到这样的表达式,如 1=C 3/4 、1=G 4/4 ……等等,这里1=C,1=G 表示乐谱的曲调,和我们前面所谈的音 调有很大的关联,3/4 、4/4 就是用来表示节拍的。以3/4 为例加以说明,它表示乐谱 中以四分音符为节拍,每一小结有三拍。比如:

相关文档
相关文档 最新文档