ImageVerifierCode 换一换
格式:DOCX , 页数:26 ,大小:288.49KB ,
资源ID:13444858      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/13444858.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于单片机的简易音乐播放器的设计Word下载.docx)为本站会员(b****0)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于单片机的简易音乐播放器的设计Word下载.docx

1、本设计是一个基于AT89C52系列单片机的音乐播放器,依据单片机技术原理,通过硬件电路设计以及软件编译,设计出一个多功能音乐播放器。该音乐播放器主要由按键电路、晶振电路、复位电路以及扬声器组成。最后利用proteus对音乐播放器进行仿真调试。1.2 原理说明当按键按下时,判断键值,启动计数器T0,产生一定频率的脉冲,驱动蜂鸣器,放出乐曲。其中:1) 硬件电路中用P2.0-P2.3控制4个按键,K1-K3分别控制三首音乐,K4为停止键;2)P1.0-P1.3为LED显示,四个发光二极管分别对应四个按键,显示所播放歌曲;3)用P3.7口控制蜂鸣器; 4)电路为12MHz晶振频率工作,起振电路中C1

2、,C2均为22pf。二、硬件电路设计 2.1 系统方案设计硬件方框图如图2-1所示。主要由单片机核心芯片AT89C52,LED发光二极管,蜂鸣器,晶振电路,复位电路组成,由引脚输出定时器产生的各种固定频率的方波信号,然后由蜂鸣器产生各种频率的声音。由于该方案中使用内部振荡电路,XTAL1、XTAL2引脚外接石英晶体和微调电容构成晶振电路。 图2-1 设计方框图2.2 模块电路的设计 2.2.1 AT89C52型单片机的介绍AT89C52是美国Atmel公司生产的低功耗、高性能CMOS 8位单片机,其管脚图如图2-2所示。片内含8KB的可反复檫写的程序存储器和256B的随机存取数据存储器(RAM

3、),器件采用Atmel公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内配置通用8位中央处理器(CPU)和Flash存储单元,功能强大的AT89C52单片机可灵活应用于各种控制领域。图2-2 AT89C52引脚图主要性能参数如下:1)与MCS-51产品指令和引脚完全兼容;2)8K字节可重擦写Flash闪速存储器;3)1000次擦写周期;4)全静态操作:0HZ-24HZ;5)三级加密程序存储器;6)256*8字节内部RAM;7)32个可编程I/O口线;8)3个16位定时/计数器;9)8个中断源;10)可编程串行UART通道;11)低功耗空间和掉电模式。各引脚功能如下:1.时钟

4、引脚XTAL1:接外部晶体的一个引脚。在单片机内部,它是构成片内振荡器的反相放大器的输入端。当采用外部振荡器时,该引脚接收振荡器的信号,即把此信号直接接到内部时钟发声器的输入端。XTAL2:接外部晶体的另一个引脚。在单片机内部,它是构成内部振荡器的反相放大器的输出端。当采用外部振荡器时,此引脚应悬浮不连接。注意:如果采用片内的振荡电路,要在单片机的引脚XTAL1和XTAL2之间连接一个石英晶体或陶瓷谐振器,并接两个电容到地。2.控制线或其他电源的复位引脚RST:复位输入端。ALE/:当访问外部寄存器时,地址锁存允许的输出电平用于锁存地址的低位字节。外部程序存储器的选通信号。在有外部程序存储器取

5、指令期间,每个机器周期两次有效。但在访问外部数据存储器时,这两次有效的信号将不出现。/Vpp:当保持低电平时,则在此期间访问外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意要加密方式1时,将内部锁定为RESET;断保持高电平时,此间访问内部程序存储器。在Flash编程期间,此管脚也用于施加12V编程电源(Vpp)。3. 输入/输出引脚P0口:P0口为一个8位漏极开路双向I/O口,每脚可吸收8个TTL门电流。当P1口的管脚第一次写“1”时,被定义为高阻输入。P0口能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在Flash编程时,P0口作为原码输入口,当Fl

6、ash进行校验时,P0口输出原码,此时,P0口外部必须被拉高。P1口:P1口为一个内部提供上拉电阻的8位双向I/O,P1口缓冲器能接收输出4个TTL门电流。P1口管脚写入“1”后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在Flash编程和校验时,P1口为第八位地址接收。P2口:P2口为一个内部提供上拉电阻的8位双向I/O,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高。且作为输入。并因此作为输入时,P2口的管脚被外部拉底,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数

7、据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部8位地址数据校验时,P2口输出其特殊功能起存器的内容。P2口在Flash编程和校验时,接收高8位地址信号和控制信号。P3口:P3口为一个内部提供上拉电阻的8位双向I/O,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为一些特殊功能口,如表2-1所示。表2-1 P3口特殊功能口管脚备选功能P3.0RXD串行输入口P3.1TXD串行输出口P3.2外部中断0P3.3外部中断1P3.

8、4T0计时器0外部输入P3.5T1计时器1外部输入P3.6外部数据存储器写选通P3.7外部数据存储器读选通2.2.2单片机最小系统的设计单片机的最小系统设计包括:时钟电路、复位电路,如图2-3所示。在内部方式时钟电路中,必须在XTAL1和XTAL2引脚两端跨接石英晶体振荡器和两个微调电容构成振荡电路,通常C1和C2一般取30pF,晶振的频率取值在1.2MHz12MHz之间。复位电路就好比电脑的重启部分,当电脑在使用中出现死机,按下重启按钮电脑内部的程序从头开始执行。其中,电容的大小是10uF,电阻的大小是10k。图2-3 单片机最小系统2.2.3蜂鸣器电路设计 蜂鸣器发声原理是电流通过电磁线圈

9、,使电磁线圈产生磁场来驱动振动膜发声的,因此需要一定的电流才能驱动它,单片机IO引脚输出的电流较小,单片机输出的TTL电平基本上驱动不了蜂鸣器,因此需要增加一个功率放大的电路。由单片机P3.7 接口外接一个1K电阻和两个NPN型三极管来驱动蜂鸣器。其主要任务是输出大信号和大功率,对音频信号有效不失真的进行放大以推动扬声器发出声音,原理图如图2-4所示。图2-4 蜂鸣器电路2.2.4按键电路设计采用4个按钮来实现选择歌曲播放,由P2.0-P2.3控制,外接四个10K的上拉电阻,并通过三个与门接P3.2实现外部中断。原理图如图2-5所示。图2-5 按键电路2.2.5 LED显示电路设计四个发光二极

10、管分别由P1.0-P1.3控制,播放第一首歌时D1亮,第二、第三首歌时D2、D3亮,停止时D4亮,其中电阻为220。原理图如图2-6所示。图2-6 LED显示电路三、软件设计3.1系统主模块流程图主模块是系统软件的主框架。结构化程序设计一般有“自上而下”和“自下而上”两种方式,“自上而下”法的核心就是主框架的构建。它的合理与否关系到程序最终的功能的多少和性能的好坏。本系统的主模块程序框图如图3-1所示。开始系统初始化,判断是否有键按下,当K1键按下时,播放第一首歌,K4键按下停止播放,并返回到系统初始化,再判断是否有键按下。K2、K3键也分别控制两首歌的播放。图3-1 系统主模块流程图3.2音

11、乐产生原理单片机发音原理:单片机演奏音乐基本是单音频率,它不包含相应幅度的谐波频率,也就是说不能象电子琴那样能奏出多种音色的声音,但一定要弄清楚两个概念即可,也就是“音调”和“节拍” 。音调:表示一个音符唱多高的频率。节拍:表示一个音符唱多长的时间。3.2.1音调在音乐中所谓“音调”,其实就是我们常说的“音高”。在音乐中常把中央C上方的A音定为标准音高,其频率f=440Hz,其余与其比较。f1和f2为两个音符,当这两个音符的频率相差一倍时,也即f2=2f1时,则称f2比f1高一个倍频程。在音乐中1与,2与,正好相差一个倍频程,在音乐学中称它相差一个八度音。在一个八度音内,有12个半音。以1i八

12、音区为例,12个半音是:11、12、22、23、34、44,45、5一5、56、66、67、7i 。这12个音阶的分度基本上是以对数关系来划分的。如果我们只要知道了这十二个音符的音高,也就是其基本音调的频率,我们就可根据倍频程的关系得到其他音符基本音调的频率。确定一个频率所对应的定时器的定时初值的方法:以标准音高A为例:标准音高A的频率f = 440 Hz,其对应的周期为: T = 1/ f = 1/440 =2272s。因此,需要在单片机I/O端口输出周期为T =2272s的方波脉冲,如图3-2所示。图3-2 方波脉冲由上图可知,单片机上对应蜂鸣器的I/O口来回取反的时间应为:t = T/2

13、 = 2272/2 = 1136s这个时间t也就是单片机上定时器应有的中断触发时间。一般情况下,单片机奏乐时,其定时器为工作方式1,它以振荡器的十二分频信号为计数脉冲。设振荡器频率为f0,则定时器的予置初值由下式来确定:t = 12 *(TALL THL)/ f0式中TALL = 216 = 65536,THL为定时器待确定的计数初值。因此定时器的高低计数器的初值为:TH = THL / 256 = ( TALL t* f0/12) / 256TL = THL % 256 = ( TALL t* f0/12) %256将t=1136s代入上面两式(注意:计算时应将时间和频率的单位换算一致),即

14、可求出标准音高A在单片机晶振频率f0=12Mhz,定时器在工作方式1下的定时器高低计数器的予置初值为 : TH440Hz = (65536 1136 * 12/12) /256 = FBH TL440Hz = (65536 1136 * 12/12)%256 = 90H根据上面的求解方法,我们就可求出其他音调相应的计数器的予置初值。3.2.2 节拍音符的节拍我们可以举例来说明。在一张乐谱中,我们经常会看到这样的表达式,如1=C 、1=G 等等,这里1=C,1=G表示乐谱的曲调,和我们前面所谈的音调有很大的关联,、就是用来表示节拍的。以为例加以说明,它表示乐谱中以四分音符为节拍,每一小结有三拍。如图3-

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1