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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

音乐播放器设计报告.docx

1、音乐播放器设计报告信息与电气工程学院课程设计说明书(2011/2012学年第 二学期)课程名称 : 单片机应用 题 目 : 可选音乐播放器 专业班级 : 学生姓名 : 学 号: 指导教师 : 设计周数 : 两周 设计成绩 : 2012年6月22日 目录1、 课程设计目的与要求-12、 总体设计-13、 硬件部分设计方案-1 3.1硬件电路总体方案设计-1 3.2单片机简介-1 3.3数码管显示电路-3 3.4蜂鸣器发声电路-3 3.5按钮电路-4 3.6发光二极管电路-4 3.7时钟振荡电路-5 3.8复位电路-5 3.9总电路图-64、软件部分设计方案 -6 4.1音乐发生器流程及思路-6

2、4.2主程序设计-105、软件和硬件调试-20 5.1硬件调试-20 5.2软件调试-216、材料清单-217、课设总结-228、参考文献-239 附录-24 可选音乐播放器1、 课程设计目的与要求(1)利用I/O口产生一定频率的方波,驱动蜂鸣器,发出不同的音调,从而演乐曲(内存3首乐曲)。(2)采用七段数码管和发光二极管来显示当前播放的歌曲序号,播放乐曲时,数码管显示当前歌曲序号同时对应二极管点亮。(3)可通过功能键来进行乐曲切换,按下键时从当前歌曲切换到下一首歌曲,且可实现歌曲自动循环。2、总体设计(1)硬件部分由数码管、发光二极管、蜂鸣器、单片机、按钮组成,来实现歌曲的播放和歌曲序号的显

3、示,按钮用来实现对下一首歌曲的切换,每按一次按钮播放器切换到下一首歌曲。(2)软件用来对单片机的各引脚进行控制进而控制数码管的显示数目,同时在蜂鸣器的输出端口产生不同频率的矩形波进而产生音乐,当按钮按下时程序要完成对歌曲的切换,对数码管和发光二极管的切换。3、硬件部分设计方案3.1 硬件电路总体方案设计硬件电路由数码管分显示电路、蜂鸣器发声电路、按钮电路、发光二极管显示电路、时钟振荡电路、单片机组成。显示电路用来对当前播放歌曲序号进行显示,蜂鸣器发生电路用来进行音乐的产生,按钮电路用来进行当前歌曲到下一首的切换,三个发光二极管分别对应三首歌曲,播放歌曲时与其对应发光二极管点亮,另外两个发光二极

4、管不亮。时钟振荡电路用来为单片机产生时钟脉冲,本设计采用内部时钟方式。 3.2 单片机简介 AT89C51按功能划分有如下功能部件组成:(1)微处理器CPU :AT89C51单片机中有1个8位的CPU,与通用的CPU基本相同,同样包含了运算器和控制器两大部分,只是增加了面向控制的处理功能,不仅可以处理字节数据,还可以进行为变量的处理。(2)数据存储器RAM:片内位128B,片外最多可外扩64KB.数据存储器来存储单片机运行期间的工作变量、运算的中间结果、数据暂存和缓冲、标志位等。片内的128B的RAM,以高速RAM的形式集成在单片机内,可以加快单片机的运行速度,降低功耗。 单片机引脚图 (3)

5、程序存储器ROM/EPROM:为4KB的ROM,片外可扩展只读存储器,最多扩至64KB(4)4个8位并行I/O口,P0,P1,P2,P3:位4个并行8位I/O口(5)1个串行口:1个双全工的串行口,具有四种工作方式(6)2个16位定时器/计数器:具有4钟工作方式(7)中断系统:具有5个中断源,2个中断优先级(8)特殊功能功能寄存器SFR.:共有21个,用于CPU对片内各功能部件进行管理、控制、监视。实际上是一些控制寄存器和状态寄存器,是一个具有特殊功能的RAM区AT89C51的引脚说明和功能说明如下:XTAL1 :接外部晶振的一个引脚。在单片机内部,它是一反相放大器输入端,这个放大器构成了片内

6、振荡器。它采用外部振荡器时,此引脚应接地。 XTAL2 :接外部晶振的一个引脚。在片内接至振荡器的反相放大器输出端和内部时钟发生器输入端。当采用外部振荡器时,则此引脚接外部振荡信号的输入。 RST :AT89C51的复位信号输入引脚,高电位工作,当要对芯片又时,只要将此引脚电位提升到高电位,并持续两个机器周期以上的时间,AT89C51便能完成系统复位的各项工作,使得内部特殊功能寄存器的内容均被设成已知状态。 P0口(P0.0P0.7)是一个8位漏极开路双向输入输出端口,当访问外部数据时,它是地址总线(低8位)和数据总线复用。外部不扩展而单片应用时,则作一般双向IO口用。P0口每一个引脚可以推动

7、8个LSTTL负载。 P2口(P2.0P2.7)口是具有内部提升电路的双向I/0端口(准双向并行I/O口),当访问外部程序存储器时,它是高8位地址。外部不扩展而单片应用时,则作一般双向IO口用。每一个引脚可以推动4个LSTTL负载。 P1口(P1.0P1.7)口是具有内部提升电路的双向I/0端口(准双向并行I/O口),其输出可以推动4个LSTTL负载。仅供用户作为输入输出用的端口。 P3口(P3.0P3.7)口是具有内部提升电路的双向I/0端口(准双向并行I/O口),它还提供特殊功能,包括串行通信、外部中断控制、计时计数控制及外部随机存储器内容的读取或写入控制等功能。3.3数码管显示电路 数码

8、管选用七段显示数码管LED,接单片机的P0端口,用单片机的P0端口来控制七段数码管(用P0.0-P0.6控制七段码a,b,c,d,e,f),通过对P0端口赋不同的值来改变P0端口输出的电平进而来改变数码管显示的数值。因为P0端口为三态门,作为输出端口时须外接上拉电阻。数码管显示电路如图所示:3.4蜂鸣器发声电路蜂鸣器发声电路由蜂鸣器、三极管(PNP)组成。蜂鸣器接单片机的P10端口,因单片机复位时各输出端口均为高电平,为防止单片机一上电复位蜂鸣器就响用低电平来驱动蜂鸣器,三极管选用PNP型配合P10端口来对电流进行放大,三极管与P10端口共同完成对蜂鸣器的驱动。蜂鸣器发生电路图如图2-3所示3

9、.5按钮电路按钮电路由按钮、上拉电阻组成。按钮接P32端口,未按下按钮时P32端口为高电平,当按钮按下时在P32端口产生一个低电平输入单片机,来产生切换到下一曲的信号,进而通过软件来完成歌曲的切换。按钮电路如图所示。3.6发光二极管电路发光二极管电路由限流电阻和发光二极管组成,三个二极管分别接P20、P21和P22三个端口。三个发光二极管分别对应三首歌曲,当有歌曲播放时与其对应的发光二极管点亮,另外两个发光二极管不亮。通过改变P2口的输出来使二极管状态改变,二极管采用低电平驱动,防止复位时二极管全亮。发光二极管电路如图所示3.7时钟振荡电路时钟振荡电路由晶振(6MHZ)和电容组成,接单片机的X

10、TAL1和XTAL2引脚。时钟振荡电路用来为单片机产生时钟脉冲,为内部时钟方式。时钟振荡电路图如图所示。3.8 复位电路复位电路由电解电容、电阻和按钮组成。复位分为上电复位和手动复位,上电复位在单片机一上电时对单片及进行复位,手动复位通过外部按钮来对单片机进行复位。两种复位方式的结果一样。复位电路的电路图如图所示。3.9 总电路图由上述的数码管分显示电路、蜂鸣器发声电路、按钮电路、发光二极管显示电路、时钟振荡电路和单片机组成总电路图。总电路图配合软件程序可实现音乐播放器的功能,总电路图和PCB版图如附一、附二所示。4、 软件部分设计方案4.1音乐发生器设计流程及思路4.1.1音乐基础在进行设计

11、前,首先要对音乐知识有基本的理解,其次要明白单片机产生音乐脉冲的原理,最后完成硬件原理图和相关程序的设计。音作为一种物理现象,是由于物体振动而产生的,振动产生的声波作用于人耳,听觉系统将神经冲动传达给大脑,进而产生听觉。人耳能听到的声音频率大约在1120000Hz,而音乐中使用的音一般在274100Hz。乐音体系中各音级的名称叫做音名,被广泛采用的是C D E F G A B(do re mi fa so la si则多用于歌唱,称为唱名)。乐音体系中音高关系的最小尽量单位叫做半音,两个半音构成一个全音。乐音中有几十个高低不同的音,但是最基本的只有这七个音,其他高、低音的音名都是在这个基础上变

12、化出来的。在乐谱表上用来表示正在进行的音的长短的符号,叫做音符。不同的音符代表不同的长度。音符有一下几种:全音符、二分音符、四分音符、八分音符、十六分音符、三十二分音符、六十四分音符。此外,还有一种附点音符,它就是指带附点的音符,所谓附点就是记载音符右边的小圆点,表示增加前面音符时值的一半。音持续的长短即时值,一般用拍数表示,休止符表示暂停发音。音符与节拍数之间的对应关系如表2.1所示。表2.1 音符与节拍数之间的对应关系表音符节拍数音符节拍数x-(全音符)4拍x(附点八分音符)3/4拍x-(二分音符)2拍x(附点十六分音符)3/8拍X(四分音符)1拍000(三分休止符)休止3拍X(八分音符)

13、1/2拍00(二分休止符)休止2拍X(十六分音符)1/4拍0(四分休止符)休止1拍x(附点四分音符)1.5拍 0(八分休止符)休止1/2拍一首音乐及时由许多不同的音符组成的,而每一个音符对应着不同的频率,这样就可以利用不同的频率的组合,加以拍数对应的延时来构成不同的音乐。4.1.2音频脉冲的产生音乐的产生需要不同频率的音频脉冲,对于单片机而言,可以利用它的定时/计数器产生这样的方波频率信号。具体地说,只要知道某一音频的频率,求得它的周期,然后将次周期除以2,得到半周期的时间,利用定时/计数器计时这半个周期,计时到后就将输出脉冲的I/O反相。就可以在I/O端口上得到此脉冲。单片机工作在12MHz

14、时钟频率下,其时钟周期为1us,因此可以利用STC90C52AD的内部定时/计数器T0,使其工作模式为1,工作在计数器状态下,改变计数初值TH0和TL0以产生不同频率的脉冲信号。T的值决定了计数初值TH0和TL0的值,TH0=T/256,TL0=T%256。(1.1)计数值公式如下: 式中,:单片机内部时钟周期为1us,所以其频率为1MHz。:产生音符所需的频率。通过上式计算,可以求得各个音符频率的计数值T。C调各音符频率与计数值T的对照如表2.2所示。表2.2 C调各音符频率与计数值T的对照值音符频率/Hz简谱码(T)音符频率/Hz简谱码(T)低1DO26263628#4FA#7406486

15、0#1DO#27763731中5SO74864898低2RE29463835#5SO#83164934#2RE#31163928中6LA88064968低3M33064021#6LA#93264994低4FA34964103中7SI98865030#4FA#37064185高1DO104665058低5SO39264260#DO#110965085#5SO#41564331高2RE117565110低6LA44064400#2RE#124565134#6LA#46664463高3M131865157低7SI49464524高4FA139765178中1DO52364580#4FA#148065

16、198#1DO#55464633高5SO156865217中2RE57864684#5SO#166165235#2RE#62264732高6LA176065252中3M65964777#6LA#186565268中4FA69864820高7SI1967652834.1.3音乐节拍的产生节拍是指音乐持续的长短,是除音符之外音乐的另一关键组成部分,在单片机系统中可以通过延时来实现。如果1/4拍的延时设为0.2s,则1拍的时间为0.8s。以此类推,可以求出其余节拍的值,节拍的延时时间值与音乐的曲调值有相对应的关系,表2.3所示为不同曲调下的1/4和1/8节拍的时间设定。如果单片机要实现自己播放音乐,

17、那么必须在程序设计中考虑到节拍的设置,在89C51中,可以用一个直接存储一个音符,其中低4位是节拍码。节拍数和节拍码的对照表如表2.4所示。表2.3 各调节拍的时间设定曲调值(1/8节拍)DELAY曲调值(1/4节拍)DELAY调4/462ms调4/4125ms调3/494ms调3/4185ms调2/4125ms调2/4250ms 表2.4 节拍数与节拍码的对照节拍码节拍数节拍码节拍数11/4拍11/8拍22/4拍21/4拍33/4拍33/8拍41拍41/2拍51.25拍55/8拍61.5拍63/4拍82拍81拍A2.25拍A1.25拍C3拍C1.5拍F3.75拍4.1.4音频功放音乐的播放最

18、后是通过扬声器完成的,但是直接用单片机产生的音频脉冲不足以直接驱动扬声器来完成音乐的播放,因此这就要求在单片机端口与扬声器之间链接功率放大电路,以实现最终的目的。评定功率放大电路有3个重要的指标,即输出功率、效率、非线性失真。输出功率P0:功率放大器应在输出不失真的情况下给出最大的交流输出功率P0以推动负载工作,维持,功放元件一般工作在大信号状态,这就使功放元件的安全工作成为功率放大器的重要问题。效率:功率放大器的效率定义为功率放大器的输出信号功率P0和直流电源供给功率放大器功率PE之比,用表示。功率放大器要求高效率地工作,一方面是为了提高输出功率,另一方面是为了降低管耗。直流电源供给的功率除

19、了一部分变成有用的信号功率以外,剩余部分编程晶体管的管耗。管耗过大将使功率管发热损坏。所以,最与功率放大器,提高效率也是一个重要问题。非线性失真:功率放大器为了获得足够大的输出功率,需要大信号激励,从而使信号动态范围往往超出晶体管的线性区域,导致输出信号失真。因此减小非线性失真,成为功率放大器的又一个重要问题。总的来说,要求功率放大器在保证系统安全运用的情况下,获得尽可能大的输出功率、尽可能高的效率和尽可能小的非线性失真。4.2 主程序设计#include#include SoundPlay.hsbit K1 = P30; /下一曲sbit K2 = P31; /播放sbit K3 = P32

20、; / 暂停sbit D1 = P20;sbit D2 = P21;sbit D3 = P22;/unsigned char ii=1;unsigned char n , flag1= 0,flag4=0 , aa=0;unsigned char table = 0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x06;void delay1s(unsigned int z) unsigned int x,y; for(x=z;x0;x-) for(y=110;y0;y-); /挥着翅膀的女孩unsigned char code Music_Girl=

21、 0x17,0x02, 0x17,0x03, 0x18,0x03, 0x19,0x02, 0x15,0x03,0x16,0x03,0x17,0x03,0x17,0x03,0x17,0x03,0x18,0x03,0x19,0x02,0x16,0x03, 0x17,0x03,0x18,0x02,0x18,0x03,0x17,0x03,0x15,0x02,0x18,0x03,0x17,0x03,0x18,0x02,0x10,0x03,0x15,0x03,0x16,0x02,0x15,0x03,0x16,0x03,0x17,0x02,0x17,0x03,0x18,0x03, 0x19,0x02,0x1

22、A,0x03,0x1B,0x03,0x1F,0x03,0x1F,0x03,0x17,0x03,0x18,0x03,0x19,0x02, 0x16,0x03,0x17,0x03,0x18,0x03,0x17,0x03,0x18,0x03,0x1F,0x03,0x1F,0x02,0x16,0x03, 0x17,0x03,0x18,0x03,0x17,0x03,0x18,0x03,0x20,0x03,0x20,0x02,0x1F,0x03,0x1B,0x03, 0x1F,0x66,0x20,0x03,0x21,0x03,0x20,0x03,0x1F,0x03,0x1B,0x03,0x1F,0x66,

23、0x1F,0x03, 0x1B,0x03,0x19,0x03,0x19,0x03,0x15,0x03,0x1A,0x66,0x1A,0x03,0x19,0x03,0x15,0x03, 0x15,0x03,0x17,0x03,0x16,0x66,0x17,0x04,0x18,0x04,0x18,0x03,0x19,0x03,0x1F,0x03, 0x1B,0x03,0x1F,0x66,0x20,0x03,0x21,0x03,0x20,0x03,0x1F,0x03,0x1B,0x03,0x1F,0x66, 0x1F,0x03,0x1B,0x03,0x19,0x03,0x19,0x03,0x15,0

24、x03,0x1A,0x66,0x1A,0x03,0x19,0x03, 0x19,0x03,0x1F,0x03,0x1B,0x03,0x1F,0x00,0x1A,0x03,0x1A,0x03,0x1A,0x03,0x1B,0x03, 0x1B,0x03,0x1A,0x03,0x19,0x03,0x19,0x02,0x17,0x03,0x15,0x17,0x15,0x03,0x16,0x03, 0x17,0x03,0x18,0x03,0x17,0x04,0x18,0x0E,0x18,0x03,0x17,0x04,0x18,0x0E,0x18,0x66, 0x17,0x03,0x18,0x03,0x

25、17,0x03,0x18,0x03,0x20,0x03,0x20,0x02,0x1F,0x03,0x1B,0x03, 0x1F,0x66, 0x20,0x03, 0x21,0x03, 0x20,0x03, 0x1F,0x03, 0x1B,0x03, 0x1F,0x66, 0x1F,0x04, 0x1B,0x0E, 0x1B,0x03, 0x19,0x03, 0x19,0x03, 0x15,0x03, 0x1A,0x66, 0x1A,0x03, 0x19,0x03, 0x15,0x03, 0x15,0x03, 0x17,0x03, 0x16,0x66, 0x17,0x04,0x18,0x04,

26、0x18,0x03, 0x19,0x03, 0x1F,0x03, 0x1B,0x03,0x1F,0x66, 0x20,0x03, 0x21,0x03, 0x20,0x03, 0x1F,0x03, 0x1B,0x03, 0x1F,0x66, 0x1F,0x03, 0x1B,0x03, 0x19,0x03, 0x19,0x03, 0x15,0x03, 0x1A,0x66, 0x1A,0x03, 0x19,0x03,0x19,0x03, 0x1F,0x03, 0x1B,0x03, 0x1F,0x00, 0x18,0x02, 0x18,0x03, 0x1A,0x03, 0x19,0x0D, 0x15,

27、0x03, 0x15,0x02, 0x18,0x66, 0x16,0x02, 0x17,0x02, 0x15,0x00, 0x00,0x00;/同一首歌unsigned char code Music_Same= 0x0F,0x01, 0x15,0x02, 0x16,0x02, 0x17,0x66, 0x18,0x03, 0x17,0x02, 0x15,0x02, 0x16,0x01, 0x15,0x02, 0x10,0x02, 0x15,0x00, 0x0F,0x01, 0x15,0x02, 0x16,0x02, 0x17,0x02, 0x17,0x03, 0x18,0x03, 0x19,0x02, 0x15,0x02, 0x18,0x66, 0x17,0x03, 0x19,0x02, 0x16,0x03, 0x17,0x03, 0x1

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

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