【单片机】【让蜂鸣器发声】认识蜂鸣器,让蜂鸣器发出你想要的声音
单片机中的蜂鸣器
1. 三极管
三极管是一种控制电流的半导体器件,作用是把微弱信号放大成幅度值较大的电信号(射频方法),也用作无触点开关(用作开关)。放大的原理参考:三极管原理-导通条件_坚持努力,冲~的博客-CSDN博客_三极管导通条件
简单来说,三极管具有电流放大作用。
三极管全称为半导体三极管,或双极型晶体管、晶体三极管,有两种封装方式:直插式和贴片式。
三极管的工作原理:三极管内部有两种电路排布,一种是PNP型,一种是NPN型,二者之间只是电流流向不同。
三极管有三个引脚,分别是BASE(基极)、EMITTER(发射极)、COLLECTOR(集电极)。三极管内部电路如下,左边是NPN型,右边是PNP型。
在电路图中区分基极、集电极、发射极的方法:横杠是基极,带箭头的是发射极,剩下的就是集电极。
PNP型:当B极(基极)电流大于1mA时,或基极电压小于发射极电压时,集电极与发射极之间导通,有电流通过。E到B有小电流时,E到C会有大电流通过,即导通。
NPN型:当基极电位高于发射极点为零点几伏时,发射结处于正偏状态,而集电极电位高于基极电位几伏时,集电结处于反偏状态,集电极电源要高于基极电源。B到E有小电流时,C到E有大电流,即导通。
对于NPN管,它是由2块N型半导体中间夹着一块P型半导体所组成,发射区与基区之间形成的PN结称为发射结,而集电区与基区形成的PN结称为集电结,
2. 认识蜂鸣器
单片机上的蜂鸣器实物如下,左边有绿色电路板的是有源蜂鸣器,右边用黑胶封起来的是无源蜂鸣器。
根据是否含有振荡电路,可以把蜂鸣器分为有源蜂鸣器和无源蜂鸣器。
有源蜂鸣器由高低电平直接控制发声,而无源蜂鸣器需要一定频率的脉冲触发发声。
电磁式蜂鸣器由振荡器、电磁线圈、磁铁、振动膜片及外壳组成。工作原理是:接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场,振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。该种蜂鸣器有振荡电路,属于有源蜂鸣器。
压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳灯组成。工作原理是:多谐振荡器由晶体管或集成电路构成,当接通电源后(1.5V~15V直流工作电压),多谐振荡器起振,输出1.5~2.5kHz的音频信号,阻抗匹配器推动压电蜂鸣片发声。该种蜂鸣器属于无源蜂鸣器。
蜂鸣器需要通过放大电路放大驱动电流才能工作。
对于无源蜂鸣器来说,
改变单片机引脚输出波形的频率,可以调整控制蜂鸣器音调,产生各种不同音色、音调的声音;
该百年输出电平的高低电平占空比,可以控制蜂鸣器的声音大小。
3. ULN2003芯片简单介绍
前面说到蜂鸣器要发出声音需要通过放大电路,在【普中51-单核-A2板子】上,使用ULN2003芯片起到放大电流的作用。
ULN2003是耐高压、大电流达林顿陈列,由七个硅NON达林顿管组成。
ULN2003是大电流驱动阵列,多用于单片机、智能仪表、PLC、数字量输出卡灯控制电路中,可直接驱动蜂鸣器、继电器等负载。
4. 蜂鸣器相关电路
蜂鸣器通过放大电路连接到P1^5,通过控制P1^5端口的高低电平形成脉冲,触发蜂鸣器发声。
sbit beep = P1^5;
void ring_buzzer()
{beep = 0;while(1){beep = ~beep;delay_ms(100);}
}
与流水灯综合应用,制作流水灯,灯亮蜂鸣器发出响声
/************************************************************P1口接8个LED,共阳极,P37接蜂鸣器制作流水灯,灯亮蜂鸣器发出响声
************************************************************/
#define LEDP1 P1
sbit beep = P3^7;
void led_p1_beep_p37()
{ u8 i=0;u16 delay_times = 10000; // 200ms// 初始状态P1 = ~0x01;delay_ms(delay_times);while(1){for(i=0;i<7;i++){P1 = _crol_(P1,1); // 左移一位beep = ~beep;delay_ms(delay_times); }for(i=0;i<7;i++){P1 = _cror_(P1,1); // 左移一位beep = ~beep;delay_ms(delay_times); }}
}
Proteus仿真显示结果:
5. 利用蜂鸣器制作音乐
参考:STC89C52单片机蜂鸣器介绍以及《孤勇者》歌曲代码示例_牛油果爱吃小猪的博客-CSDN博客_51单片机蜂鸣器音乐代码
【单片机】【让蜂鸣器发声】认识蜂鸣器,让蜂鸣器发出你想要的声音相关推荐
- 【先楫HPM6750系列】PWM驱动蜂鸣器发声
[先楫HPM6750系列]PWM驱动蜂鸣器发声 本篇将介绍如何使用HPM6750输出PWM信号,并使用PWM信号驱动蜂鸣器发声. PWM简介 PWM 的全称是 脉冲宽度调制 ( Pulse-width ...
- 51单片机蜂鸣器演奏《小苹果》C语言程序,51单片机C语言蜂鸣器发声生日快乐播放程序...
<51单片机C语言蜂鸣器发声生日快乐播放程序>由会员分享,可在线阅读,更多相关<51单片机C语言蜂鸣器发声生日快乐播放程序(4页珍藏版)>请在人人文库网上搜索. 1.按键发音/ ...
- STM32单片机开发之让蜂鸣器发声
本篇文章依旧是按照之前的stm32f10x系列单片机进行开发,但博主会教大家如何去看电路原理图以及如何去看开发手册,并且本系列文章不使用stm32提供的库函数,完全从0开始编写,这样能带大家更好的认识 ...
- 关于郭天祥51单片机教程视频课后题《同时用两个定时器控制蜂鸣器发声》
题目为:同时用两个定时器控制蜂鸣器发声,定时器0控制频率,定时器1控制同个频率持续的时间,间隔300ms依次输出1,10,50,100,200,400,800, 1k(hz)的方波. 给出的代码为: ...
- 单片机蜂鸣器发声,首先是让他一直响
打开Keil 建好我们的工程,和程序文件,并把程序文件添加到工程里面. 这次我们要做一个蜂鸣器,首先先了解蜂鸣器 我们用到的是P3^6这个脚,所以我们在写程序的时候,首先定义的就是蜂鸣器的引脚 #in ...
- 51单片机驱动蜂鸣器发声教程(扫盲)
51单片机 蜂鸣器 蜂鸣器发声原理是电流通过电磁线圈,使电磁线圈产生磁场来驱动振动膜发声的,因此需要一定的电流才能驱动它,单片机IO引脚输出的电流较小,单片机输出的TTL电平基本上驱动不了蜂鸣器,因此 ...
- 8051单片机(STC89C52)之改变蜂鸣器发声频率
由于定时器0的中断处理程序为50ms触发一次, 故改变tcount归零时的临界值即可改变蜂鸣器发声的频率. 当tcount = 40 进行电平翻转时, 发出的声音类似于公交车转向灯开启时的效果声音. ...
- uln2003驱动蜂鸣器_让蜂鸣器发声
预备知识:蜂鸣器介绍 开发板原理图上面蜂鸣器的电路图是这样的,根据视频知道它是一个无源蜂鸣器. 可以看到蜂鸣器的一端和电阻相连,另一端和引脚BZ相连,注意这个BZ并不是元气名称,有图可知,元气名称都是 ...
- 【STC单片机学习】第十一课:蜂鸣器
[朱老师课程总结 侵删] 第一部分.章节目录 1.11.1.蜂鸣器的原理 1.11.2.让蜂鸣器响起来 1.1 ...
最新文章
- arcgis xml 下载 切片_vue/cli3整合Cesium,加载离线arcgis 切片
- JHipster开发环境安装
- 基于WeUI的Angular2开发
- python一个类调用另一个类的方法_python 类静态方法实例化另一个类对象的问题?...
- SAP gateway CSRF token的获取调试办法
- 如何写单片机的寄存器,这篇文章带你入门。
- 云原生时代业务架构的变革:从单体迈向Serverless
- IList对象排序算法
- Android studio 升级指定dradle
- 编译异常例子java_Java中异常发生时代码执行流程
- Redis项目应用场景与实例汇总
- Java 9 : 从零开始实现模块化(一)
- android adb命令安装apk的步骤
- 计算机操作系统之CPU架构和原理(二)
- 2022年要知悉的9大互联网前沿科技
- 自学java后都是怎么找的工作?
- Google guava之SortedMultiset简介说明
- python3 全局热键_python3注册全局热键的实现
- 干货!5招搞定问卷调查差异化分析
- 协众技术教你玩转电商海报设计
热门文章
- Origin 2018部分使用说明
- $(function() {})是什么?
- 迅雷5.5.4.268去广告版
- java web开发(学习路线)
- 阿里巴巴Java开发手册1.3.0(终极版)
- 四个热点事件营销技巧
- 架构图到底怎么画?老彭带你走一波!
- SonarQube-代码质量检测工具
- android++日历示例,Android控件之CalendarView 日历对话框(示例代码)
- 【Unity】Rigibody——刚体加力、刚体加扭矩力、刚体加力的几种模式