工业大学单片机课程设计基于51单片机的音乐播放器Word下载.docx

上传人:b****4 文档编号:16639783 上传时间:2022-11-25 格式:DOCX 页数:22 大小:519.38KB
下载 相关 举报
工业大学单片机课程设计基于51单片机的音乐播放器Word下载.docx_第1页
第1页 / 共22页
工业大学单片机课程设计基于51单片机的音乐播放器Word下载.docx_第2页
第2页 / 共22页
工业大学单片机课程设计基于51单片机的音乐播放器Word下载.docx_第3页
第3页 / 共22页
工业大学单片机课程设计基于51单片机的音乐播放器Word下载.docx_第4页
第4页 / 共22页
工业大学单片机课程设计基于51单片机的音乐播放器Word下载.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

工业大学单片机课程设计基于51单片机的音乐播放器Word下载.docx

《工业大学单片机课程设计基于51单片机的音乐播放器Word下载.docx》由会员分享,可在线阅读,更多相关《工业大学单片机课程设计基于51单片机的音乐播放器Word下载.docx(22页珍藏版)》请在冰豆网上搜索。

工业大学单片机课程设计基于51单片机的音乐播放器Word下载.docx

2014年12月15日至2014年12月26日

学生姓名

班级

学号

成绩

指导教师(签字)

电气与信息工程学院(部)

2014年12月26日

湖南工业大学

本科课程设计开题报告

学院(部):

电气与信息工程学院

专业:

自动化

学生姓名:

班级:

学号:

指导教师姓名:

职称

2014年12月17日

题目:

1.结合课题任务情况,查阅文献资料,撰写文献综述

音乐是反映人类现实生活情感的一种艺术,东方以中国为首的中国古代理论基础是五声音阶,即宫、商、角、徵、羽.自古以来,高山流水,亦或是阳春白雪、下里巴人,音乐总是以其律动的形式,陶冶人们的情操,增添生活的乐趣。

在所有的艺术形式中,音乐是最擅长于抒发情感、最能拨动人心弦的艺术形式,它借助声音这个媒介来真实地传达、表现和感受审美情感。

利用单片机演奏音乐大概是单片机爱好者感兴趣的问题之一。

利用单片机控制音乐播放比较常见,音乐芯片也相当之多,而利用单片机存储音乐,控制播放,也正是本设计的初衷,单片机控制灵活通用,模块化,易学易用,单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,将单片机与音乐播放结合,是具有可行性的。

通过控制单片机定时器的定时时间产生不同频率的音频脉冲,经放大后驱动蜂鸣器发出不同音节的声音,即声调。

用软件延时来控制发音时间的长短,控制节拍。

把乐谱中的音符和相应的节拍变换为定时常数和延时常数,作为数据表格存放在存储器中,由程序查表得到定时常数和延时常数,分别用来控制定时器产生的脉冲频率和发出该音频脉冲的持续时间。

音乐播放器是利用单片机产生乐曲音符,再把乐曲音符翻译成计算机语言,利用单片机进行信息处理,再通过蜂鸣器放出音乐。

音乐的产生主要是通过单片机的I/O口输入不同的脉冲信号来控制蜂鸣器发音。

要想产生音频脉冲信号,需要算出某一音频的周期(1/频率),然后将此周期除以二,即为半周期的时间。

利用单片机定时器计时这个半个周期的时间,每当计时到后就将输出脉冲的I/O口反相,然后重复计时此半周期的时间再对I/O口反相,这样就能在此I/O口上得到此频率的脉冲。

通常,利用单片机的内部定时器0,工作在方式一下,改变计数初值TH0和TL0来产生不同频率。

对于音符的节拍,如果1拍为0.4s,那么1/4拍为0.1s,只要设定延迟时间就可以求得节拍的时间。

假设1/4拍为1DELAY,那么1拍应为4DELAY,以此类推。

总而言之,一首乐曲是由音阶和节拍两大要素构成。

一首乐曲演奏的原理是:

不同音阶分别对应不同的频率,发出不同的音调而节拍则控制发出音调时间的长短;

若将乐曲的音调连续发出,并使其按相应的节拍变化,即可演奏一首乐曲。

根据这一基本原理,我采用单片机来设计音乐播放器。

本课题以单片机为核心设计一个音乐播放器,完成多曲选择播放控制、停止控制、上一曲、下一曲控制等功能。

音乐播放器利用单片机的定时器产生乐谱的各种频率方波,信号经过放大后由蜂鸣器发出声音,选取某段音乐使单片机连续播放。

设计4个按键:

播放/停止、下一曲、上一曲;

1位LED显示器,用来显示所选曲目,在开发板上进行调试。

MCS-51系列单片机优异的性能/价格比,使得它从面世以来就获得用户的认可。

20世纪80年代中期以后,Intel公司把这种单片机的内核(即8051内核)以出售或互换专利的方式传授给一些半导体公司,如Atmel、Philips、SST等,这些公司的这类产品被称为80C51系列单片机,其中以Atmel、Philips、SST等公司生产的与80C51兼容的8位单片机89C51最为典型。

2选题依据、主要研究内容、研究思路及方案

2.1选题依据

当今社会的快速发展,科技的进步,人们的生活水平不断提高,人们开始使用开发电子产品,给生活、工作带来便利。

单片机的应用刚好适应了人们的需求,同时它更加贴近于生活。

而音乐这一灵动的形式为人所喜爱,自然的音符,跳动的音阶,美好的旋律,总是给人美的享受。

将时下流行的音乐概念投射到单片机的控制领域,通过编程控制,让单片机蜂鸣器发出音乐,切中时下的电子产品领域热潮。

有其新颖性,创新元素也体现在其中。

同时作为音乐爱好者,通过单片机的控制,将所学知识和自己的兴趣爱好结合起来,也是一件乐事,是自己能够运用所学知识,制作设计一个控制播放器,有其趣味性,是自己十分感兴趣的选题。

音乐播放器先前早就出现过,音乐芯片也在市场上很常见。

利用单片机控制播放音乐也不胜枚举。

利用所学的单片机知识,由于本人对音乐简谱知识有一定了解,因此,选题具有可操作性,可行性。

是能够利用目前阶段所学知识设计出来的。

本文介绍了一种基于AT89S-51单片机的简单音乐播放器设计。

该设计以8051单片机为主体,结合播放等设备,实现单首歌曲循环播放及暂停功能,同时以指示灯显示播放状态。

2.2主要研究内容

以AT89S51为核心的音乐播放器,首先要深入了解此款单片机的各个功能,包括定时器、中断、数码管显示、按键的操作等。

利用51单片机制作一个简单的音乐播放器,本课题以单片机为核心设计一个音乐播放器,完成多曲选择播放控制、停止控制、上一曲、下一曲控制等功能。

启动、播放/停止、下一曲、上一曲;

根据系统的功能分析系统所需要用到的硬件资源,包括电源电路、定时中断、蜂鸣器电路、按键输入、数码管显示、复位电路。

根据系统功能及其51单片机的硬件资源,编写系统主控软件、音乐播放软件、乐曲曲谱表、按键控制模块、数码管显示模块、二极管亮灯设计,并进行软件调试。

采用汇编语言,在keiluVision4中进行程序编写、编译并生成可下载的文件,通过串口连接下载到系统中。

实现音乐播放器的预定功能。

2.3研究思路及方案

以AT89S51微处理器为核心进行音乐播放器设计:

(1)51单片机。

51单片机为整个系统的核心部分,是带动整个系统工作的重要部件。

(2)按键输入。

按键输入用来控制音乐播放指令,按下不同的按键,单片机执行不同的指令,显示正在演奏的歌曲序号,并亮起相应的指示灯。

(3)蜂鸣器电路。

蜂鸣器作为输出部分,按照曲谱发出音乐。

(4)数码管显示电路。

数码管显示也作为输出部分,显示当前正在演奏的乐曲序号值。

3.工作进度及具体安排

第一周

星期一、上午:

布置课题任务,课题介绍及讲课。

下午:

借阅有关资料,总体方案讨论。

星期二、选题,确定选题。

星期三、拟写开题报告,老师审阅。

确定总体方案。

学习与设计相关内容。

星期四、学习与设计相关内容。

各部分方案设计,各部分设计。

星期五、学习与设计相关内容

第二周

星期一:

设计及上机调试。

星期二:

调试

星期三:

调试、写说明书。

星期四:

写说明书、完成电子版并打印成稿。

星期五:

老师验收,撰写设计报告

4.指导教师意见

指导教师:

年月日

说明:

开题报告作为课程设计答辩委员会对学生答辩资格审查的依据材料之一,此报告应在导师指导下,由学生填写,将作为课程设计成绩考查的重要依据,经导师审查后签署意见生效。

单片机课程设计报告

电气与信息工程学院

一、设计任务:

1.本课题以单片机为核心设计一个音乐播放器,完成多曲选择播放控制、停止控制、上一曲、下一曲控制等功能。

2.此次设计的音乐播放器具有如下要求:

(1)按下P3.2启动键,音乐播放器按照从头到尾的顺序自动播放预先设定的1~3共三首乐曲,全部播放完毕则从头开始。

(2)播放歌曲时,数码管显示正在播放的乐曲序号,相应的歌曲序号彩灯亮起,P2为第一首歌曲指示灯,P2.6、P2.5分别为第二首、第三首歌曲播放指示灯。

(3)P3.4为曲目加一按键,按下之后,播放下一首歌曲。

数码管显示下一曲序号,相应指示灯亮起。

(4)P3.5为上一曲按键,按下之后,播放上一首歌曲。

数码管显示上一曲一曲序号,相应指示灯亮起。

(5)当用户按下暂停键P3.3时,音乐播放器打断正在播放的某一乐曲,用户再次按下暂停键,该乐曲继续播放。

二、单片机最小系统硬件资源介绍:

1单片机芯片、LED彩灯接口电路、数码管接口电路

单片机芯片

LED

数码管

2.输入按键电路

P3.5下一曲P3.4上一曲P3.3暂停/播放P3.2启动

3.蜂鸣器电路

4.复位电路

5.电源电路

三、设计思路:

3.1乐曲实现的原理

乐曲音阶的计算

表简谱音符与频率对应图

根据程序设定的延时,一周期的时间为0.0398ms,因为中音1对应的频率为523Hz,所以频率的控制值(TAB中的值)为十六进制的30H,用十进制表示为48。

各音符频率与计数值T的关系

音符

频率(Hz)

半周期(ms)

简谱码T值

定时值(H)

定时值(D)

TAB值(16进制)

低1Do

262

1.90

F894H

62628

5FH

低2Re

294

1.70

F95CH

63835

55H

低3Mi

330

1.51

FA1AH

64021

4CH

低4Fa

349

1.43

FA6AH

64103

48H

低5So

392

1.28

FB00H

64260

10H

低6La

440

1.14

FB8CH

64400

39H

低7Si

494

1.01

FC0EH

64524

33H

中1Do

523

0.95

FC4AH

64580

30H

中2Re

587

0.85

FCAEH

64684

2BH

中3Mi

659

0.76

FD08H

64777

26H

中4Fa

698

0.72

FD30H

64820

24H

中5So

784

0.64

FD80H

64896

20H

中6La

880

0.57

FDC6H

64966

1CH

中7Si

988

0.51

FE02H

65030

19H

高1Do

1046

0.47

FE2AH

65058

18H

高2Re

1175

0.42

FE5CH

65110

15H

高3Mi

1318

0.38

FE84H

65157

14H

高4Fa

1397

0.36

FE98H

65178

12H

高5So

1568

0.32

FEC0H

65217

高6La

1760

0.28

FEE8H

65252

0EH

高7Si

1967

0.25

FF06H

65283

0DH

乐曲节拍的计算;

由定时器T0控制延时。

歌曲是速度决定时间,但是时值是相对的。

本设计中利用计数器完成10毫秒延时,设置1拍的长度为640毫秒,则对于TAB中的值用十六进制表示为40h。

节拍

1/16

1/8

1/4

1/2

TAB表值

40H

80H

乐谱在程序中的编制

将乐谱转化为代码,应包含乐曲的音阶、音长(节拍)等信息。

(1)将音阶代码组成一个字节,节拍代码组成一个字节,按照:

音阶代码,节拍代码,音阶代码,节拍代码……的顺序,将一个乐谱转化成一定长度的代码数据表。

(2)在程序执行时顺序查此表,取出音阶代码,随后将对应的定时初值送定时器T0,使定时器T0产生该音阶对应的频率,并通过P1.5口输出,驱动外接蜂鸣器发声。

(3)取出节拍代码,持续相应的节拍

3.2系统流程图

3.3系统方案

本设计用89S51单片机为核心,利用8段数码管显示器.采用动态显示输出,声音输出用蜂鸣器来实现,用一片单片机即可满足本设计的输入输出。

系统框图如图2-所示:

通过对音乐播放器主体部分的电路进行模仿设计,达到播放器固有的基本功能,设定按钮K1、K2、K3和K4。

按钮K1打开并自动播放乐曲1至3;

按钮K2暂停/播放;

按钮K3为手动下一曲调试键;

按钮K4为手动上一曲调试键。

根据设计要求该播放器能实现音键的控制。

系统主要由播放器发声模块、按键选择控制模块和存储器模块构成。

播放器发声模块负责发出歌曲相应的音符;

选择控制模块负责由外部控制播放器的各项功能的实现;

显示模块负责按键时产生相应的值,由数码管来实现。

在只实现基本功能时(由功能控制键控制),本文的主要内容是用AT89S51单片机为核心控制元件,系统程序主要包括主程序,定时器中断程序,音乐播放程序,延迟子程序等。

四:

PROTEUS仿真电路图

基于单片机的音乐播放器的是利用PROTEUS软件来实现电脑仿真,仿真步骤:

1、打开PROTEUS软件,选择器件,连接电路图;

2、添加已经编译的HEX文件到单片机内;

3、单步运行,观察结果,比较预定结果,修改源程序;

4、总体调试运行;

分组测试,看是否达到任务要求。

五、系统源程序

SHUZHIEQU3FH;

选取目的地址

SONGEQUP1.5;

扬声器播放P1.5

PLAYEQUP3.2;

启动键P3.2

ADDONEEQUP3.4;

曲目加一键P3.4

SUBONEEQUP3.5;

曲目减一键P3.5

DULEQUP0;

数码管段选P0口

WELEQUP1;

数码管位选P1口

ORG0000H

LJMPSTART

ORG000BH;

定时器0溢出中断入口地址

AJMPCONT;

指向定时器中断程序

ORG0013H;

外部中断一入口地址

AJMPPAUSE;

指向外部中断程序

ORG0100H

START:

MOVSP,#60H

MOVTH0,#0D8H;

定时器赋初值

MOVTL0,#0EFH

MOVTMOD,#01H;

定时器T0,工作方式一

MOVIE,#86H;

开中断(外部中断一,定时器中断0)

MOVTCON,#00H;

低电平触发

MOVR0,#00H

MOVSHUZHI,#00H

MAIN:

JNBPLAY,FIRST;

判断P3.2键是否按下

SJMPMAIN

FIRST:

ACALLDE120

判断P3.2键是否释放

MOVDUL,#0F9H;

显示数值1

MOVWEL,#0F7H;

显示位送P1口

MOVP2,#7FH;

亮第一首歌曲的指示灯

MOVDPTR,#DAT1;

表1首地址送DPTR

ACALLMUSIC0

ACALLNEXT

RET

NEXT:

INCSHUZHI;

SHUZHI加1

MOVA,SHUZHI

CJNEA,#01,LOOP3;

A是否=1,不等就跳转到LOOP3

MOVDPTR,#DAT2

MOVDUL,#0A4H;

显示数值2

MOVWEL,#0F7H

MOVP2,#0BFH

INCA

LOOP3:

CJNEA,#02,LOOP4;

A是否=2,不等就跳转到LOOP4

MOVDPTR,#DAT3

MOVDUL,#0B0H

MOVP2,#0DFH

LOOP4:

CJNEA,#03,NEXT

ACALLFIRST

LAST:

DECSHUZHI;

SHUZHI减1

CJNEA,#02,LAST1

MOVP2,#0DFH

LAST1:

CJNEA,#01H,LAST2

MOVDUL,#0A4H

MOVP2,#0BFH

LAST2:

CJNEA,#00H,LAST

MOVDPTR,#DAT1

MOVDUL,#0F9H

MOVP2,#7FH

MUSIC0:

MOV20H,#00H;

中断计数单元清0

MUSIC1:

CLRA

MOVCA,@A+DPTR;

查表取音阶常数

JZEND0;

是结束符?

CJNEA,#0FFH,MUSIC5;

是休止符?

LJMPMUSIC3;

产生100ms停顿

MUSIC5:

NOP

KEY:

JNBPLAY,K0;

判断3.2键是否按下

JNBADDONE,K1;

判断P3.4键是否按下

JNBSUBONE,K2;

判断P3.5键是否按下

MOVR6,A;

音阶常数送R6

INCDPTR

MOVA,#0

取常数送R7

MOVR7,A

SETBTR0;

启动定时器T0

MUSIC2:

CJNER0,#0,$

CPLSONG;

输出电平取反

MOVA,R6

MOVR3,A;

音阶常数送R3

LCALLDE120

MOVA,R7;

节拍常数送A

CJNEA,20H,MUSIC2;

节拍时间到否

MOV20H,#00H;

为取下一音阶做准备

LJMPMUSIC1

MUSIC3:

;

休止100ms

CLRTR0;

关闭定时器

MOVR2,#14H

MUSIC4:

MOVR3,#250

DJNZR2,MUSIC4

INCDPTR;

为取下一音阶做准备

END0:

MOVR2,#200;

歌曲结束后,延时1S后继续

MUSIC6:

DJNZR2,MUSIC6

K1:

ACALLDE120;

调用延时子程序

判断P3.4键是否释放

K2:

判断P3.5键是否按下

ACALLLAST

K0:

JNBPLAY,K0

LJMPSTART

DE120:

;

按键延时程序,软件消抖

MOVR4,#05H

DE14:

DJNZR4,DE14

DJNZR3,DE120

CONT:

INC20H;

计数单元+1

重新设置10ms定时初值

RETI;

跳出中断

PAUSE:

JNBP3.3,PAUSE;

判断P3.3键是否有释放

MOVDUL,#8EH

MOVA,R0

CPLA

MOVR0,A

RETI

DAT1:

;

沧海一声笑

DB1CH,40H,1CH,20H,20H,20H,26H,20H,2BH,20H,30H,40H

DB26H,20H,2BH,20H,30H,20H,39H,10H,40H,10H,40H,80H

DB40H,20H,39H,20H,40H,20H,39H,20H,5FH,20H,55H,20H,26H,20H,20H,20H

DB39H,20H,40H,20H,26H,10H,2BH,10H,30H,20H,2BH,40H

DB1CH,40H,1CH,20H,20H,20H,26H,20H,2BH,20H,30H,40H

DB39H,20H,40H,20H,26H,10H,2BH,10H,30H,20H,2BH,40H

DB26H,20H,2BH

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

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

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