设计题目基于AT89C52单片机的音乐盒的设计.docx

上传人:b****4 文档编号:4662041 上传时间:2023-05-07 格式:DOCX 页数:27 大小:303.41KB
下载 相关 举报
设计题目基于AT89C52单片机的音乐盒的设计.docx_第1页
第1页 / 共27页
设计题目基于AT89C52单片机的音乐盒的设计.docx_第2页
第2页 / 共27页
设计题目基于AT89C52单片机的音乐盒的设计.docx_第3页
第3页 / 共27页
设计题目基于AT89C52单片机的音乐盒的设计.docx_第4页
第4页 / 共27页
设计题目基于AT89C52单片机的音乐盒的设计.docx_第5页
第5页 / 共27页
设计题目基于AT89C52单片机的音乐盒的设计.docx_第6页
第6页 / 共27页
设计题目基于AT89C52单片机的音乐盒的设计.docx_第7页
第7页 / 共27页
设计题目基于AT89C52单片机的音乐盒的设计.docx_第8页
第8页 / 共27页
设计题目基于AT89C52单片机的音乐盒的设计.docx_第9页
第9页 / 共27页
设计题目基于AT89C52单片机的音乐盒的设计.docx_第10页
第10页 / 共27页
设计题目基于AT89C52单片机的音乐盒的设计.docx_第11页
第11页 / 共27页
设计题目基于AT89C52单片机的音乐盒的设计.docx_第12页
第12页 / 共27页
设计题目基于AT89C52单片机的音乐盒的设计.docx_第13页
第13页 / 共27页
设计题目基于AT89C52单片机的音乐盒的设计.docx_第14页
第14页 / 共27页
设计题目基于AT89C52单片机的音乐盒的设计.docx_第15页
第15页 / 共27页
设计题目基于AT89C52单片机的音乐盒的设计.docx_第16页
第16页 / 共27页
设计题目基于AT89C52单片机的音乐盒的设计.docx_第17页
第17页 / 共27页
设计题目基于AT89C52单片机的音乐盒的设计.docx_第18页
第18页 / 共27页
设计题目基于AT89C52单片机的音乐盒的设计.docx_第19页
第19页 / 共27页
设计题目基于AT89C52单片机的音乐盒的设计.docx_第20页
第20页 / 共27页
亲,该文档总共27页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

设计题目基于AT89C52单片机的音乐盒的设计.docx

《设计题目基于AT89C52单片机的音乐盒的设计.docx》由会员分享,可在线阅读,更多相关《设计题目基于AT89C52单片机的音乐盒的设计.docx(27页珍藏版)》请在冰点文库上搜索。

设计题目基于AT89C52单片机的音乐盒的设计.docx

设计题目基于AT89C52单片机的音乐盒的设计

《单片机原理及应用》课程设计说明书

设计题目:

基于AT89C52单片机的音乐盒的设计

学院:

专业班级:

设计者:

学号:

指导老师:

目录

摘要…………………………………………………………………4

第1章概述……………………………………………………………5

第2章音乐盒的发音原理……………………………………………6

2.1播放音乐的原理……………………………………………6

2.2音符频率的产生……………………………………………6

2.3节拍频率的产生……………………………………………8

第3章硬件电路设计…………………………………………………9

3.1硬件电路……………………………………………………9

3.2整体硬件电路………………………………………………10

3.3原理说明…………………………………………………10

3.4键盘按键…………………………………………………10

第4章软件设计………………………………………………………11

4.1程序设计流程………………………………………………11

4.2设计源程序代码……………………………………………12

第5章仿真及调试……………………………………………………16

5.1调试………………………………………………………16

5.2仿真………………………………………………………16

5.3程序调试中出现的问题及解决的办法………………………17

第6章设计小结………………………………………………………18

附录元件清单…………………………………………………19

基于AT89C52单片机的音乐盒的设计

【摘要】:

随着人类社会的发展,人们对视觉、听觉方面的享受提出了越来越高的要求。

小小的音乐盒可以给人们带来美好的回忆,提高人们的精神文化享受。

传统的音乐盒多是机械型的,体积笨重,发音单调,不能实现批量生产。

本文设计的音乐盒是以单片机为核心元件的电子式音乐盒,体积小,重量轻,能演奏和旋音乐,功能多,使用方便,可以批量生产,具有一定的商业价值。

【关键词】:

音乐盒;单片机

第1章

概述

传统的音乐盒多是机械音乐盒,其工作原理是通过齿轮带动一个带有铁钉的铁桶转动,铁桶上的铁钉撞击铁片制成的琴键,从而发出声音。

但是,机械式的音乐盒体积比较大,比较笨重,且发音单调。

水、灰尘等外在因素,容易使内部金属发音条变形,从而造成发音跑调。

另外,机械音乐盒放音时为了让音色稳定,必须放平不能动摇,而且价格昂贵,不能实现大批量生产。

本文设计的音乐盒,是基于单片机设计制作的电子式音乐盒。

与传统的机械式音乐盒相比更小巧,音质更优美且能演奏和弦音乐。

电子式音乐盒动力来源是电池,制作工艺简单,可进行批量生产,所以价格便宜。

基于单片机制作的电子式音乐盒,控制功能强大,可根据需要选歌,使用方便。

所放歌曲的节奏可以根据需要进行设置,根据存储容量的大小,可以尽可能多的存储歌曲。

另外,可以设计彩灯外观效果,增设放歌时间、序号显示灯功能,使音乐盒的功能更加丰富,如图1-1所示。

 

图1-1单片机音乐盒功能框图

第2章音乐盒的发音原理

2.1播放音乐的原理

发音原理:

播放一段音乐需要的是两个元素,一个是音调,另一个是音符。

首先要了解对应的音调,音调主要由声音的频率决定,同时也与声音强度有关。

对一定强度的纯音,音调随频率的升降而升降;对一定频率的纯音、低频纯音的音调随声强增加而下降,高频纯音的音调却随强度增加而上升。

另外,音符的频率有所不同。

基于上面的内容,这样就对发音的原理有了一些初步的了解。

音符的发音主要靠不同的音频脉冲。

利用单片机的内部定时器/计数器0,使其工作在模式1,定时中断,然后控制P3.7引脚的输出音乐。

只要算出某一音频的周期(1/频率),然后将此周期除以2,即为半周期的时间,利用定时器计时这个半周期时间,每当计时到后就将输出脉冲的I/O反相,然后重复计时此半周期时间再对I/O反相,就可在I/O脚上得到此频率的脉冲。

2.2音符频率的产生

音符及定时器初始值:

例如:

中音1(do)的音频=523HZ,周期T=1/523s=1912

定时器/计数器0的定时时间为:

T/2=1912/2

=956

定时器956

的计数值=定时时间/机器周期=956

/1

=956(时钟频率=12MHZ)

装入T0计数器初值为65536-956=64580

将64580装入T0寄存器中,启动T0工作后,每计数956次时将产生溢出中断,进入中断服务时,每次对P3.0引脚的输出值进行取反,就可得到中音DO(523HZ)的音符音频。

将51单片机内部定时器工作在计数器模式1下,改变计数初值TH0,TL0以产生不同的频率。

下表2-1是C调各音符频率与计数初值T的对照表:

 

表2-1C调各音符频率与计数初值T的对照表

音符

频率(Hz)/初值(

音符

频率(Hz)/初值(

低1DO

262/63627

中1DO

523/64580

高1DO

1042/65056

低2RE

294/63835

中2RE

589/64687

高2RE

1245/65134

低3M

330/64021

中3M

661/64780

高3M

1318/65157

低4FA

350/64107

中4FA

700/64822

高4FA

1397/65178

低5SO

393/64264

中5SO

786/64900

高5SO

1568/65217

低6LA

441/64402

中6LA

882/64969

高6LA

1760/65252

低7SI

495/64526

中7SI

990/65031

高7SI

1967/65282

音符、音符编码及定时器初始值:

为了产生音符,必须求出音符低音5—高音5的计数初值。

例如C调的低1DO的THTL=65536-50000/262=63627,中音DO的THTL=65536-500000/523=64580,高音DO的THTL=65536-500000/1042=65056。

为了方便写谱,对其进行简单的编码,在编程时,根据音符编码查找对应的计数初值。

比如说音乐是C调的,那么出现低音的5SO,直接将代码写为1;出现低音6LA,直接写一个2的代码;出现低音7SI,直接写一个3代码。

表2-2音符编码表

音符

音符编码

音符

音符编码

不发音

0

低5SO

1

低6LA

2

低7SI

3

中1DO

4

中2RE

5

中3M

6

中4FA

7

中5SO

8

中6LA

9

中7SI

A

高1DO

B

高2RE

C

高3M

D

高4FA

E

高5SO

F

高6LA

G

2.3节拍频率的产生

节拍的产生与编码:

音乐中的节拍用延时时间产生。

例如,1拍=0.4s,1/4拍=0.1s,以此类推。

假设1/4拍执行一次延时程序,则1/2拍就执行两次延时程序,所以只要求出1/4拍的延时时间,其余节拍就是它的倍数。

为了方便,将节拍数也进行了编码,并且计算了乐谱节拍编程时的延时时间,如表2-3和表2-4所示。

表2-3节拍数编码表

按1/4拍为一个延时时间的节拍编码与节拍对应的表

按1/8拍为一个延时时间的节拍编码与节拍对应的表

节拍编码

节拍

节拍编码

节拍

节拍编码

节拍

节拍编码

节拍

1

1/4

6

6/4

1

1/8

6

6/8

2

2/4

8

8/4

2

2/8

8

8/8

3

3/4

A

10/4

3

3/8

A

10/8

4

4/4

C

12/4

4

4/8

C

12/8

5

5/4

F

15/4

5

5/8

表2-4乐谱节拍编程时的时间延时表

乐谱节拍

1/4拍的延时时间

乐谱节拍

1/8拍的延时时间

4/4

125ms

4/4

62ms

3/4

187ms

3/4

94ms

2/4

250ms

2/4

125ms

音符编码和节拍编码完成后,在编程时,每个音符占一个字节,高四位是音符编码,低四位是节拍编码。

第3章硬件电路设计

3.1硬件电路

设计中用到了AT89C52单片机,3*3键盘,蜂鸣器等硬件电路常用元器件。

3.1.1时钟复位电路

时钟电路由单片机XTAL1、XTAL2引脚外接晶振(12MHz)及起振电容C1、C2(均为30pf)组成。

如图3-1所示:

图3-1时钟复位电路

3.1.2按键输入电路

按键输入电路由3*3矩阵键盘组成,P3口作为输入控制按键,其中P3.4~P3.6扫描行,P3.0~P1.2扫描列。

图3-2按键输入电路

3.2整体硬件电路

如图3-3所示:

图3-3音乐盒硬件电路原理图

3.3原理说明:

当键盘有键按下时,判断键值,启动计数器T0,产生一定频率的脉冲,驱动蜂鸣器,放出乐曲。

(1) 硬件电路中用P3口控制按键,其中P3.0~P3.2扫描列,P3.4~P1.6扫描行;

(2) 用P1.0口控制蜂鸣器;

(3) 电路为12MHz晶振频率工作,起振电路中C1,C2均为30pf。

3.4键盘按键

键盘按键分布如下:

按键功能说明:

1—5

五首歌曲

6

上一首歌曲

7

关机

8

暂停

9

下一首歌曲

1

2

3

4

5

6

7

8

9

 

第4章软件设计

本程序可以实现该课程设计的基本要求,并可以通过按键播放达10首歌曲。

4.1程序设计流程

程序设计流程图如图4-1所示:

 

 

图4-1程序设计流程图

4.2设计源程序代码

ORG0000H

LJMPMAIN

ORG000BH

;定时器T0溢出中断入口地址

LJMPTT0

ORG001BH

;定时器T1溢出中断入口地址

LJMPT1INT

ORG1000H

MAIN:

MOVSP,#70H

LCALLINITIL;内存初始化

WAIT:

LCALLKEY

LJMPWAIT

KEY:

;键盘扫描

NOP

NOP

LCALLKS

JNZK1;有按键转到K1

MOVA,37H

LCALLSOP

XN:

LJMPKEY

K1:

LCALLKS

JNZK2

LJMPKEY

K2:

;读键盘

MOVR2,#0FEH

MOVR4,#00H

K3:

MOVA,R2

MOVP3,A

MOVA,P3

JBACC.4,L1

;为1跳转,第一行无按键

MOVA,#01H

LJMPLK

L1:

JBACC.5,L2

MOVA,#04H

LJMPLK

L2:

JBACC.6,NEXT1

MOVA,#07H

LK:

ADDA,R4

PUSHACC

K4:

LCALLDELAY1

LCALLKS

JNZK4

;若同时有其他按键,则等待(同时按视为无效)

MOVR3,#07H

CLRA

MOVR0,#30H

MOVR1,#31H

MM1:

MOVA,@R1;键值给37H

MOV@R0,A

INCR0

INCR1

DJNZR3,MM1

POPACC

MOV@R0,A

RET

NEXT1:

INCR4;列扫描

MOVA,R2

JNBACC.2,N2

LJMPN1

N2:

LJMPKEY

N1:

RLA

MOVR2,A

LJMPK3

KS:

MOVA,#0F0H;判断P1口

MOVP3,A

NOP

NOP

MOVA,P3

CPLA

ANLA,#0F0H

RET

DELAY1:

;延时2.55ms63×4×1us×10+10×3×1us

SETBRS0

DL:

MOVR5,#0AH

DL2:

MOVR6,#63

DL3:

NOP

NOP

DJNZR6,DL3

DJNZR5,DL2

CLRRS0

RET

INITIL:

;30H~37H初值为零

MOVR3,#08H

MOVR0,#30H

M1:

MOV@R0,#00H

INCR0

DJNZR3,M1

CLRP1.0

RET

;按键值播放歌曲

SOP:

MOVA,37H

CJNEA,#01H,A11

MOV52H,#HIGHTABLE10

MOV53H,#LOWTABLE10

LCALLMAIN0

A11:

CJNEA,#02H,A22

MOV52H,#HIGHTABLE20

MOV53H,#LOWTABLE20

LCALLMAIN0

A22:

CJNEA,#03H,A33

MOV52H,#HIGHTABLE30

MOV53H,#LOWTABLE30

LCALLMAIN0

A33:

CJNEA,#04H,A44

MOV52H,#HIGHTABLE40

MOV53H,#LOWTABLE40

LCALLMAIN0

A44:

CJNEA,#05H,A55

MOV52H,#HIGHTABLE50

MOV53H,#LOWTABLE50

LCALLMAIN0

A55:

RET

DELAY:

MOVR4,#05

D1:

MOVR5,#0FFH

DJNZR5,$

DJNZR4,D1

RET

MAIN0:

MOVTMOD,#11H;播放歌曲程序

MOVIE,#8AH

MOVTH1,#3CH

MOVTL1,#0B0H

LCALLKS

JNZTTM12

MOV40H,#00H

NEXT20:

MOVA,40H

MOVDPH,52H

MOVDPL,53H

MOVCA,@A+DPTR

MOVR2,A

JZSTOP

ANLA,#0FH

MOVR1,A

MOVA,R2

SWAPA

ANLA,#0FH

JNZSING

CLRTR0

JMPW1

SING:

DECA

MOV22H,A

RLA

MOVDPTR,#TABLE00

MOVCA,@A+DPTR

MOVTH0,A

MOV21H,A

MOVA,22H

RLA

INCA

MOVCA,@A+DPTR

MOVTL0,A

MOV20H,A

SETBTR0

SETBTR1

W1:

LCALLDELAY30

INC40H

LCALLKS;有键跳出

JNZSTOP

LJMPNEXT20

STOP:

CLRTR0

CLRTR1

CLRP1.0

LJMPMAIN0

TTM12:

LCALLK2

MOVA,37H

CJNEA,#08H,TTM13;暂停

CLRTR1

CLRP1.0

LCALLDELAY1

TTM120:

LCALLKS

LCALLDELAY1

JZTTM120

LCALLK2

MOVA,37H

CJNEA,#08H,TTM120

SETBTR1

LJMPNEXT20

TTM13:

CJNEA,#09H,TTM14;下一曲

MOVA,52H

INCA

MOV52H,A

MOVA,53H

INCA

MOV53H,A

MOVA,36H

INCA

MOV37H,A

LJMPTTM2

TTM14:

CJNEA,#06H,TTM2;上一曲

MOVA,52H

DECA

MOV52H,A

MOVA,53H

DECA

MOV53H,A

MOVA,36H

DECA

MOV37H,A

TTM2:

RET

TT0:

PUSHACC;定时器中断子程序0

PUSHPSW

MOVTL0,20H

MOVTH0,21H

CPLP1.0;获得脉冲

POPPSW

POPACC

RETI

;定时器中断子程序1

T1INT:

MOVTH1,#3cH

MOVTL1,#0b0H

RETI

DELAY30:

MOVR7,#2

W2:

MOVR4,#125

W3:

MOVR3,#248

DJNZR3,$

DJNZR4,W3

DJNZR7,W2

DJNZR1,DELAY30

RET

TABLE00:

DW64580,64684,64777,6482;音符

DW64898,64968,65030,64260

DW64400,64524,65058,63835,64021

TABLE10:

;第一首《精忠报国》

DB66H,52H,36H,22H,12H,12H,22H,32H,98H,84H,82H,92H,14H,12H,22H

DB32H,52H,22H,42H,38H,66H,52H,36H,22H,12H,22H,22H,32H,98H

DB24H,22H,32H,54H,52H,32H,92H,12H,92H,82H,98H,66H,52H,36H,22H

DB12H,12H,22H,32H,98H,84H,82H,92H,14H,12H,22H,32H,52H,22H,42H,38H

DB66H,52H,36H,22H,12H,22H,22H,32H,98H,24H,22H,32H,54H,52H,32H

DB22H,12H,92H,82H,98H,14H,24H,34H,44H,64H,0B4H,64H,32H,52H

DB62H,0B2H,62H,52H,38H,24H,22H,32H,54H,52H,62H,52H,32H,32H,22H,38H

DB64H,0B4H,64H,32H,52H,62H,0B2H,62H,52H,38H,22H,22H,22H,32H,52H,52H

DB52H,62H,7FH,74H,04H,58H,6FH

DB00

TABLE20:

;第二首《月亮代表我的心》

DB02H,82H

DB16H,32H,54H,02H,52H

DB0A6H,32H,54H,02H,52H

DB64H,74H,0B6H,64H

DB52H,5CH,32H,22H

DB16H,12H,14H,32H,22H

DB16H,12H,14H,22H,32H

DB26H,12H,94H,22H,32H

DB2CH

DB32H,52H

DB36H,22H,14H,54H

DB0ACH,92H,0A2H

DB96H,0A2H,96H,82H

DB3CH,54H

DB36H,22H,14H,54H

DB0ACH,92H,0A2H

DB16H,12H,14H,22H,32H

DB2CH,02H,82H

DB16H,32H,56H,12H

DB0A6H,32H,56H,52H

DB66H,72H,0B6H,62H

DB62H,52H,58H,32H,22H

DB16H,12H,14H,32H,22H

DB16H,12H,14H,22H,32H

DB26H,92H,0A4H,12H,22H

DB1CH

DB00

TABLE30:

;第三首《大海》

DB82H,92H,12H,14H,12H,14H,92H,82H,12H,14H,22H,14H,92H,12H,22H,24H

DB22H,24H,12H,92H,22H,24H,32H,24H,32H,52H,62H,54H,52H,64H,52H,32H

DB22H,32H,22H,12H,94H,82H,92H,12H,14H,12H,14H,94H,1CH

DB82H,92H,12H,14H,12H,14H,92H,82H,12H,14H,22H,14H,92H,12H,22H,24H

DB22H,24H,12H,92H,22H,24H,32H,24H,32H,52H,62H,54H,52H,64H,52H,32H

DB22H,32H,22H,12H,94H,82H,92H,12H,14H,12H,14H,22H,12H,1CH,32H,52H

DB62H,64H,62H,64H,0B2H,62H,52H,54H,62H,54H,32H,22H

DB12H,14H,12H,14H,24H,3CH,32H,22H,12H,14H,12H,14H,0B2H,62H,52H,54H,62H,54H,32H,52H

DB66H,0B2H,0B4H,62H,52H,5CH,32H,52H,62H,64H,62H,64H,0B2H,62H,52H,54H

DB62H,54H,32H,22H,12H,14H,12H,14H,54H,3CH,32H,22H,12H,14H,12H,14H,22H,32H

DB52H,54H,32H,54H,32H,52H,6FH,04H,02H,92H,32H,24H,12H,1FH

DB00

TABLE40:

;第四首《彩云追月》

DB86H,92H,12H,22H,32H,52H,68H,63H,52H,34H,62H,0B2H,0B2H,62H,51H,61H,51H,31H,54H

DB62H,0B2H,0B2H,62H,52H,32H,52H,52H,51H,61H,51H,31H,34H,52H,62H,74H,32H,52H,52H,32H

DB21H,31H,21H,11H,24H

DB32H,52H,52H,32H,22H,12H,24H,32H,52H,52H,32H,62H,52H,61H,51H

DB31H,21H,21H,31H,21H,11H,1CH

DB21H,31H,22H,23H,31H,21H,18H,02H,0B2H,0BCH,0B4H,72H,61H,51H,72H,61H

DB71H,61H,51H,61H,71H,61H,6FH

DB86H,94H,12H,22H,32H,52H,64H,62H,51H,31H,52H,21H,31H,21H,33H,62H,0B2H,0B2H,62H

DB51H,61H,51H,31H,54H

DB62H,0B2H,72H,61H,51H,51H,61H,51H,31H,54H,61H,0B2H,72H,61H,51H,51H,61H,

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

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2