- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
电气与电子工程学院
《计算机原理及应用》课程设计
简易电子琴的设计
姓 名 郑通强
学 号 ——————————
班 级 电气1407
指导教师 张红
成 绩
时 间 2016年12月
目录
设计原理 1
方案设计及框图 4
调试过程与结果 6
附录(程序代码) 9
PAGE \* MERGEFORMAT- 18 -
简易电子琴的设计
PART ONE 设计原理
实验任务
要求能通过按键来模拟音符,一个按键对应一种音符,并能通过蜂鸣器或喇叭产生相应音符的声音,最后要求能完整放出一首歌,并模拟播放器音调的高低,将音调的高低通过点阵显示出来。
原理
乐曲的音程取决于声音信号的频率,不同的频率信号产生不同的音程。声音信号,可以直接通过方波输出产生。在单片机上,通过给定时器赋不同的初值,利用中断可以很容易地产生不同频率的方波信号,再用方波信号驱动蜂鸣器,即可发出不同音程的声音。播放音乐只需将不同的音符按照一定的顺序和对应的时长播放出来即可。要用点阵显示音调,在发出不同频率声音的时候,控制点阵显示不同的图案即可。
以下具体介绍各小模块的原理:
不同音调声音的产生
假设某音符的频率为f,则周期为T=1/f,要发出此音,需要定时器的定时时间为T/2,实验箱上蜂鸣器由P3.2端口控制,即需要每隔T/2时间将P3.2取反,单片机主频为12MHz,机器周期为1μs,则定时器工作在方式1,时,其初值为X,有(65536-X)*1μs= T/2= 1/2f,即:
X=65536-(10^6)/(1/2f)
查资料得各音调的频率并计算出相应的定时初值如下表:
音符音调
频率/Hz
定时初值
音符音调
频率/Hz
定时初值
低音1
262
63628
5
786
64900
低音2
294
63835
6
880
64968
低音3
330
64021
7
987
65029
低音4
349
64103
高音1
1045
65058
低音5
392
64260
高音2
1174
65110
低音6
440
64400
高音3
1318
65157
低音7
494
64524
高音4
1396
65178
1
523
64580
高音5
1568
65217
2
587
64684
高音6
1760
65252
3
659
64777
高音7
1975
65283
4
698
64820
按键控制音符的原理
要求一个按键对应一个音符,可以通过实验箱上的矩阵键盘实现。按下按键时,计算出按键的键值,通过键值将相应的定时初值赋给定时器,在按键按下时打开定时器,在按键释放后关闭定时器,就可以实现按键按下时发声,松开后停止发声。要判断按键的按下和释放,可通过与键盘电路所连端口的电压状态进行判断,例如:键盘通过P2口与单片机相连,其中P2.0-P2.3控制行,P2.4-P2.7控制列,将0FH赋给P2,按键按下时,P2的值就会发生变化,按键释放后P2又变为0FH。
键值对应的定时初值存放在表中,便于查询:
DW 64021,64103,64260,64400;低3、低4、低5、低6
DW 64524,64580,64684,64777;低7、1、2、3
DW 64820,64898,64968,65030;4、5、6、7
DW 65058,65110,65157,65178;高1、高2、高3、高4
播放音乐的原理
单片机演奏音乐基本是单音频率,它不包含相应幅度的谐波频率,也就是说不能象电子琴那样能奏出多种音色的声音,但一定要弄清楚两个概念即可,也就是“音调”和“节拍”?。?
·音调??表示一个音符唱多高的频率。上面已有讲解如何控制音调。?
·节拍??表示一个音符唱多长的时间。
通过控制每一个音符的音调和节拍,按照一定的顺序播放每一个音符,即可播放音乐。下面介绍节拍的相关原理:
在一张乐谱中,我们经常会看到这样的表达式,如1=C?4/4、1=G 4/3等等,这里1=C,1=G表示乐谱的曲调,和我们前面所谈的音调有很大的关联,4/4、3/4就是用来表示节拍的。以3/4为例加以说明,它表示乐谱中以四分音符为节拍,每一小结有三拍。比如:
其中1?、2?为一拍,3、4、5为一拍,6为一拍,共三拍。1?、2的时长为四分音符的一半,即为八分音符长,3、4的时长为八分音符的一半,即为十六分音符长,5的时长为四分音符的一半,即为八分音符长,6的时长为四分音符长。那么一拍到底该唱多长呢?一般说来,如果乐曲没有特殊说明,一拍的时长大约为400—50
文档评论(0)