基于AT89S52单片机音乐播放器控制分析

时间:2022-05-05 10:22:26

基于AT89S52单片机音乐播放器控制分析

[摘 要]音乐对于改善人们生活质量具有重要影响,随着科学技术的快速发展,音乐播放器的种类越来越多,所具有的功能也越来越完善。但是从整体上来看,所存在的音乐播放器也存在一定的缺陷,例如目前最为流行的MP3、MP4虽然具有比较好的音质,但是在功能上只能满足歌曲选择、歌名显示以及歌词显示等,不部分播放器不具备随意弹奏乐曲、乐曲节奏跳动显示等功能。本文基于AT89S52单片机音乐播放器进行了研究分析。

[关键词]AT89S52单片机;音乐播放器;汇编语言

中图分类号:G623.71 文献标识码:A 文章编号:1009-914X(2015)05-0035-01

音乐播放器对音乐播放最简单的方法即利用专用音乐芯片,但是选择此种方式处理音乐芯片智能进行一次性烧录,这样就不可以改变播放内容。针对此种情况可以选择用单片机播放音乐,可以有效改善这一问题。基于AT89S52单片机音乐播放器,需要在原有基础上进行研究,并做好对整个制作过程的控制,使得音乐播放器的功能更加完善,真正实现多功能音乐播放器。

一、系统结构图设计与功能实现

1.系统结构设计

音乐播放器系统的设计主要以AT89S52单片机为中心,系统环节主要包括时钟电路、键盘电路、复位电路以及发生电路等,在进行研究设计时,应从硬件设计与软件设计两个方面来进行[1]。其中,键盘主要用来接收输入指令,而显示电路则利用LED数码管显示当前所播放歌曲序号,最后发生电路则是利用蜂鸣器来完成曲目的播放。

2.功能实现原理

利用AT89S52单片机为核心,结合其所具有的定时器终端作用,在单片机内部生成所需要的音乐频率,并通过锁存器来将电流放大,最后通过蜂鸣器来完成歌曲的播放。选择此种形式来进行音乐的播放,与传统音乐播放器不同,其可以先设置3首歌曲进行循环播放,然后通过键盘按键来选择不同曲目的播放,并且在任何一曲目播放过程中,都可以随时选择暂停或者继续播放处理。并且利用AT89S52单片机完成音乐播放,还可以通过LED数码管实现当前播放音乐的序号。

二、音乐播放器软件系统设计

1.音乐播放原理

一般情况下音乐的频谱范围为几时到几千赫兹,在进行软件系统设计时,需要利用程序控制单片机I/O口来输出不同频率矩形波,当改矩形波处于声音频谱范围时,就会通过单片机I/O口与喇叭连接发出声音[2]。然后通过延时程序来对矩形波高、低电平持续时间进行控制,改变矩形波频率来产生不同的音调,最后让矩形波输出长短与节拍对应,最终十点单片机对音乐的演奏。

2.节拍与音调编码

利用单片机来实现音乐播放器的设计,需要重点研究音调与节拍两个要素,即音调为音符唱多高的频率,而节拍则是每个音符唱所需要的时间。对于一首曲目来说,每个音调对应的频率是已知的,这样在播放音乐时,就需要对曲目中存在的音调进行想用的编码,并确定单片机播放所有音调时所对应的定时初值。例如对“低6”定时初值进行计算,可以确定其频率f为440Hz,所对应的周期为T=1/f=1/440=272μs,则可以确定单片机蜂鸣器I/O口来回取反时间为t=T/2=2272/2=1136μs[3]。在单片机播放器奏乐时,将其定时器工作方式取值为1,选择以震荡器十二分频信号为计数脉冲,并确定单片机晶振为12MHz,则1μs计数一次,最终可以确定“低6”定时器初值为216-1136=64400。

而对于节拍的处理则需要利用延时程序来实现,例如1拍所需时间为400ms,则1/2拍所需时间为200ms,1/4拍所需要的时间为100ms。在此基础上可以确定基本时长的延时程序,可以选择100ms为基本延时时间,则1/4拍就可以调用一次延时程序,而1/2拍则需要调用两次延时程序,1拍则需要调用四次延时程序。

3.编程

在完成对节拍与音调的编码后,则可以将一首曲目以若干个8位简码来进行表示,以“生日快乐歌”为例,并以音调编码与定时器初值表为依据,确定其第一个简码为“82H”,则可以确定其高四位“8”表示音调“中5”对应的频率为784Hz、定时器初值为64898[4]。另外,低四位“2”表示节拍为“2/4拍”。由此可见可以通过乐谱获取任何一首曲目的简码,然后就可以完成编程。

三、音乐播放器硬件系统设计

1.系统电路设计

1.1 主控电路

基于AT89S52单片机来完成音乐播放器的设计,其具有性能好、功耗低CMOS8位微控制器,并且具有8K在系统可编程Flash存储器,自身抗干扰能力更强。在音乐播放器中的应用,其所具有的主要作用就是完成对键盘的中断处理,实现对播放曲目的选歌、播放、暂停等功能,并显示所播放曲目的序号。

1.2 复位电路

单片机复位主要通过其外部复位电路来实现,复位作为单片机的初始化操作,其作用是保证系统每个部件都可以处于一个确定的初始状态,并且在此状态下开始工作。为了保证复位过程的顺利完成,需要在单片机复位引脚上输入高电平,并且要将其保持在两个机器周期以上。其中,在复位引脚处于持续高电平位置时,就会使得单片机一直保持循环复位状态。

2.控制模块设计

现在比较常用的单片机主要有51与AVR单片机,在进行设计时,应从功能与成本等方面着手,由此可以选择用51单片机。AT89S52具有2个将外部中断、2个可编程串行UART以及2个16位定时器单片机,在使用上具有比较高的效果。其中,选择应用AT89S52单片机其中心控制模块完全可以满足设计要求,实现对整个系统的控制。

3.播放模块设计

对于音乐播放器播放模块的设计,确定其主要由电磁蜂鸣器与8550NPN三极管组成,其中AT89S52输出高电平控制信号,通过启动三极管来放大信号,实现电磁蜂鸣器的启动。选择此种方式进行设计存在一定的缺点,即将其与喇叭与LM386组合相比较,曲目播放过程中存在一定噪音,音效与音质比较差。但是其具有驱动动率小特点,对驱动器件的要求比较低,与其他设计方式相比可以有效降低设计成本。

4.显示模块设计

传统的基于单片机设计的音乐播放器并不能显示歌曲信息,在此基础上可以添加显示器装置,为使用者提供曲目相关信息。一般情况下显示器会选择用LED数码管,但是其只能显示数字,并不能完全显示各项中英文字符。基于此就可以选择用LCD-1602显示模块进行设计,可以满足歌曲信息显示的要求,并且在设计成本上更为合理。另外,LCD-1602显示模块驱动电路相对简单,可以通过单片机直接输出命令驱动。

结束语

为更好的提升音乐播放器功能,可以选择利用AT89S52单片机来进行设计,从软件与硬件系统着手,做好每一个环节与部件的设计,争取在原有基础上不断提高音乐播放器功能需求,为人们提供更好的音乐体验。

参考文献

[1] 王亭亭,葛熠,李峰.基于AT89S52单片机的音乐播放器[J].科技信息,2012,25:96-97.

[2] 黄振杰,卢小冰.基于AT89S52单片机的多功能音乐播放器[J].电子设计工程,2009,02:17-18+21.

[3] 王方华,周永宏,赵雪娇,马玉林.基于AT89S52单片机的室内音乐喷泉设计[J].科技资讯,2010,29:13-15.

[4] 王栋,靳鸿.基于AT89S52单片机控制检测系统设计[J].电子设计工程,2013,04:88-90.

上一篇:ATM系统的设计与分析 下一篇:服装博客网的分析与设计