电子琴课程设计.docx
- 文档编号:25463226
- 上传时间:2023-06-09
- 格式:DOCX
- 页数:12
- 大小:236.72KB
电子琴课程设计.docx
《电子琴课程设计.docx》由会员分享,可在线阅读,更多相关《电子琴课程设计.docx(12页珍藏版)》请在冰豆网上搜索。
电子琴课程设计
摘要
随着电子技术的发展,电子技术正在逐渐改善着人们的学习、生活、工作,电子技术与音乐的结合正在不断加深。
因此开发本系统希望能够给人们多带来一点生活上的乐趣。
电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。
本文的主要内容是用AT89C51单片机为核心控制元件,设计一个电子琴。
以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键和扬声器。
本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有一定的实用和参考价值。
关键词:
AT89C51,矩阵键盘,LED显示管,扬声器。
摘要..............................................................................................................................
目录.............................................................................................................................
1引言.........................................................................................................................1
1.1研究背景及意义.........................................................................................1
1.2研究现状和发展趋势.................................................................................1
2硬件设计.............................................................................................................2
2.1总体设计方案..............................................................................................2
2.2电子琴组成原件的概述...........................................................................2
3软件设计...............................................................................................................4
3.1keil软件的任务.............................................................................................4
3.2proteus的界面实现.......................................................................................6
4系统调试与实验................................................................................................7
4.1程序调试........................................................................................................7
4.2硬件调试........................................................................................................7
5总结.........................................................................................................................8
参考文献....................................................................................................................9
1引言
1.1:
研究背景及意义
基于当前市场上的玩具市场需求量大,其中电子琴就是一个很好的应用方面。
单片机技术使我们可以利用软硬件实现电子琴的功能,从而实现电子琴的微型化,可以用作玩具琴、音乐转盘以及音乐童车等等。
鉴于传统电子琴可以用键盘上的“k0”到“k16”键演奏从低So到高DO等16个音,从而可以用来弹奏喜欢的乐曲。
该设计具有以下优点:
(1)可以随意弹奏想要表达的音乐;
(2)制作简单,成本低。
(3)比传统电子琴功能更完善。
1.2研究现状和发展趋势
单片机出现的历史并不长,但发展十分迅猛,在集成度、功能、速度、可靠性、应用领域等全方位向更高水平发展。
目前单片机已用于工业控制、机电一体化设备、仪器仪表、信号处理、现代兵器、交通能源、商用设备、医疗设备及家用电器等各个领域,随着单片机性能的不断提高,它的应用将会更加广泛。
随着社会的进步,音乐逐渐成为我们生活中很重要的一部分。
电子琴及其音乐播放器是自弹音乐和播放储存音乐为一体。
我们对于电子琴如何实现其功能,如音乐选择、声音强弱控制、自动放音功能等等也很好奇。
电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。
它在现代音乐扮演者重要的角色。
随着发展我们对电子琴的要求越来越高,而随之诞生的便是电子琴与音乐播放器集一体的新型电子琴。
2硬件设计
2.1总体方案设计
本系统设计制作一个可演奏的电子琴。
综合应用了两项设计。
(1)键盘矩阵识别。
即矩阵扫描,显示当前按键。
(2)不同频率音符播放。
可以通过按键控制16种发音。
一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系正确即可。
方案设计如图所示。
图2-1方案设计流程
2.2电子琴组成原件的概述:
2.2.1AT89C51:
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。
AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
图2-2-1AT89C51结构
2.2.2矩阵式键盘:
首先判断键盘有无键按下,即把所有的行线均置为低电平,然后再检查各列线的状态,若列线不全为高电平,则表示键盘中有键被按下;若列线全为高电平,则表示键盘中无键被按下。
在确认有键被按下后,即可进入确定具体闭合键的过程。
判断闭合键的位置,其方法是依次将行线置于低电平,在逐行检查各列线的电平状态。
若某列为低,则该列线与行线交叉处就是闭合的按键。
2.2.3硬件总体设计图:
图2-2-3电路原理图
3软件设计
3.1.1keil软件的任务
若要产生音频脉冲,只要算出某一音频的周期(1/频率),再将此周期除以2,即为半周期的时间。
利用定时器计时半周期时间,每当计时终止后就将P1.2反相,然后重复计时再反相。
就可在P1.2引脚上得到此频率的脉冲。
利用STC89C51的内部定时器使其工作计数器模式(MODE1)下,改变计数值TH0及TL0以产生不同频率的方法产生不同音阶,例如,频率为524Hz,其周期T=1/524=1912μs,因此只要令计数器计时956μs/1μs=956,每计数956次时将I/O反相,就可得到中音DO(524Hz)。
计数脉冲值与频率的关系式是:
N=fi÷2÷fr
式中,N是计数值;fi是机器频率(晶体振荡器为12MHz时,其频率为1MHz);fr是想要产生的频率。
其计数初值T的求法如下:
T=65536-N=65536-fi÷2÷fr
例如:
设K=65536,fi=1MHz,求低音DO(262Hz)、中音DO(524Hz)、高音DO(1046Hz)的计数值。
T=65536-N=65536-fi÷2÷fr=65536-1000000÷2÷fr
=65536-500000/fr
低音DO的T=65536-500000/262=63628
中音DO的T=65536-500000/524=64580
高音DO的T=65536-500000/1046=65058
单片机12MHZ晶振,高中低音符与计数T0相关的计数值如表所示
表3-1-1音符频率表
音符
频率(HZ)
简谱码(T值)
音符
频率(HZ)
简谱码(T值)
休止
0
0
中4FA
698
64820
低1 DO
262
63628
中5SO
784
64898
低2 RE
294
63835
中6LA
880
64968
低3M
330
64021
中7SI
988
65030
低4FA
349
64103
高1DO
1046
65058
低5SO
392
64260
高2RE
1175
65110
低6LA
440
64400
高3M
1318
65157
低7SI
494
64524
高4FA
1397
65178
中1DO
524
64580
高5SO
1568
65217
中2RE
588
64684
高6LA
1760
65252
中3M
660
64777
高7SI
1967
65283
3.1.2Keil程序编译界面如图:
图3-1-2keil程序编译界面
3.2Proteus的界面实现.
图3-2Proteus的界面实现
按键显示
KEY0键按下,播放DO低音;(相应频率:
262)
KEY1键按下,播放RE低音;(294)
KEY2键按下,播放MI低音;(330)
KEY3键按下,播放FA低音;(349)
KEY4键按下,播放SO低音;(392)
KEY5键按下,播放LA低音;(440)
KEY6键按下,播放#6LA#;(466)
KEY7键按下,播放SI低音;(494)
KEY8键按下,播放DO中音;(524)
KEY9键按下,播放RE中音;(588)
KEYA键按下,播放MI中音;(660)
KEYB键按下,播放FA中音;(698)
KEYC键按下,播放SO中音;(784)
KEYD键按下,播放LA中音;(880)
KEYE键按下,播放#6LA;(932)
KEYF键按下,播放SI中音(988)
4系统调试与实验
4.1程序调试:
(1)Keil下编译,产生目标HEX文件,Proteus下ProgrammeFiles选择产生的HEX文件。
(2)开启本系统,该程序中设定LED灯的初始显示为0x40,如下图,
数码管显示“-”。
图4-1LED初始化
4.2硬件调试:
(3)按任意键盘,数码管显示所按下的键盘数,扬声器发出相应的音符:
将程序生成的HEX文件导入硬件电路中的单片机中,进行调试,随着按下不同的键,单片机发出不同的声音,并且LED显示所按下的键的号码。
如图:
图4-2电路实际调试
5总结
将程序导入AT89C51芯片,调试成功后,可任意弹奏自己想要的旋律。
本课题通过制作电子琴,将几个模块很好的融合起来,对使用单片机设计简易电子琴进行了分析,并介绍了基于单片机电子琴统硬件组成。
利用单片机产生不同频率来获得我们要求的音阶,最终可随意弹奏想要表达的音乐。
说明一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,于是我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可,同时通过显示模块来确知自己所弹的音符。
参考文献
[1]张毅刚.单片机原理及接口技术[M].北京:
人民邮电出版社,2008.
[2]张毅刚.单片机原理及应用[M].北京:
高等教育出版社,2004.
[3]彭伟.单片机C语言程序设计实训100例[M].北京:
电子工业出版社,2010.
[4]马忠梅等.单片机的C语言应用程序设计[M].北京:
北京航空航天大学出版社,2006.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子琴 课程设计