单片机八音盒设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机八音盒设计

     单片机课程设计—八音盒 专  业 学  号  学生姓名 ***** 指导教师 摘要 本设计是基于STC90C516RD+单片机设计的八音盒,按下按键可以演奏预先设定的歌曲旋律。通过本设计,可以学习MCS-51系列单片机定时器、外部中断、按键扫描、数码管显示以及蜂鸣器控制等程序设计,从而对51系列单片机有直观的认识。 本设计设定中7音和高7音,通过矩阵键盘可以控制蜂鸣器发出某一对应音调,可以弹奏乐曲,实现电子琴的功能。通过外部中断可实现演奏预先设定的歌曲的功能。同时,数码管动态显示歌曲对应曲目或音调对应音高。 通过反复调试,各项功能均能准确无误的实现,实现基本部分和提高部分要求。通过本次课程设计,加深了对单片机原理课程的理解,强化了责任意识,增强了团队合作,达到了预期目的和效果。 关键词:51单片机 八音盒 定时器 外部中断 按键扫描 数码管显示 一、系统整体设计 1.1 系统设计原理 1.1.1 音乐发生器设计流程及思路 在进行设计前,首先要对音乐知识有基本的理解,其次要明白单片机产生音乐脉冲的原理,最后完成硬件原理图和相关程序的设计。 音作为一种物理现象,是由于物体振动而产生的,振动产生的声波作用于人耳,听觉系统将神经冲动传达给大脑,进而产生听觉。人耳能听到的声音频率大约在11~20000Hz,而音乐中使用的音一般在27~4100Hz。 乐音体系中各音级的名称叫做音名,被广泛采用的是C D E F G A B(do re mi fa so la si则多用于歌唱,称为唱名)。乐音体系中音高关系的最小尽量单位叫做半音,两个半音构成一个全音。乐音中有几十个高低不同的音,但是最基本的只有这七个音,其他高、低音的音名都是在这个基础上变化出来的。 在乐谱表上用来表示正在进行的音的长短的符号,叫做音符。不同的音符代表不同的长度。音符有一下几种:全音符、二分音符、四分音符、八分音符、十六分音符、三十二分音符、六十四分音符。 此外,还有一种附点音符,它就是指带附点的音符,所谓附点就是记载音符右边的小圆点,表示增加前面音符时值的一半。 音持续的长短即时值,一般用拍数表示,休止符表示暂停发音。音符与节拍数之间的对应关系如表1所示。 表1 音符与节拍数之间的对应关系表 音符 节拍数 音符 节拍数 x--(全音符) 4拍 x·(附点八分音符) 3/4拍 x-(二分音符) 2拍 x·(附点十六分音符) 3/8拍 X(四分音符) 1拍 000(三分休止符) 休止3拍 X(八分音符) 1/2拍 00(二分休止符) 休止2拍 X(十六分音符) 1/4拍 0(四分休止符) 休止1拍 x·(附点四分音符) 1.5拍 0(八分休止符) 休止1/2拍 一首音乐及时由许多不同的音符组成的,而每一个音符对应着不同的频率,这样就可以利用不同的频率的组合,加以拍数对应的延时来构成不同的音乐。 1.1.2 音频脉冲和音乐节拍的实现 音乐是由不同的音乐脉冲和音乐节拍配合产生的,因此设计之前,首先要对它们进行了解。 1.1.3 音频脉冲的产生 音乐的产生需要不同频率的音频脉冲,对于单片机而言,可以利用它的定时/计数器产生这样的方波频率信号。具体地说,只要知道某一音频的频率,求得它的周期,然后将次周期除以2,得到半周期的时间,利用定时/计数器计时这半个周期,计时到后就将输出脉冲的I/O反相。就可以在I/O端口上得到此脉冲。 单片机工作在12MHz时钟频率下,其时钟周期为1us,因此可以利用89C51的内部定时/计数器T0,使其工作模式为1,工作在计数器状态下,改变计数初值TH0和TL0以产生不同频率的脉冲信号。T的值决定了计数初值TH0和TL0的值,TH0=T/256,TL0=T%256。 计数值公式如下: 式中,:单片机内部时钟周期为1us,所以其频率为1MHz。 :产生音符所需的频率。 通过上式计算,可以求得各个音符频率的计数值T。 1.1.4 音乐节拍的产生 节拍是指音乐持续的长短,是除音符之外音乐的另一关键组成部分,在单片机系统中可以通过延时来实现。 如果1/4拍的延时设为0.2s,则1拍的时间为0.8s。以此类推,可以求出其余节拍的值,节拍的延时时间值与音乐的曲调值有相对应的关系,表2所示为不同曲调下的1/4和1/8节拍的时间设定。 如果单片机要实现自己播放音乐,那么必须在程序设计中考虑到节拍的设置,在89C51中,可以用一个直接存储一个音符,其中低4位是节拍码。节拍数和节拍码的对照表如表3所示。 表2 各调

文档评论(0)

dajuhyy + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档