Step2:【C51】蜂鸣器发声实验
Step2Step2Step2 :【C51】蜂鸣器发声实验
蜂鸣器简介
①按驱动方式的不同。可分为有源蜂鸣器和无源蜂鸣器。
有源蜂鸣器内部有振荡电路,能将恒定的直流电转化成一定频率的脉冲信号,从而引起磁场交变,带动振动膜片振动发音。因此它工作的理想信号是直流电,一旦供电,蜂鸣器就会发出声音。
无源蜂鸣器内部不带震荡源,如果提供直流信号,因为磁路恒定,振动膜片不能振动发音,蜂鸣器不工作。因此,它工作的理想信号是方波,方波的频率不同,发出的声音也不同。
②按构造方式的不同。可分为电磁式蜂鸣器和压电式蜂鸣器。
电磁式蜂鸣器由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场,振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。
压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。多谐振荡器由晶体管或集成电路构成,当接通电源后(1.5~15V 直流工作电压),多谐振荡器起振,输出 1.5~5kHZ 的音频信号,阻抗匹配器推动压电蜂鸣片发声。
即想要电磁式蜂鸣器发声, 只需提供电源即可;想要压电式蜂鸣器发声, 需提供一定频率的脉冲信号;
硬件设计
因为 51 单片机 IO 口的驱动能力较弱,而蜂鸣器驱动需要约 30mA,所以非常困难。因此我们不会直接使用 IO 口驱动蜂鸣器,而是通过三极管把电流放大后再驱动蜂鸣器,这样51单片机的 IO 口只需要提供不到 1mA 的电流就可控制蜂鸣器。 所以我们也经常说到 51 单片机芯片是用来做控制的,而不是驱动。
蜂鸣器发声实验
在我所使用的开发板中,使用的是无源蜂鸣器,需要一定频率的脉冲才会发声。蜂鸣器控制管脚直接连接到 51 单片机的P1^5口上。并有一个PNP 三极管起到电流放大作用,从而可以驱动蜂鸣器。
#include<reg52.h>
void delay(int times);//延时函数
sbit beep=P1^5;//蜂鸣器控制管脚连接到 51 单片机的P1^5口上。
void main()
{while(1){beep=1;delay(1000);//延时约为1s,//蜂鸣器发出声音的时间间隔不同,频率就不同,所发出的声音也就不同。//根据这一原理,可通过改变蜂鸣器发声和停止发声的时间间隔,发出不同频率的声音。beep=0;delay(1000);}
}
void delay(int times)
{times=times*10000;while(times--);
}
扩展实验–灯光报警器(LED&蜂鸣器)
要求:在LED跑马灯的基础上附加要求:当LED3点亮时,蜂鸣器发出声音,报警;LED3熄灭时,蜂鸣器停止发声。
PS:LED跑马灯
#include<reg52.h>
#include<intrins.h>//进行移位操作的头文件
sbit beep=P1^5;//蜂鸣器控制管脚连接到 51 单片机的P1^5口上。
void delay(int times);
void main()
{int i;while(1){P2=0xFE;//P2口的8个引脚被赋值成1111,1110,代表只有P2^0口是低电平,其余都是高电平。//即只有LED0亮,其余LED灯处于熄灭状态。 //8个引脚与0xFE的2进制分别对应!for(i=0;i<8;i++){P2=_crol_(P2,1);//每次循环左移一位。if(P2==0xF7)//P2=11110111,如果LED3亮(即第四个LED灯亮起时),蜂鸣器报警{beep=1;delay(500);beep=0;//蜂鸣器停止发声}delay(1000);}}
}
void delay(int times)
{times=times*10000;while(times--);
}
补充知识
①NPN型三极管、PNP 型三极管
C:集电极collectorcollectorcollector | B:基极basebasebase | E:发射极emitteremitteremitter |
---|
开关特性:
对NPN型三极管,只要B极电压比E高0.7V以上,E、C之间就可以导通。所以NPN为高电平导通,低电平截止。
对PNP型三极管,只要E极电压比B高0.7V以上,E、C之间就可以导通。所以PNP为低电平导通,高电平截止。
三种工作状态:
(1)截止:
截止条件:对NPN,低电平为截止状态;对PNP,高电平为截止状态。
截止状态下,各电极的电流几乎为0,E极和C极互不相通,相当于一个断开的开关。E、C极电压近似于电源电压。
(2)放大:
放大条件:对NPN:UC>UB>UEU_C>U_B>U_EUC>UB>UE;对PNP:UE>UB>UCU_E>U_B>U_CUE>UB>UC。
IBI_BIB、ICI_CIC近似于线性关系,IBI_BIB微小的变化就能引起ICI_CIC较大的变化。
(3)饱和:
饱和条件:对NPN:UB>UEU_B>U_EUB>UE,UB>UCU_B>U_CUB>UC;对PNP:UB<UEU_B<U_EUB<UE,UB<UCU_B<U_CUB<UC。
当B、E极间的电流增大到某一值后,E、C极间电流将不再变化,就称三极管达到了饱和状态。此时IBI_BIB的变化对ICI_CIC的影响很小,两者不成比例。饱和状态下E极和C极间电压值很小,通常硅管约为0.3V,若忽略不计,则E极和C极之间相当于短路,即相当于一个闭合的开关。
三张图让你弄懂三极管截止状态、放大状态和饱和状态
三极管工作原理及三种基本工作状态
Step2:【C51】蜂鸣器发声实验相关推荐
- Ardino基础教程 7_蜂鸣器发声实验
实验七:蜂鸣器发声 用Arduino 可以完成的互动作品有很多,最常见也最常用的就是声光展示了,前面一直都是在用LED 小灯在做实验,本个实验就让大家的电路发出声音,能够发出声音的最常见的元器件就是蜂 ...
- 【Arduino基础】蜂鸣器发声实验
实验现象 使用arduino直接驱动蜂鸣器发出不同频率的声音. 理论学习 小型蜂鸣器因其体积小(直径只有 6mm).重量轻.价格低.结构牢靠,而广泛地应用在各种需要发声的电器设备.电子制作和单片机等电 ...
- 51单片机驱动蜂鸣器发声教程(扫盲)
51单片机 蜂鸣器 蜂鸣器发声原理是电流通过电磁线圈,使电磁线圈产生磁场来驱动振动膜发声的,因此需要一定的电流才能驱动它,单片机IO引脚输出的电流较小,单片机输出的TTL电平基本上驱动不了蜂鸣器,因此 ...
- ARM(IMX6U)裸机C语言蜂鸣器驱动实验(BSP+SDK)
参考:Linux之ARM(IMX6U)裸机C语言蜂鸣器驱动实验–驱动编写,编译 作者:一只青木呀 发布时间: 2020-08-16 14:47:23 网址:https://blog.csdn.net/ ...
- uln2003驱动蜂鸣器_让蜂鸣器发声
预备知识:蜂鸣器介绍 开发板原理图上面蜂鸣器的电路图是这样的,根据视频知道它是一个无源蜂鸣器. 可以看到蜂鸣器的一端和电阻相连,另一端和引脚BZ相连,注意这个BZ并不是元气名称,有图可知,元气名称都是 ...
- 51单片机蜂鸣器演奏《小苹果》C语言程序,51单片机C语言蜂鸣器发声生日快乐播放程序...
<51单片机C语言蜂鸣器发声生日快乐播放程序>由会员分享,可在线阅读,更多相关<51单片机C语言蜂鸣器发声生日快乐播放程序(4页珍藏版)>请在人人文库网上搜索. 1.按键发音/ ...
- stm32无源蜂鸣器定时器_使用STM32控制无源蜂鸣器发声播放音乐
[实例简介] 利用GPIO控制无源蜂鸣器发声,播放音乐.使用SysTick延时,使用位带操作寻址IO口引脚. [实例截图] [核心代码] pMusic ├── CMSIS │ ├── core_c ...
- STM32单片机开发之让蜂鸣器发声
本篇文章依旧是按照之前的stm32f10x系列单片机进行开发,但博主会教大家如何去看电路原理图以及如何去看开发手册,并且本系列文章不使用stm32提供的库函数,完全从0开始编写,这样能带大家更好的认识 ...
- STM32学习之路——麒麟座V3.2开发板蜂鸣器发声问题
因为蜂鸣器使用了PB.3口,该口同时也用于JTAG调试.查询芯片手册知道默认PB3是用作JTDO,要用作普通IO需要开启端口重映射.所以开启重映射,关闭JTAG功能后即可正常操作IO口控制蜂鸣器发声. ...
- vb 计算机主板喇叭发声,主板蜂鸣器发声规律总结
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 最近研究了一下主板的蜂鸣器发声规律,前些日子看到一位朋友用VB写了一个由此启发,特地总结了一下发声规律: 有一定物理常识的人都知道,音调的高低与震动频率成 ...
最新文章
- C语言指针入门 《C语言非常道》
- 给定三角形 ABC 和一点 P(x,y,z),判断点 P 是否在 ABC 内,给出思路并手写代码
- CSS样式和class应用
- 文本挖掘(part4)--N-gram模型
- tensorboard ckpt pb 模型的输出节点_算法工程化系列——模型固化
- (83)FPGA时钟抖动和时钟偏斜-面试必问(七)(第17天)
- 贾跃亭发文祝父亲节快乐:FF就像我的孩子
- 矩池云上安装caffe gpu教程
- 从零开始刷Leetcode——动态规划(70.198.303)
- 【Computer Organization笔记07】实验课:可编程逻辑器件介绍,硬件编程方法与原则,硬件编程流程
- 熟悉 CMake (三)—— 配置 opencv3
- 【利用存储过程和三层架构完成新闻发布】
- 物联网卡云平台如何分析信息数据
- rx550 黑苹果_黑苹果Hackintosh显卡入手指南
- 《机器人学基础》整理(1)
- 163邮箱 java发送html邮件,java邮件发送 qq与163邮箱互发和qq和163邮箱发送其余邮箱实例...
- ESD笔记(二)_ESD测试
- Advanced Computer Network Review(4)——Congestion Control of MPTCP
- 上海税前12000税后多少_税前12000元月工资,税后能拿多少
- KICAD设计——原理图层次及标签
热门文章
- 计算机属性资源管理器已停止工作,资源管理器已停止工作,详细教您怎么解决资源管理器已停止工作...
- paip 破解网站手机验证码
- t检验的几种应用案例
- 一些有意思的知识的网站
- 十条网站盈利模式分析总结
- Autoware(Architecture Proposal)
- QEMUKVM 虚拟机使用实例
- 浏览器与HTTP网络协议缓存原理分析 转自网界网:http://news.cnw.com.cn/news-china/htm2015/20151027_322909.shtml
- Detecting Deep-Fake Videos from Appearance and Behavior
- 游戏的初级体验,三围:视、听、触的展示