基于单片机的音乐盒设计

基于单片机的音乐盒设计

ID:21868958

大小:51.50 KB

页数:5页

时间:2018-10-25

基于单片机的音乐盒设计_第1页
基于单片机的音乐盒设计_第2页
基于单片机的音乐盒设计_第3页
基于单片机的音乐盒设计_第4页
基于单片机的音乐盒设计_第5页
资源描述:

《基于单片机的音乐盒设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、基于单片机的音乐盒设计摘要:随着信息技术革命的不断深入,以及计算机技术的快速发展,单片机的应用越来越广泛了,并且已经逐渐地发展成为了一门比较关键的技术学科。本文所介绍的是一种比较简易的单片机音乐盒的设计以及其相关的实现方案,利用的是AT89C51单片机。通过乐谱的音节以及节拍混排的方式进行了一次编码,从而实现了乐曲的播放这一功能。关键词:单片机音乐盒;乐曲播放;T89C51单片机一、引言伴随着信息技术革命的不断深入,以及计算机技术的快速发展,单片机的应用越来越广泛了,并且已经逐渐地发展成为了一门比较关键的技术学科。单片机具有这样一些突出优点:体

2、积小、质量轻、耗电量小、电源比较单一、功能性强、价格低、运行速度比较快、抗干扰的能力较强、利用率高等优点。因而在通信、家电、工业中等特别是汽车等产品的应用当中都能够处处看到单片机的应用。毫不夸张的说一块单片机芯片就是一台计算机。然而因为受到单片机的这样的特殊的结构形式,使得在某些领域当中,它所承载了很多不论是大中型或者是微小型计算机都没有办法完成的一些工作,使得它有了许多方面的优点和特点,由于单片机的这些优势和优点,因而在各个领域当中,单片机都得到了飞快地发展。二、音乐盒设计大家一定都有见到过在市面上出售的各式各样的小音乐片,它们大多只通过一个

3、小小的集成电路块构成,接通了电源之后就能够发出很优美的旋律,演奏出动听的乐曲出来。然而美中不足的是这样的音乐盒只能够存储播放一个单一的曲目,不能够满足更多人的爱好。所以就有了现在的单片机的音乐盒设计,我们要设计出一个能够弥补只能播放一只相同曲目音乐片的缺陷,让它能够不仅仅是可以存储一首乐曲,最重要的是还能够根据自身的爱好以及需要通过编程将自己喜欢的乐曲纳入进去,从而来实现一个通过按键选择来选取播放曲目的功能性音乐盒。1、音乐盒的设计原理我们都知道频率决定着音调,所以根据十二平均律,有了如下的音调与频率的像对应的关系:相邻之间的两个音位半音的关系

4、,也就是说在两个音之间的频在1同2之间插入11个数组成比例的数列。它所规定的c1的频率是261.63Hz,所以#c1的频率是277.19Hz,b的频率是为246.95Hz,同样的若是想要求出它们之间各个音的频率都可以通过上述方法算出。换句话说,只要能够产生所相对应的频率震荡的信号,那么只要经过放大之后送到扬声器里,就能够听到优美动听的音乐了。但是,音乐的长短都是一定的规律组织起来的一个音的组成。所以对于音乐盒来说还必须能够控制好每个音播放的时间才行,通常情况下节拍和曲调的时间都是有其对应关系的,当我们利用AT89C51的定时,让计数器1产生乐音

5、,定时,然后计数器2对每个音播放的时间进行控制。与此同时,我们还可以计算出它们之间每一个音的一个频率,换句话说就是只要能够产生对应频率的一个振荡信号,那么经过放大后放入到扬声器当中,就能够听到相应的优美动听的曲段了,但是我们都是振荡,音乐是要通过一系列的长短不一的或者是按照相同的或者是一定的规律组织起来的一个音的组成,对于音乐盒来说还必须能够控制好每一个音播放的时间才可以。通常情况下节拍同曲调的时间之间都是有着相互对应的关系的。当我们利用AT89C51进行定时的时候,计数器1就能够产生乐音,定时,计数器2控制着每一个音播放的时间。根据节拍的不同

6、托拍的延长时间也是有着差别的。2、音乐盒设计的相关思路(1)硬件设计方面在硬件设计方面所采用的是ATMEL公司所生产出来的AT89C51单片机,这也是整个音乐盒的核心部分,所采用的是12MHz晶体,并且在P1.0口接上一个播放或者是停止的开关,P1.7口是输出音乐端口,加一级三极管放大之后就直接对扬声器进行驱动作用。(2)软件设计方面曲谱编码,节拍标记:因为曲谱不仅需要包含音名的信息,而且还要包含有节拍的信息。在此我们所采用的是一种音名同节拍混排的一种方式来对曲谱进行的编码。它的单位是字节,如果说最高位时1的话,那么就为节拍标记号,不然就以为这

7、音名标记。节拍标记号其后所有的音名一级节拍的时间,要考虑到节拍延时时间都为31250μs的整数倍,对于节拍标记来说,除了最高位以外,其它的七位所表示的就是需要延时多少个31250μs。比如说0x88所表示的是4/4拍曲谱当中的I/4拍。如果说节拍标记为0x80的话,就为曲谱结束标记,当读到这个标记的时候,即表示演奏停止了。通过将96个音分别进行分组,然后得到了八个音组:大字而组;大字一组;大字组;小字组、小字一组、小字二组、小字三组、小字四组,在每个音组当中都包含有十二个音包括了:C、#C、D、#D、E、F、#F、G、#G、A、#A、B。为此,

8、我们通过用音名标记中的底四位表示的是音名,而高四位则表示为音组。再加上休止符,将音名按照编码编写:当D1、D2、D3、D0都为零的时候音名为C;当D0

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。