数字音乐盒的设计与实现

数字音乐盒的设计与实现
数字音乐盒的设计与实现

课程设计报告

课程设计名称:微机系统综合课程设计课程设计题目:数字音乐盒的设计与实现

1 总体设计方案

1.1 题目介绍与要求

本次课程设计的任务是运用伟福Lab8000试验箱和keil软件设计并实现一个数字音乐盒,要求采用I/O产生一定频率的方波,从而驱动蜂鸣器发出不同的音调,演奏乐曲;并且需要采用七段数码管显示当前播放的歌曲序号和播放时间;还得通过数字键盘直接选择乐曲,控制选择上一曲和下一曲音乐,具有暂停和播放控制功能。

1.2设计思路

1.2.1音调的产生

频率的高低决定了音调的高低。音乐的十二平均率规定:每两个八度音(如简谱中的中音1和高音1)之间的频率相差一倍。在两个八度音之间又分为十二个半音。另外,音名A(简谱中的低音6)的频率为440Hz,音名B到C之间、E 到F之间为半音,其余为全音。由此可以计算出简谱中从低音1到高音1之间每个音名对应的频率,所有不同频率的信号都是从同一个基准频率分频得到的。

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

利用51单片机的内部定时器使其工作在计数器模式MODE1下,改变计数值TH0及TL0以产生不同频率的方法。

此外结束符和休止符可以分别用代码00H和FFH来表示,若查表结果为00H,则表示曲子终了;若查表结果为FFH,则产生相应的停顿效果。

例如频率为523Hz,其周期T=1/523=1912us,因此只要令计数器计时956us/1us=956,在每次技术956次时将I/O反相,就可得到中音DO(523Hz)。计数脉冲值与频率的关系公式如下:

N=Fi/2/Fr

N:计算值;Fi:内部计时一次为1us,故其频率为1MHz;

其计数值的求法如下:

初值T=65536?N

C调各音符频率与计数值T的对照表如表1.1所示。

表1.1 C调各音符频率与计数值T的对照表

低音频率N 参数中音频率N 参数高音频率N 参数Do 262 1908 229 Do 523 956 115 Do 1046 57 57 Do# 277 1805 217 Do﹟554 903 108 Do﹟1109 54 54 Re3 294 1701 204 Re 587 852 102 Re 1175 51 51 Re﹟311 1608 193 Re﹟622 804 97 Re﹟1245 48 48 Mi 330 1515 182 Mi 659 759 91 Mi 1318 45 45 Fa 349 1433 172 Fa 698 716 86 Fa 1397 43 43 Fa﹟370 1351 162 Fa﹟740 676 81 Fa﹟1480 41 41 So 392 1276 153 So 784 638 77 So 1568 38 38 So﹟415 1205 145 So﹟831 602 72 So﹟1661 36 36 La 440 1136 136 La 880 568 68 La 1760 34 34 La﹟464 1078 129 La﹟932 536 64 La﹟1865 32 32 Si 494 1012 121 Si 988 506 61 Si 1976 30 30

1.2.2节拍的产生

构成音乐需要节拍,让音乐具有旋律,而且可以调节各个音的快慢度。若1拍实0.5s,则1/4 拍为0.125s。至于1有多长时间,可以按照设计者来决定,只要好听就行。音持续时间的长短即时值,一般用拍数表示。休止符表示暂停发音。

一首音乐是由许多不同的音符组成的,而每个音符对应着不同频率,这样就可以利用不同的频率的组合,加以与拍数对应的延时,构成音乐。节拍与节拍码对照表如表1.2所示。

表1.2节拍与节拍码对照

节拍码节拍数节拍码节拍数

1 1/4拍 1 1/8拍

2 2/4拍 2 1/4拍

3 3/4拍 3 3/8拍

4 1拍 4 2/1拍

5 1又1/4拍 5 5/8拍

6 1又1/2拍 6 3/4拍

8 2拍8 1拍

A 2又1/2拍 A 1又1/4拍

C 3拍 C 1又1/2拍

F 3又3/4拍

每个音符使用1个字节,字节的高4位代表音符的高低,低4位代表音符的节拍。如果1拍为0.4秒,1/4拍为0.1秒,只要设定延迟时间就可求得节拍的时间。假设1/4拍的延迟时间为1,则1拍的延迟时间应为4,以此类推。所以只要求得1/4拍的延迟时间,其余的节拍就是它的倍数。表1.3所示。

表1.31/4和1/8节拍的时间设定

曲调值DELAY 曲调值DELAY

调4/4 125毫秒调4/4 62毫秒

调3/4 187毫秒调3/4 94毫秒

调2/4 250毫秒调2/4 125毫秒

2硬件电路设计

2.1系统原理

数字音乐盒的核心主要分为三个方面,分别是七段数码管、键盘和蜂鸣器。用定时器中断的方式来控制蜂鸣器和扫描4*4键盘,在程序中用显示函数让数码管显示,需要显示出歌曲序号和播放时间,并且能用键盘控制播放的音乐。原理框图如图2.1所示。

图2.1系统原理框图

2.2单片机

8051单片机是在课堂上学习的单片机型号,也是这次课程设计的核心器件,它是8位的单片机,具有品种全、兼容性强、性能价格比高等特点。8051单片机具有很多的I/O口,其中P2.4、P2.5、P2.6连接74LS138译码器,而译码器则可以控制片选信号和位选信号;P0的八个I/O口要与译码器74HC374相连,然后在与键盘连接,从而能确认数码管的段选信号,此次课程设计的位选码为0x8002。段选码是0x8004;P1.1口则控制的是蜂鸣器。单片机电路图如图2.2所示。

图2.2 单片机电路图

2.3主要电路器件

2.3.1 蜂鸣器

蜂鸣器是整个电路中重要的输出部分之一,没有了蜂鸣器就不会响起悦耳的音乐,本次课程设计,运用了单片机I/O口中的P1.1口,当程序中的play变量等于1时,蜂鸣器响,反之,若play等于0,则停止响声。端口输出的方波经放大滤波后,驱动蜂鸣器发声,蜂鸣器的电路图如图2.3所示。

图2.3蜂鸣器电路图

2.3.2 键盘

Lab8000实验箱内的键盘是4*6的键盘,但是这次课程设计只用到了前四列,所以也就只扫描了四列按键,键盘的主要功能就是用户的输入,也是实现程序现象的重要部分,当用户想播放哪首歌曲就在键盘中输入哪个按键。实验箱内的键盘还连接了一个ULN2003芯片,这个芯片的特点是电流增益高、工作电压高、温度范围宽、带负载能力强等特点,适应于要求高速大功率驱动的系统。键盘的电路图如图2.4所示。

图2.4键盘电路图

2.3.3 数码管

此次课程设计运用了六的数码管,第一个显示了歌曲的序号,第二个是空位,第三和第四个显示了分钟的计时,第五和第六个显示了秒钟的计时。数码管的主要作用就是显示出当前程序运行时的现象,数码管的位选位与ULN2003相连后

再接到键盘上,段选位则是连到74HC374译码器上,实验箱的数码管为共阴极,显示方式为动态显示。由电路图得知,位选信号为1时有效。数码管示意图如图2.5所示。

图2.5数码管示意图

3程序设计

3.1 系统功能

该软件具有多种功能,系统功能图如图3.1所示。

图3.1系统功能图

3.2主要函数介绍

3.2.1总体流程

程序的第一步是变量的初始化,定义了flag、time、sec等变量,并且设置了各个音调对应的十六进制码,然后开中断,对定时器进行模式的选择和初值的计算,接着调用LED显示函数使数码管按照程序设计的方式运行,其中扫描键盘是用定时器中断的方法,设置每隔3ms中断一次,即扫描一次键盘。流程图如图3.2所示。

图3.2总体流程图

3.2.2数码管显示函数

数码管的显示在这里用的是动态显示方法,并且通过电路图得知,为了让74HC138芯片和74HC573芯片有效,计算出段控制口和位控制口分别为0x8004和0x8002。流程图如图3.3所示。

图3.3数码管显示函数流程图

3.2.3键盘扫描

扫描键盘主要用的是unsigned char GetKey()函数,而且还是用定时器中断的方法,设置每隔3毫秒中断一次,在一秒中大约会产生中断333次,就是说在一秒钟扫描键盘333次。

在扫描键盘的过程中,先是扫描哪一个的按键别按下,把第几列记录下来后,

再扫描是哪一行的按键,记录是哪一行;最后根据公式“键值 = 列 x 4 + 行”,就能计算出是哪一个按键被按下。如图3.4所示。

图3.4键盘扫描函数流程图

3.2.4 计时函数

为了对歌曲进行计时,所以设计了一个计时函数jishi()。分钟和秒钟分别用两个数码管来显示,当歌曲响起时开始计时,若秒钟个位加到10时,则十位加一,并且个位清零;秒钟的十位加到5时,分钟个位加一,并且将秒钟清零,分钟的十位同理,最后通过缓冲区在数码管中显示。计时函数如图3.5所示。

图3.5 计时函数流程图

3.2.5 音乐函数

音乐函数song()是使蜂鸣器响起音乐的核心,一共有六首歌曲,分别用0x01——0x06控制着六首歌曲,通过用switch语句控制判断选择的是哪首歌曲,选择歌曲的序号后,调用相对应的并且储存了用十六进制数表示歌曲的数组,若在

键盘中选择了1,就会调用tiger[],则蜂鸣器就会按照tiger数组中存储的十六进制码产生的频率响起音乐,播放结束后就会继续播放序号为2的歌曲。如图3.6所示。

图3.6 音乐函数流程图

4 实验现象与问题

4.1操作说明与实验现象

“1”按键:歌曲1,《两只老虎》

“2”按键:歌曲2,《小青蛙》

“3”按键:歌曲3,《千年之恋》

“4”按键:歌曲4,《七子之歌》

“5”按键:歌曲5,《找朋友》

“6”按键:歌曲6,《寂寞沙洲岭》

“A”按键:播放上一首歌曲

“B”按键:播放下一首歌曲

“C”按键:暂停键

数码管的第一位显示当前正在播放的歌曲序号,第三四位显示歌曲的分钟计时,第五六位显示歌曲的秒钟计时。在键盘中选择“1”—“6”按键,就会播放相应的歌曲,六首歌曲循环播放,若当前播放的是第一首,选择“A”按键播放上一首歌曲就会播放第六首,若当前播放的是第六首,选择“B”按键播放下一首歌曲就会播放第一首,选择“C”按键时,歌曲和计时都会暂停,再按一次则继续播放音乐。

4.2 问题与解决方法

问题1:六个数码管中所有的段位都会发生很严重的闪烁现象,导致看不清数码管显示的数字,但运行的结果是正确的。

解决:经过测试发现,试验箱连错了I/O口,连的是P3.7口,该口的功能是读写,改成连接P1.1口,闪烁消失。

问题2:运行时数码管计数不稳定,有微弱的闪烁现象。

解决:调整中断时间,将中断一次的时间3ms改成2ms,在1秒内产生500次中

断,数码管变的更稳定。

问题3:音乐跑调

解决:音调的产生是根据声音产生的频率,再用公式计算出定时器的初值,计算错误导致音乐跑调。

参考文献

[1] 张毅刚,刘杰. 单片机原理及应用(第三版). 哈尔滨:哈尔滨工业大学出版社,2015.4.

[2]张仁彦,高正中,黄鹤松. 单片机原理及应用. 北京:机械工业出版社,2016.3.

[3]付先成,,高恒强,蔡红娟. 单片机原理与C语言程序设计. 武汉:华中科技大学出版社,2015.8.

[4]张校珩. 单片机C语言编程100例. 北京:中国电力出版社,2014.1.

[5] 唐颖. 单片机综合设计实例与实验. 北京:电子工业出版社,2015.1.

附录(关键部分程序清单)#include

#define uchar unsigned char

#define uint unsignedint

#define LEDLen 6

xdata unsigned char OUTBIT _at_ 0x8002; // 位控制口

xdata unsigned char OUTSEG _at_ 0x8004; // 段控制口

xdata unsigned char IN _at_ 0x8001; // 键盘读入口unsigned char LEDBuf[LEDLen]; // 显示缓冲

sbitfm=P1^1;//蜂鸣器

uchar u=0,num=0,num1=0;

uchartimeh,timel;

uchar min0=0,min1=0,sec0=0,sec1=0;

uchar play=0;

uchar flag1=0;

uint flag=0;

void delay1(uint z);//延时1ms

void delay(uint z); //延时165ms即十六分音符

void song();

//简谱音调对应的定时器初值适合11.0592M的晶振

uchar code chuzhi[]={

0xff,0xff,//占位停顿

0xFC,0x8E,//中音1-7

0xFC,0xED,

0xFD,0x43,

0xFD,0x6A,

0xFD,0xB3,

0xFD,0xF3,

0xFE,0x2D,

0xFE,0x47, //高音1-7

0xFE,0x76,

0xFE,0xA1,

0xFE,0xC7,

0xFE,0xD9,

0xFE,0xF9,

0xFF,0x16 };

code unsigned char LEDMAP[] = { // 八段管显示码

0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07,

0x7f, 0x6f, 0x77, 0x7c, 0x39, 0x5e, 0x79, 0x71

};

uchar code tiger[]={//两只老虎

0x14,0x24,0x34,0x14,0x14,0x24,0x34,0x14,

0x34,0x44,0x58,0x34,0x44,0x58,

0x52,0x61,0x52,0x41,0x34,0x14,0x52,0x61,0x52,0x41,0x34,0x14,

0x14,0xb4,0x18,0x14,0xb4,0x18,0xff,

};

uchar code xqw[]={//小青蛙

0x52,0x32,0x32,0x32,0x52,0x32,0x32,0x32,0x54,0x61,0x52,0x32,0x42,0x24,

0x42,0x22,0x22,0x22,0x42,0x22,0x22,0x22,0x44,0x51,0x42,0x22,0x32,0x18,

};

uchar code qnzl[]={ //千年之恋

0x12,0x22,0x34,0x84,0x74,0x54,0x38,0x42,0x32,0x22,0x42,0x34,0x84,0x72,0x82,0x 94,0xA8,0x08,

0x32,0x31,0x21,0x32,0x52,0x32,0x31,0x21,0x32,0x62,

0x32,0x31,0x21,0x32,0x82,0x71,0x81,0x71,0x51,0x32,0x22,

0x32,0x31,0x21,0x32,0x52,0x32,0x31,0x21,0x32,0x62,

0x32,0x31,0x21,0x32,0x83,0x82,0x71,0x72,0x02,

0x63,0xA1,0xA2,0x62,0x92,0x82,0x52,

0x31,0x51,0x63,0x51,0x63,0x51,0x63,0x51,0x62,0x82,0x7C,0x02,

0x61,0x71,0x82,0x71,0x62,0xA2,0x71,0x76,

0x61,0x71,0x82,0x71,0x62,0x52,0x31,0x36,

0x61,0x71,0x82,0x71,0x62,0xA3,0x73,0x62,0x53,

0x42,0x63,0x83,0x83,0x91,0x91,

0x61,0x71,0x82,0x71,0x62,0x0A2,0x71,0x76,

0x61,0x71,0x82,0x71,0x62,0x52,0x31,0x36,

0x61,0x71,0x82,0x71,0x62,0xA3,0x73,0x62,0x53,

0x42,0x82,0x88,0x02,0x74,0x93,0x89,0xff

};

uchar code qizige[]={ //七子之歌

0x54,0x32,0x52,0x32,0x54,

0x62,0x52,0x32,0x62,0x54,

0x14,0x12,0x22,0x34,0x52,0x32,

0x02,0x32,0x58,

0x52,0x52,0x62,0x52,0x32,0x54,0x52,0x62,0x52,0x82,0x62,0x58,

0x14,0x52,0x32,0x22,0x12,0x24,0x32,0x54,0x2,0x22,0x34,0x1f,0x18,

0x04,0x54,0xa4,0x92,0x81,0x62,0x52,0x54,0x62,0x64,0x52,0x62,0x81,0xa2,0x82,0x 9c,

0x02,0x52,0xa4,0x92,0x81,0x62,0x52,0x54,

0x62,0x64,0x52,0x64,0xa2,0x92,0x9f,

0xa4,0x92,0x81,0x62,0x52,0x54,

0x84,0x62,0x52,0x32,0x22,0x14,

基于51单片机数字音乐盒的设计

单片机实物设计 题目: 单片机音乐盒设计 班级: K0312416-17 姓名:湛俊朱斌杨裕庆 学号:K031241705 K031241632 K031241737

摘要 本设计是一个基于STC89C51RC系列单片机的音乐盒,依据单片机技术原理,通过硬件电路制作以及软件编译,设计制作出一个多功能多功能音乐盒。该音乐盒主要由按键电路、复位电路、时钟电路以及蜂鸣器组成。本音乐盒共有四首歌曲,用4个按键控制。播放歌曲时,蜂鸣器发出某个音调。本设计利用KEIL编程软件对音乐盒源程序进行编程并调试,配合PROTEUS 仿真软件对硬件进行仿真调试,节约了设计时间。 【关键词】STC89C51RC 按键蜂鸣器 LCD1602液晶

目录 前言 ................................................................................................................................. 第一章工作原理 .............................................................................................................. 1.1设计目标 ............................................................................................................... 第二章软件设计与分析................................................................................................... 2.1 软件设计的组成................................................................................................... 2.2 各部分软件分析 ................................................................................................. 2.2.1 延时165MS,即十六分音符子函数 .......................................................... 2.2.2 延时1MS子函数...................................................................................... 2.2.3 定时器0中断子函数 .............................................................................. 2.2.4 播放音乐子函数...................................................................................... 2.5 定时器1中断子函数.................................................................................. 2.6 按键扫描子函数 ......................................................................................... 2.2.7 主函数..................................................................................................... 2.3 总源程序 ............................................................................................................ 第三章软件仿真 .............................................................................................................. 3.仿真图...................................................................................................................... 3.1 元件清单 ............................................................................................................... 总结 ..................................................................................................................................... 参考文献..............................................................................................................................

音乐盒课程设计报告

音乐盒课程设计报告 XXXXXXXXXXXXX 一、项目概述: 随着社会的发展进步,许多人性化的电子产品被用在人们的日常生活中,而单片机被广泛运用到人们长期接触的事物上,比如银行交易窗口的滚动字幕,还有各种彩灯的控制,手机、计算机、机器人等各行各业中。基于AT89C52单片机的数字音乐盒就是这类产品,它不仅给人们带来了快乐,而且提高了人们的生活质量。 二、项目要求: 基于AT89C52单片机的数字音乐盒的设计要求如下: (1)用AT89C2单片机的I/O端口产生一定频率的方波,驱动蜂鸣器,发出不同的音调,从而演奏乐曲。 (2)共有10首乐曲,每首乐曲都有相应的按键控制,并且有开关键、暂停键、上一曲以及下一曲的控制键。 (3)LCD液晶显示歌曲的序号、播放时间、开机时显示英文欢迎提示字符。 三、知识要点: (一)、AT89C2芯片资料: 1)功能说明: 1、兼容MCS51指令系统。 2、8k可反复擦写(大于1000次)Flash ROM。 3、2KB的E2PROM程序存储器,可擦写10万次 4、32个双向I/O口。 5、256x8bit内部RAM。 5、3个16位可编程定时/计数器中断。 6、时钟频率12MHz。 7、1个可编程UART串行通道。 8、2个外部中断源,共9个中断源,6个中断矢量。 9、2个读写中断口线,3级加密位。 10、低功耗空闲和掉电模式,软件设置睡眠和唤醒功能。 11、有PDIP、PQFP、TQFP及PLCC等几种封装形式,以适应不同产品的需求。 2)引脚说明:

AT89C52是51系列单片机的一个型号,它是ATMEL公司生产的。AT89C52为40 脚双列直插封装的8 位通用微处理器,采用工业标准的C51内核,在内部功能及管脚排布上与通用的8xc52 相同,其主要用于会聚调整时的功能控制。功能包括对会聚主IC 内部寄存器、数据RAM及外部接口等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号IR的接收解码及与主板CPU通信等。主要管脚有:XTAL1(19 脚)和XTAL2(18 脚)为振荡器输入输出端口,外接12MHz 晶振。RST/VPd(9 脚)为复位输入端口,外接电阻电容组成的复位电路。VCC(40 脚)和VSS(20 脚)为供电端口,分别接+5V电源的正负端。P0~ P3 为可编程通用I/O 脚,其功能用途由软件定义,在本设计中,P0 端口(32~39 脚)被定义为 N1 功能控制端口,分别与N1的相应功能管脚相连接,13 脚定义为IR输入端,10 脚和11脚定义为I2C总线控制端口,分别连接N1的SDAS(18脚)和SCLS(19脚)端口,12 脚、27 脚及28 脚定义为握手信号功能端口,连接主板CPU 的相应功能端,用于当前制式的检测及会聚调整状态进入的控制功能。 本项目使用到的单片机引脚说明: 1)20、40号引脚分别接地和+5V电源。 2)18、29号引脚分别接振荡器反相放大器的输出端和振荡器反相放大器的及内部时钟发生器的输入端。 3)9号引脚接RST复位电路。 3)单片机使能信号接31号引脚,接+5V。 4)17号引脚(P3.7)接蜂鸣器电路通过定时器控制P3.7引脚上方波的占空比可以实现驱动蜂鸣器,发出不同的音调的功能。 5)P1端口控制4×4矩阵键盘,其中P1.0~P1.3 进行列扫描,P1.4~P1.7进行行扫描。6)P0端口用于接液晶显示器的数据位,由于P0端口驱动能力小,需外接电源和上拉电阻,此项目中接1K的排阻。 (二)、LCD1602资料: 1)、LCD1602介绍: 1602液晶显示器也叫1602字符型液晶它是一种专门用来显示字母、数字、符号等的点阵型液晶模块它有若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符。每位之间有一个点距的间隔,每行之间也有也有间隔,起到了字符间距和行间距的作用,正因为如此所以他不能显示图形。 LCD1602是指显示的内容为16X2,即可以显示2行,每行16个字符液晶模块(显示字符和数字)。 1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A” 。 2)1602引脚说明:

课程设计-数字音乐盒

单片机课程设计-数字音乐盒 课程设计要求:1.利用I/O口产生一定频率的方波,驱动蜂鸣器,发出不同的音调,从而演奏乐曲(最少三首乐曲,每首不少于30秒)2.采用LCD显示信息 3.开机时有英文欢迎提示字符,播放时显示歌曲序号(或名称) 4.可通过功能键选择乐曲,暂停,播放。 5.选作内容:显示乐曲播放时间或剩余时间 硬件电路:本设计中用到了89C51单片机,4*4键盘,蜂鸣器,16*2 LCD,七段 显示数码管LED。 原理说明:当键盘有键按下时,判断键值,启动计数器T0,产生一定频率的脉冲,驱动蜂鸣器,放出乐曲。同时启动定时器T1,显示乐曲播放的时间,并动LCD,显示歌曲号及播放时间。也可在LED显示歌曲号。 (1)硬件电路中用P1.0~P1.7控制按键,其中P1.0~P1.3扫描行,P1.4~P1.7扫描列。 (2)用P0.0~P0.7,P2.0~P2.7控制LED,其中P0.0~P0.7控制七段码a,b,c,d,e,f,g,用P2.0~P2.7为数码管位选信号。 (3)用,P2.0~P2.2作为LCD的RS,R/W,E的控制信号。用P0.0~P0.7作为LCD的D0~D7的控制信号。 (4)用P3.7口控制蜂鸣器。 (5)电路为12MHZ晶振频率工作,起振电路中C1,C2均为30pf。

电路图: 【试验时请仔细阅读后文说明!此图仅为我站制作,并不代表原作者意愿;若您制作成功,望在网络推广。】实验控制流程图如下:

S BIT P2.0 ;定义液晶显示端口标号 RW BIT P2.1 E BIT P2.2 ;******************************************** L50MS EQU 60H L1MS EQU 61H L250MS EQU 62H SEC EQU 65H MIN EQU 64H HOU EQU 63H ;******************************************* org 0000h ljmp main ORG 000BH LJMP TT0 ORG 001BH LJMP T1INT org 1000h main: ;-----------------------;液晶初始化 MOV SP,#70H MOV P0,#01H ;清屏 CALL ENABLE MOV P0,#38H ;8位,2行显示

数字音乐盒课程设计

基于单片机多功能数字音乐盒 《单片机原理及应用》课程设计任务书 一、目的意义 《单片机原理及应用》是高校工程专业的一门专业基础课,该门课程具有很强的实践性。通过课程的学习,使学生掌握基本概念、基本理论和基本技能,为今后从事相应的生产设计和科研工作打下一定的基础。因此,除课程的理论教学和实验教学外,课程设计也是一个必要和重要的实践教学环节。通过课程设计,进一步培养学生理论联系实际的能力,学会正确地分析工程实际问题,善于查阅参考文献,准确地选择相应的数据、参数,具备全面地解决实际问题的素质,同时课程设计也为今后的毕业设计打下基础。 二、设计时间、地点、班级 时间:第16、17周(二周) 地点:三教433 、426 班级:09电气99人 三、设计内容 (二十)基于单片机的多功能数字音乐盒的设计 1、功能描述 用A T89S52单片机的I/O口产生一定频率的方波,驱动蜂鸣器,发出不同的音调,从而演奏乐曲。 共有4乐曲,每首乐曲都由相应的按键控制,并且有开关键、暂停键、上一曲以及下一曲控制键。 按键输入电路的设计 复位电路的设计;时钟电路的设计 显示电路及驱动电路的设计;扫描模式的选择设计 系统主程序及子程序的设计;元件及元件参数的选择

前言:本设计是以AT89C51芯片的电路为基础,外部加上放音设备,以此来实现音乐演 奏控制器的硬件电路,通过软件程序来控制单片机内部的定时器使其演奏出优美动听的音乐。用户可以按照自己的喜好选择音乐并将其转化成机器码存入单片机的存储器中。对于不同型号的单片机只需要相应的改变一下地址即可。该软、硬件系统具有很好的通用性,很高的实际使用价值,为广大的单片机和音乐爱好者提供了很好的借鉴。 1、 设计原理及相关说明 设计原理:通过按键给单片机的P2口输入低电平,进而利用程序来判断是否执行某一播放功能。而利用单片机的定时器0中断来控制播放乐曲。 2.1芯片AT89C51的介绍 AT89C51是一种带4K 字节闪存可编程可擦除只读存储器(FPEROM )的低电压,高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K 字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL 高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU 和闪烁存储器组合在单个芯片中,ATMEL 的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。外形及引脚排列如图2.1 图3.2 AT89C51

数字音乐盒的设计讲解

单片机与接口技术课程设计(论文) 数字音乐盒的设计 院(系)名称电子与信息工程学院专业班级通信121班 学号120405003 学生姓名潘凤麟 指导教师高影讲师起止时间:2015.7.4—2015.7.13

课程设计(论文)任务及评语 院(系):电子与信息工程学院教研室:通信工程

摘要 单片机是把CPU、存储器和I/O接口集成在一片半导体硅片上的微型计算机。本次课程设计所设计出的数字音乐盒就是基于单片机的一个系统。它的的硬件电路部分采用Proteus软件进行设计,以AT89C51单片机作为主芯片,用其I/O口产生不同频率的方波来驱动蜂鸣器发出不同的音调,再配以LCD显示屏和4*4键盘实现必要的显示和控制。软件部分采用Keil与Proteus进行联合仿真,并用汇编语言来设计程序,把用Keil生成的HEX文件写入到单片机中即可实现设计所要求的功能。 通过Proteus与Keil的联合仿真,该数字音乐盒可播放3首不同的歌曲,并可通过LCD显示屏显示歌曲名称或序号;可通过4*4键盘实现对歌曲的选择,暂停,与播放功能,故仿真结果符合设计要求。 关键词:数字音乐盒;LCD显示屏;键盘

目录 第1章绪论 (1) 1.1 AT89C51简介 (1) 1.2 仿真环境简介 (2) 1.3本文研究内容 (3) 第2章数字音乐盒硬件电路图的设计与分析 (4) 2.1 总体设计方案分析 (4) 2.2 数字音乐盒部分电路原理说明 (4) 2.2.1 蜂鸣器驱动部分电路图与原理说明 (4) 2.2.2 LCD显示部分电路图与原理说明 (5) 2.2.3 键盘控制部分电路图与原理说明 (6) 第3章数字音乐盒的软件设计 (7) 3.1 数字音乐盒总体软件程序流程图与分析 (8) 3.2 数字音乐盒各子程序的设计与分析 (8) 3.2.1 系统初始化子程序设计与分析 (9) 3.2.2 LCD显示子程序设计与分析 (10) 3.2.3 蜂鸣器频率控制子程序设计与分析 (11) 3.2.4 键盘控制子程序设计与分析 (11) 第4章仿真结果与分析 (12) 4.1 仿真结果 (12) 4.2 仿真步骤与结果分析 (13) 第5章总结 (16) 参考文献 (17) 附录Ⅰ (18) 附录Ⅱ (19) 附录Ⅲ (20)

基于单片机STC89C52的数字音乐盒设计.doc

基于单片机STC89C52的数字音乐盒设计 一、引言 1.1设计的目的 通过课程设计,让学生熟悉单片机微机应用系统开发、研制的过程,软硬件设计的工作方法、工作内容、工作步骤。对学生进行基本技能训练,例如:组成系统、编程、调试、查阅资料、焊接电路板等。使学生理论联系实际,提高动手能力和分析问题、解决问题的能力。 1.2 设计的基本要求 (1)利用I/O口产生一定频率的方波,驱动蜂鸣器,发出不同的音调,从而演奏不同的乐曲(至少3首歌曲); (2)采用七段数码管显示当前播放的歌曲序号; (3)可通过功能键选择乐曲,暂停,播放,上一首,下一首; 扩展功能:利用一个循环跟每一个音调同步,每改变一个音调就变换一下彩灯,从而实现音乐控制彩灯的功能。 二、总体设计 2.1基本工作原理 1、播放音乐的原理 发音原理:播放一段音乐需要的是两个元素,一个是音调,另一个是音符。首先要了解对应的音调,音调主要由声音的频率决定,同时也与声音强度有关。对一定强度的纯音,音调随频率的升降而升降;对一定频率的纯音、低频纯音的音调随声强增加而下降,高频纯音的音调却随强度增加而上升。另外,音符的频率有所不同。基于上面的内容,这样就对发音的原理有了一些初步的了解。 音符的发音主要靠不同的音频脉冲。利用单片机的内部定时器/计数器0,使其工作在模式1,定时中断,只要算出某一音频的周期(1/频率),然后将此周期除以2,即为半周期的时间,利用定时器计时这个半周期时间,每当计时到后就将输出脉冲的I/O反相,然后重复计时此半周期时间再对I/O反相,就可在I/O脚上得到此频率的脉冲。

2、音符频率的产生 音符及定时器的初值: 例如:中音1(DO )的音频=523HZ,周期T=1/523s=1912s μ 定时器/计数器0的定时时间为:T/2=1912/2s μ=956s μ 定时器956s μ的计数值=定时时间/机器周期=956s μ/1s μ=956(时钟频率=12MHZ) 计算得到定时器0的初值为65536-956=64580,将初值装入T0的寄存器里,启动T0后,每计数956次后就溢出中断,进入中断服务程序后,只要将I/O 口的输出值取反,就可以得到中音1(DO )的音符音频。只要改变计数初值,就能得到不同频率的音符。表(1)是C 调各音符频率与计数初值的对照表:

数字音乐盒地设计与实现

课程设计报告 课程设计名称:微机系统综合课程设计课程设计题目:数字音乐盒的设计与实现

1 总体设计方案 1.1 题目介绍与要求 本次课程设计的任务是运用伟福Lab8000试验箱和keil软件设计并实现一个数字音乐盒,要求采用I/O产生一定频率的方波,从而驱动蜂鸣器发出不同的音调,演奏乐曲;并且需要采用七段数码管显示当前播放的歌曲序号和播放时间;还得通过数字键盘直接选择乐曲,控制选择上一曲和下一曲音乐,具有暂停和播放控制功能。 1.2设计思路 1.2.1音调的产生 频率的高低决定了音调的高低。音乐的十二平均率规定:每两个八度音(如简谱中的中音1和高音1)之间的频率相差一倍。在两个八度音之间又分为十二个半音。另外,音名A(简谱中的低音6)的频率为440Hz,音名B到C之间、E 到F之间为半音,其余为全音。由此可以计算出简谱中从低音1到高音1之间每个音名对应的频率,所有不同频率的信号都是从同一个基准频率分频得到的。 要产生音频脉冲,只要算出某一音频的周期(1/频率),然后将此周期除以2,即为半周期的时间。利用定时器计时这半个周期时间,每当计时到后就将输出脉冲的I/O反相,然后重复计时此半周期时间再对I/O反相,就可在I/O脚上得到此频率的脉冲。 利用51单片机的部定时器使其工作在计数器模式MODE1下,改变计数值TH0及TL0以产生不同频率的方法。 此外结束符和休止符可以分别用代码00H和FFH来表示,若查表结果为00H,则表示曲子终了;若查表结果为FFH,则产生相应的停顿效果。 例如频率为523Hz,其周期T=1/523=1912us,因此只要令计数器计时956us/1us=956,在每次技术956次时将I/O反相,就可得到中音DO(523Hz)。计数脉冲值与频率的关系公式如下:

STC89C51单片机的数字音乐盒设计(含代码)

HEFEI UNIVERSITY FPGA综述报告 系别电子信息与电气工程系任课教师汪济洲 班级 姓名 成绩 日期

数字音乐盒设计 摘要:本设计是一个基于STC89C51系列单片机的音乐盒,依据单片机技术原理,通过硬件电路制作以及软件编译,设计制作出一个多功能音乐盒。该音乐盒主要由按键电路、复位电路、时钟电路以及蜂鸣器组成。使用两个按键控制音乐盒,一个用来切换歌曲,另一个用来切换8路LED的变化花样,本音乐盒共有两首歌曲,花样灯花样共计4种。播放歌曲时,蜂鸣器发出某个音调,与之对应的LED亮起。本设计利用KEIL编程软件对音乐盒源程序进行编程并调试,配合PROTEUS仿真软件对硬件进行仿真调试,节约了设计时间。 关键字:音乐盒 STC89C51单片机 KEIL PROTEUS 音调

目录 1概述 (3) 1.1设计方案 (3) 1.2研究内容 (3) 1.3音乐盒的功能结构图 (3) 2硬件设计 (4) 2.1总体设计框图 (4) 2.2各部分硬件设计及其原理 (4) 2.2.1 STC89C51简介 (4) 2.2.2 LED显示电路设计与原理 (5) 2.2.3 时钟振荡电路 (5) 2.3硬件电路图及功能 (6) 3软件设计 (7) 3.1音调、节拍以及编码的确定方法 (7) 4.1.1 音调的确定 (7) 4.1.2 节拍的确定 (8) 4.1.3 编码 (9) 4.2软件程序设计 (10) 4.2.1 程序流程图及相应代码块 (10) 4.2.2 程序源代码(见附录A) (14) 5调试 (14) 5.1检查硬件连接 (14) 5.2检查软件系统 (14) 5.3测试结果 (14) 5.3.1.总体运行图 (14) 5.3.2.花样灯4种花样图 (15) 参考文献 (16) 附录A 程序源代码及注释 (16)

数字音乐盒

题目:数字音乐盒电路的设计与仿真 学生姓名: 学生学号: 系别:电子工程学院 专业:通信工程 年级: 2013级 任课教师:

淮南师范学院电子工程学院通信工程专业《单片机系统设计与Proteus仿真》课程论文 数字音乐盒电路的设计与仿真 学生: 指导教师: 电子工程学院通信工程专业 1项目概括 本设计是一个基于AT89C51系列单片机的音乐盒,依据单片机技术原理,通过硬件电路制作以及软件编译,设计制作出一个多功能音乐盒。该音乐盒主要由按键电路、复位电路、时钟电路以及蜂鸣器组成。使用两个按键控制音乐盒,一个用来切换歌曲。播放歌曲时,蜂鸣器发出某个音调,与之对应的LED亮起。本设计利用KEILC编程软件对音乐盒源程序进行编程并调试,配合PROTEUS 仿真软件对硬件进行仿真调试,节约了设计时间。 (1)利用I/O口产生一定频率的方波,驱动蜂鸣器,发出不同的音调,从而演奏乐曲 (2)可通过功能键选择乐曲,暂停,播放。 2 系统原理 2.1芯片AT89C51的介绍 AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROM-Flash Programmable and Erasable Read Only Memory)的低电压,高性能CMOS -8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL 的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

数字音乐盒实验报告

《单片机与接口设计》课程设计报告 题目数字音乐盒 学号130803023 130803088 130803100 姓名胡杰张宏朱子龙 年级专业13级通信工程 指导教师黄云飞 完成日期2016 年 3 月 4 日 安徽师范大学物理与电子信息学院 College of Physics and Electronic Information, Anhui Normal University

物理与电子信息学院课程设计评定意见 注:本页与上一页用A3纸套印成封面和封底,课程设计报告正文用A4纸打印然后装订

课程设计划任务书 通信工程系通信工程专业 学生姓名朱子龙班级13级学号:130803100 学生姓名胡杰班级13级学号:130803023 学生姓名张宏班级13级学号:120803088 课程名称:单片机原理与接口技术 设计题目:数字音乐盒 课程设计内容与要求: 课程设计开始日期2016 年1 月14 日指导教师黄云飞课程设计结束日期2016 年 3 月 4 日

数字音乐盒 摘要:本设计是基于单片机的数字音乐盒设计,由单片机AT89C51芯片和LCD显示器为 核心,辅以必要的电路,构成的一个单片机电子数字音乐盒。要求利用I/O口产生一定频率的方波,驱动蜂鸣器,发出不同的音调并采用LCD显示信息,从而演奏乐曲(最少三首乐曲,每首不少于30秒),开机时有英文欢迎提示字符,播放时显示歌曲序号(或名称),可通过功能键选择乐曲,暂停,播放。 本设计采用4*4键盘,用Protel99来画系统硬件图,采用汇编语言进行编程,编程后利用KEIL C51来进行编译,再生成的HEX文件装入芯片中,采用proteus软件来仿真,检验功能得以正常实现。该音乐盒的设计可以通过按键选择不同的曲目,播放和暂停,并通过LCD显示歌曲号及播放时间。 本设计键盘采用动态扫描方式。每次扫描一行键盘,送此行低电平,读输入口的状态值,判断有没有键按下。若有键按下,根据读入口的值选择显示值并送至显示值寄存单元,判断键值,启动计数器T0,根据次值为偏移地址找到要选择的音乐的代码的首地址,根据代码产生一定频率的脉冲,驱动蜂鸣器,放出音。同时启动定时器T1,计算音乐的播放的时间。 关键词:数字音乐盒;AT89C51;KEIL;PROTEUS;数码管

电子音乐盒(单片机课程设计)

^ 电子音乐盒 1、设计任务和要求 (1) 2、总体设计 (1) 3、硬件设计 (2) 硬件电路 (2) 原理说明 (2) 4、软件设计 (3) 5、仿真、安装和调试 (3) 【 6、收获与体会 (4) 参考文献 (5) 附件1:元件清单 (6) 附件2: 总电路图 (7) 附件3:音乐程序 (8) ,

音乐盒设计 1、设计任务和要求 (1)利用I/O口产生一定频率的方波,驱动蜂鸣器,发出不同的音调,从而 演乐曲(内存两首乐曲)。 (2)采用七段数码管显示当前播放的歌曲序号。 (3)可通过功能键选择乐曲,暂停,播放,上一曲,下一曲。 2、总体设计 (1)要产生音频脉冲,只要算出某一音频的周期(1/音频),然后将此周期除以2,即为半周期的时间,利用定时器计时这个半周期时间,每当计时到后就将输出脉冲的I/O反相,然后重复计时此半周期时间再对I/O口反相,就可在I/O脚上得到此频率的脉冲 (2)利用8051的内部定时器使其工作在计数器模式MODE1下,改变记数值TH0及TL0以产生不同频率的方法。例如频率为523HZ,其周期T=1/523=1912微秒,因此只要令计数器定时956/1=956在每记数9次时将I/O口反相,就可得到中音D0(523HZ)。 记数脉冲值与频率的关系公式如下: N=Fi/2/Fr N:记数值 Fi:内部计时一次为1微秒.故其频率为1MHZ Fr;要产生的频率 (3):起记数值的求法如下: T=65536-N=65536-Fi/2/Fr 例如:设K=65536,F=1000000=Fi=1MHZ,求低音D0(523HZ),高音的D0(1046HZ)的记数值。 T=65536-N=65536-Fi/2/Fr=65536-1000000/2/Fr=65536-500000/Fr

单片机数字音乐盒设计

单片机数字音乐盒设计 摘要:本设计是采用单片机为核心设计的数字音乐播放器。它可以实现音乐的播放,可以通过功能键来选择乐曲,播放或暂停,上一曲或下一曲,并可以通过LCD屏幕显示正在播放的歌曲的序号,以及播放时间。开机时有英文欢迎提示字符。本音乐播放器可以播放十首歌曲。 主控芯片采用AT89C51,采用汇编语言进行编程,编程后利用KEIl C51进行编译,用Proteus软件来仿真。 关键词:数字音乐盒;单片机;智能化 Digital Music Box Design CHENYING Instructor:HUKEYONG Abstract:This design is using microcontroller as the core design of the digital music player . It can play music. It can function keys to select a song, play or pause on one or the next one. and the serial number of the song that is playing, as well as play time can be displayed through the LCD screen. English boot welcome prompt characters. The music player can play ten songs. The master chip is AT89C51, assembly language is programming, programming by KEIl C51 compile,then using Proteus software to simulate. Key words:Digital Music Box, SCM, Intelligent

数字音乐盒

数字音乐盒 单片机课程设计报告 数字音乐盒 摘要 本设计是基于51系列的单片机进行的数字音乐盒的设计,可以完成演奏音乐,显示乐曲播放的时间,并驱动LCD,显示歌曲号及播放时间,也可在LED显示歌曲号。 音乐盒的设计过程在硬件与软件方面进行同步设计。硬件方面从功能考虑,首先选择内部存储资源丰富的AT89C51单片机,输入采用4×4矩阵键盘,显示采用七段显示数码管LED。软件方面从分析音乐盒功能、流程图设计,再到程序的编写进行系统设计。 设计的结果能够完成演奏乐曲(最少三首乐曲,每首不少于30秒),开机时有英文欢迎提示字符,播放时显示歌曲序号(或名称),可通过功能键选择乐曲,暂停,播放。在设计的同时对单片机的理论基础和外围扩展知识进行了比较全面准备。在硬件与软件设计时,没有良好的基础知识和实践经验会受到很大限制,每项功能实现时需要那种硬件,程序该如何编写等,没有一定的基础就不可能很好的实现。 具体实现功能: 1.利用I/O口产生一定频率的方波,驱动蜂鸣器,发出不同的音调,从而 演奏乐曲(最少三首乐曲,每首不少于30秒)。 2(采用LCD显示信息。 3(开机时有英文欢迎提示字符,播放时显示歌曲序号(或名称)。 4(可通过功能键选择乐曲,暂停,播放。

5(显示乐曲播放时间或剩余时间。 目录 1概 述 ..................................................................... .. (3) 1.1单片机总体功能简介...................................................................... . (4) 1.2输入键盘功能综 述 ..................................................................... .. (4) 1.3 输出LED显示功能综 述 ..................................................................... ....... 4 2系统总体方案及硬件设 计 ..................................................................... (7) 2.1系统设计要 求 ..................................................................... . (7) 2.2总体设计方 案 ..................................................................... . (7) 2.3系统硬件设 计 .....................................................................

基于单片机的数字音乐盒

山东建筑大学 课程设计说明书 题目:基于单片机的数字音乐盒 课程:单片机原理及应用B课程设计院(部):信息与电气工程学院 专业:电子信息工程 班级: 学生姓名: 学号: 指导教师:高焕兵张君捧 完成日期: 2013年6月

目录 摘要 .................................................................... I 1 设计目的 (2) 2 设计要求 (2) 3 设计内容 (3) 3.1 设计原理 (3) 3.2 方案设计 (3) 3.3 电路各模块说明 (4) 3.4 器件选择 (6) 3.5.系统设计 (8) 3.6 软件设计 (8) 3.7 仿真调试及操作说明 (9) 总结与致谢 (10) 参考文献 (11) 附录 (12) 附录一:基于单片机的数字音乐盒总电路图 (12) 附录二:音乐程序 (12)

山东建筑大学信息与电气工程学院学院课程设计说明书 摘要 20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,基于单片机制作的电子式音乐盒,控制功能强大,可根据需要选歌,使用方便。所放歌曲的节奏可以根据需要进行设置,根据存储容量的大小,可以尽可能多的存储歌曲。 本设计由由单片机AT80C51芯片和LCD显示器为核心,辅以必要的电路,构成的一个单片机电子数字音乐盒。本设计采用4*4键盘,用Protel99来画系统硬件图,采用C语言进行编程,编程后利用KEIL C51来进行编译,再生成的HEX文件装入芯片中,采用proteus软件来仿真,检验功能得以正常实现。 关键词:单片机;音乐盒;电路;播放

数字音乐盒的设计

电子技术课程设计 《数字音乐盒》 课程设计报告 院(系)名称信息工程学院 专业班级10级测控技术与仪器 学号100119066 学生姓名刘祖林 指导教师杨全玖

目录 第一章摘要 (2) 第二章概述 (3) 第一节单片机总体功能简介 (3) 第二节AT89C51芯片功能和硬件 (4) 第三节功能键介绍 (6) 第三章系统总体方案及硬件设计 (7) 第一节系统设计要求 (7) 第二节总体设计方案 (7) 第三节系统硬件设计 (7) 第四节软件设计 (8) 第四章程序设计流程图 .......................... 错误!未定义书签。第五章P ROTEUS功能仿真 (12) 总结 ........................................................ 错误!未定义书签。致谢 . (15) 附1原程序代码 (16) 附2系统原理图 (22)

第一章摘要 本设计是基于51系列单片机,蜂鸣器,数码管LED的数字音乐盒设计,通过利用I/o一定频率的方波,驱动蜂鸣器,发出不同的音调,从而演奏各种乐曲(本设计为四首,若有必要,可以增加),可以通过功能键来选择乐曲,暂停,播放,前进,后退等功能。 音乐盒的电路设计过程在硬件与软件方面进行同步。其中,硬件方面选择内部存储资源丰富的AT89C51单片机,时钟采用12MHZ晶体振荡电路。软件方面,从分析电路各个功能子模块的功能、流程图设计,在到程序的编写设计均进行了综合的考虑。编成语言从程序总体设计以及高效性的硬件方面考虑,采用汇编语言进行编写。 在设计的同时对单片机的理论基础和外围扩展知识进行了比较全面复习与准备。在硬件与软件设计时,没有良好的基础知识和实践经验会受到很大的限制,每项功能实现时需要那种硬件,程序该如何编写,如何调试等,没有一定的基础就不可能很好的实现。具体实现功能: 1、利用I/O一定频率的方波,驱动蜂鸣器,发出不同的音调, 从而演奏各种乐曲 2、采用LED显示信息 3、播放时显示歌曲序号 4、可通过功能键选择乐曲,暂停,播放。

基于51单片机数字音乐盒的设计毕业设计

单片机实物设计题目: 单片机音乐盒设计

毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作者签名:日期: 指导教师签名:日期: 使用授权说明 本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:日期:

学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。 作者签名:日期:年月日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 涉密论文按学校规定处理。 作者签名:日期:年月日 导师签名:日期:年月日

基于单片机STC89C52的数字音乐盒设计

目录 1 引言 (2) 2 设计目的与要求 (2) 2.1设计的目的 (2) 2.2 设计的基本要求 (2) 3 总体设计 (2) 3.1 基本工作原理 (2) 3.1.1播放音乐的原理 (2) 3.1.2音符频率的产生 (2) 3.1.3节拍频率的产生 (4) 3.2硬件总体设计 (5) 3.3软件总体设计 (5) 4 硬件设计 (6) 4.1单片机芯片的引脚及部分功能 (6) 4.2 各个模块的硬件电路设计 (7) 4.2.1时钟复位电路 (7) 4.2.2按键输入电路 (7) 4.2.3显示电路 (8) 4.2.4音频输出电路 (8) 4.2.5彩灯控制电路 (9) 5 软件设计 (9) 6 仿真、调试电路 (10) 存在问题和解决方法 (10) 总结与体会 (10) 致谢 (10) 参考文献 (11)

实物图: (11) 附录: (11) 1 引言 乐曲演奏广泛用于自动答录装置、手机铃声、集团电话、及智能仪器仪表设备。实现方法有许多种,在众多的实现方法中,以纯硬件完成乐曲演奏,随着FPGA集成度的提高,价格下降,EDA设计工具更新换代,功能日益普及与流行,使这种方案的应用越来越多。 2 设计目的与要求 2.1设计的目的 通过课程设计,让自己熟悉单片机微机应用系统开发、研制的过程,软硬件设计的工作方法、工作内容、工.作步骤。对自己进行基本技能训练,例如:组成系统、编程、调试、查阅资料、焊接电路板等。使理论联系实际,提高动手能力和分析问题、解决问题的能力。 2.2 设计的基本要求 (1)利用I/O口产生一定频率的方波,驱动蜂鸣器,发出不同的音调,从而演奏不同的乐曲(至少3首歌曲); (2)采用七段数码管显示当前播放的歌曲序号; (3)可通过功能键选择乐曲,暂停,播放,上一首,下一首; 扩展功能:利用一个循环跟每一个音调同步,每改变一个音调就变换一下彩灯,从而实现音乐控制彩灯的功能。 3 总体设计 3.1 基本工作原理 3.1.1播放音乐的原理 发音原理:播放一段音乐需要的是两个元素,一个是音调,另一个是音符。首先要了解对应的音调,音调主要由声音的频率决定,同时也与声音强度有关。对一定强度的纯音,音调随频率的升降而升降;对一定频率的纯音、低频纯音的音调随声强增加而下降,高频纯音的音调却随强度增加而上升。另外,音符的频率有所不同。基于上面的内容,这样就对发音的原理有了一些初步的了解。 音符的发音主要靠不同的音频脉冲。利用单片机的内部定时器/计数器0,使其工作在模式1,定时中断,只要算出某一音频的周期(1/频率),然后将此周期除以2,即为半周期的时间,利用定时器计时这个半周期时间,每当计时到后就将输出脉冲的I/O反相,然后重复计时此半周期时间再对I/O反相,就可在I/O脚上得到此频率的脉冲。 3.1.2音符频率的产生 音符及定时器的初值: 例如:中音1(DO)的音频=523HZ,周期T=1/523s=1912 定时器/计数器0的定时时间为:T/2=1912/2=956 定时器956的计数值=定时时间/机器周期=956/1=956(时钟频率=12MHZ)

相关文档
最新文档