搜索
您的当前位置:首页正文

基于单片机PWM控制的音乐门铃的设计

来源:二三娱乐
设计研发2019.07基于单片机PWM控制的音乐门铃的设计李亚琴(广东工贸职业技术学院,广东广州,510006)摘要:针对传统51单片机定时翻转电平驱动蜂鸣器存在的不足之处,提出了以PIC单片机为平台,利用PWM产生的音频信号驱动蜂鸣器演奏乐曲,实现了音乐门铃系统的应用设计。通过PWM端口输出不同脉冲信号频率及脉宽,驱动蜂鸣器发出不同的音调,并利用内部定时器来控制音调高低和节拍长度,此外结合按键切换播放不同的歌曲。经PROteus进行仿真测试后,发现该系统小巧灵活,方便安装,具有实用价值。关键词:PIC单片机;PWM;蜂鸣器;定时器;音乐门铃Design of Music Door Bell Based on MCU PWM ControlLi Yaqin(Guangdong Polytechnic of Industry and Commerce,Guangzhou Guangdong,510006)Abstract:Aiming at the shortcomings of the traditional 51 single chip microprocessor timing flip level drive buzzer, this paper proposes to use the PIC single chip microprocessor as a platform, using the audio signal generated by PWM to drive the buzzer to play music, and realizes the application design of the music doorbell system. Through the PWM port output different pulse signal frequency and pulse width, drive the buzzer to produce different tones, and use the internal timer to control the pitch level and beat length, in addition, combined with key switching to play different songs. After the simulation test by PROteus, it is found that the system is compact, flexible, easy to install and has practical value.Key words: PIC MCU;PWM;buzzer;timer; music doorbell

0 引言

随着微电子技术、无线技术和网络技术的飞速发展以及人们生活水平的大幅度提高,人们对居住环境的安全、方便提出了越来越高的要求,尤其是在智能化住宅中,人们迫切需要一种不仅安全可靠、使用方便等优点于一体的智能门铃产品,一般地,可利用51单片机I/O定时翻转电平产生固定频率方波信号来驱动蜂鸣器实现音乐响铃功能,但是该方法实现相对复杂,占用较多软硬件资源

[1-2]

来指示门铃音乐的播放状态。

按键输入电路 单片机PIC16F877A 蜂鸣器驱动电路 电源电路 。基于此,本文设计

时钟与复位电路 LED灯显示电路 了一种基于PIC单片机的音乐门铃系统,以PIC单片机为主控制器,通过寄存器操作控制PWM信号的频率及脉宽,驱动蜂鸣器发出不同的音调,占用硬件资源少,音乐音调和节拍易

[3-4]

。控制

图1 系统总体设计框图

2 系统硬件设计

2.1 电源电路设计

家用电压为220V,而本设计采用的电压是5V,考虑到有时候电池用完忘记换新电池的现象,如果不用电池的情况下,使用家用电的情况下,考虑采用典型的变压器降压,全波整流,电容滤波及集成电路稳压的电路进行设计。具体电路图如下图2所示。

1 系统总体设计

音乐门铃的系统总体设计如图1所示,主要由单片机核心芯片PIC16F877A、时钟与复位电路、按键输入电路、LED显示电路,蜂鸣器驱动电路等5部分组成。本设计有三个开关,分别为门铃开关,复位开关及自锁开关,门铃开关每按动一下就会播放不同的音乐,总共有4首流行的音乐,采用编程的方法实现,若不喜欢这几首音乐,可以通过修改程序来实现;复位开关按下则电路回到初始状态;自锁开关按下后关闭整个电路,使其与电源断开,体现节能环保,当我们出远门或不在家时,家里没有人时可以按下自锁开关。PIC单片机输出的PWM信号作为驱动蜂鸣器的输入信号,LED灯闪烁显示用

2.2 按键电路设计

按键触点开关电路由几个关键部件组成,其中一端与单片机的端口直接相连,另一端接地,当按钮被按下时,相应的端口变量为低电平,通过检测低电平可以判断哪些按键被按下,再进行相应的操作。另外,本设计还引入了自锁开关的应用,自锁开关按下后关闭整个电路,使其与电源断开,体现节

142019.07设计研发首先进行程序初始化设置,主要包括系统时钟设置、GPIO端口设置和定时器1、定时器2初始化设置,然后进入循环部分,由键盘查询子程序检测是否有按键被按下,若检查到有按键被按下,进入防抖动程序,如果确认按键按下,则进入音乐播放子程序,根据按键键值对音乐指针进行赋值操作,同时,启动定时器1中断,当预设定时时间即节拍时间到时,软件执行定时器1中断服务子程序,程序循环读取乐谱,根据音阶修改定时器的预分频系数,并重新设置定时器和PWM。当第二次有按键按下时,再次进入音乐播放子程序,直到第二首音乐播图2 电源电路设计图能环保。自锁开关一般是指开关自带机械锁定功能,按下去,松手后按钮是不会完全跳起来的,处于锁定状态,需要再按一次,才解锁完全跳起来。放完毕,以此类推。当按下复位按键时,将停止音乐播放。乐谱由音阶和节拍组成,每两个元素是一组,第一个元素是音阶,第二个元素为节拍,节拍以1/4为基准,相关代码如下:系统时钟设置 2.3 蜂鸣器驱动电路设计蜂鸣器发声原理是电流通过电磁线圈,是电磁线圈产生磁场来驱动振动膜发声的,因此需要一定的电流才能驱动它,单片机I/O引脚输出的电流较小,不能直接驱动蜂鸣器,需要增加一个电流放大电路。蜂鸣器驱动电路原理图如图3所示。需要注意的是有源蜂鸣器是以固定频率工作,加电即可鸣叫,无源蜂鸣器可以用不同的频率输入信号来控制发声,因此,需要选择无源蜂鸣器。由电路可知,当PWM信号PB5为高电平时,三极管Q1导通,电流流过线圈形成回路,蜂鸣器可工作,只要控制PB5高低电平输出形式的矩形波的频率就可以控制蜂鸣器演奏音乐。定时器初始化设置,GPIO设置 N 按键按下? Y 继续扫描按键 音符数组、指针设置,读取音PWM设置 定时器设置 读取节拍延时,启用中断服务程图3 蜂鸣器发声原理图

图4 主程序流程图#define beat 125//1/4节拍=125ms

#define low_1 136//定义音阶(预分频系数),低音Do#define 1ow_2 121//定义音阶(预分频系数),低音Re......

#define 1ow_2 121//定义音阶(预分频系数),高音XiU16 two tigers[]={mid_1,4,mid_2,4,mid_3,4,mid_1,4, mid_1,4,mid_2,4,

mid_3,4,mid_1,4,mid_3,4,mid_4,4,mid_5,4,... ...};//定义乐谱两只老虎

3 系统软件设计

3.1 制作乐谱

音乐由音符和节拍组成,不同频率的震动产生不同的音符;震动不同,不同的音乐频率将产生相应固定的脉冲信号。我们使PIC单片机工作在PWM输出模式,通过软件设置对PWM信号进行编程,实现对PWM信号频率和脉冲宽度的控制,发音频率等于PWM信号驱动方波的频率,因此音符的产生依赖于PWM输出信号的频率。节拍指的是音符发声的时间长短,本文中利用定时器来控制各个音符演奏的长短,从而实现演奏不同的音乐。

程序循环读取乐谱,根据音阶修改定时时间和PWM信号频率,同时利用定时器1进行精准计时,根据节拍长度进行MS级延时,实现乐谱的播放。采用C语言编写程序,软件程序主流程如图4所示。程序运行过程如下:

写入DCxB9:DCxB0位以设置PWM占空写入PR2寄存器以设定PWM周3.2 音阶及节拍设置

音符的产生依赖于PWM输出信号的频率,如下图5所示,

将CCP模块配置为PWM模式 写入T2CON以设置TMR2预分频比,使能Timer2 相应的TRIS位清零,将CCPX引脚设为输图5 PWM模式配置流程图

15设计研发通过以下步骤将CCP 模块配置为PWM 模式:PWM信号周期确定音阶频率: TPWM=(1+PR2)×4TOSC×P2TPWM为PWM信号周期,TOSC为系统时钟周期,P2为定时2019.07给周期寄存器PR2,启动PWM输出,系统随即发出特定频率音调,并重新启动定时器,软件退出中断服务子程序,返回到程序主循环。根据音符指针位置调用不同音调的音符和节拍,不断更新寄存器PR2数值以实现歌曲的连续播放。中断服务程序流程图如下图6所示。器2的预分频系数。进入Timer1中断 4 结束语本文利用PIC单片机的PWM端口输出不同频率信号,产生PWM音频脉冲波形,从而得到不同的音调,结合定时器控制节拍长度,实现了音乐门铃系统的设计。相比于传统51单片机I/O定时翻转电平驱动的方法,本系统的设计方案硬件电关闭Timer1,关闭PWM输清零Timer1中断标志路简单,音乐音调和节拍易控制,在Proteus仿真平台上仿真通过,然后用洞洞板实现了实物的焊接制作,本设计小巧灵活,方便安装和使用,这种方法可用于电机控制、电子琴以及无线报务中的电子键设计等,具有较高的实用价值。Timer1计数相关寄存器重新写初值 根据乐谱音符数组,更新PR2赋值,得到不同的蜂鸣器音调 参考文献[1]胡俐蕊,朱彪.多功能电子门铃的设计与实现[J].电子元器件应用,2006,(10):35-38.[2]郇玉龙,赵宁.用单片机设计电子音乐门铃[J].单片机制作,2007,(04): 29.[3]程望斌,冯建伟,谭绍钰,龙杰,李亚松.基于AT89S52的多功能智能门铃设计[J].湖南理工学院学报,2016,(12):50-52.

[4]安思,柯春艳,王磊.基于单片机的无线遥控门铃系统设

计[J].计算机工程应用技术,2018,14(21): 266-268.

启动Timer1,启动PWM输出 中断返回 图6 中断服务程序流程图

定时器1确定节拍的长度,当预设定时时间即节拍时间到时,软件执行定时器1中断服务子程序,首先关闭定时器,然后读取乐谱音符数组,将代表不同音调频率的音符数值赋

(上接第51页)

4 对策措施

通过火灾危险性评价,得到影响电力系统火灾危险性的主要指标集中在建筑灭火能力,同时安全管理能力、安全疏散能力均较薄弱。

5 结论

(1)针对电力系统的建筑多样性和风险不确定性,在风险准则和致因分析的基础上,建立了多层次火灾评价指标体系,采用模糊理论建立了火灾风险评价模型,实现了较大区域火灾危险性系统评价。(2)总结分析评价结果,并就其从消防安全管理、个人业务水平、消防设施等三方面风险提出了措施和建议。

4.1 加强消防安全管理工作

完善变电站和社会单位的消防安全制度、操作规程,建立完善消防安全管理体系和机制,定期开展消防安全评估,保障建筑具备经济合理的消防安全条件,落实各岗位消防安全责任制,明确各岗位消防安全职责,确定各级、各岗位的消防安全责任人。

参考文献

[1]刁兴华.智能变电站二次系统的可靠性及风险评估[D].

西南交通大学,2017.

[2]杨鲲鹏.西郊110千伏变电站建设项目风险分析研究[D].

华北电力大学,2012.

[3]董军,蒋雪.输电项目工程合同风险综合评价研究[J].华

东电力,2010,38(02):174-177.

[4]刘志辉.基于逐层模糊法的东阳变电站工程风险综合评

价研究[D].华北电力大学,2013.

[5]李杰等.城市火灾危险性分析[J].自然灾害学报

1995,4(2):99~103.

[6]李申,朱磊.大型综合公共建筑的火灾风险评价[J].武警

学院学报,2010,26(12):35-38.

4.2 提高消防专职人员业务水平

加强控制室值班人员进行消防设施和器材的使用和操作培训,消防管理人、消防控制室值班员和消防设施操作维护人员应持证上岗。

4.3 加强消防设施维护管理

加强消防设施维护管理,确定建筑消防设施的维护部门、管理人员及其工作职责,建立建筑消防设施值班、巡查、检测、维修、保养、建档等制度,对建筑内消防设施进行检查和维护,保证消防设施的正常运行。

16

因篇幅问题不能全部显示,请点此查看更多更全内容

Top