山燕大学简易电子琴的设计--本科毕业设计.doc
《山燕大学简易电子琴的设计--本科毕业设计.doc》由会员分享,可在线阅读,更多相关《山燕大学简易电子琴的设计--本科毕业设计.doc(26页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、燕 山 大 学 课 程 设 计 说 明 书 燕山大学 课 程 设 计 说 明 书 题目: 简易电子琴 学院(系): 电气工程学院 年级专业: 精仪一班 燕山大学课程设计(论文)任务书院(系):电气工程学院 基层教学单位:仪器科学与工程系 学 号学生姓名专业(班级)精仪一班设计题目简易电子琴设计技术参数设计一简易电子琴,按下不同按键,能够发出不同的声音。通过每个按键的控制使单片机系统输出不同频率的脉冲,经过扬声器发出不同频率音调。演奏一首歌曲。设计要求设计电子琴的键盘电路(包括硬件电路);编制相应的程序。工作量设计的内容满足课程设计的教学目的与要求,设计题目的难度和工作量适合学生的知识和能力状况
2、,工作量饱满。工作计划查阅资料进行设计准备、设计硬件电路、编制程序,编制程序、验证设计、撰写任务书。参考资料单片微型计算机接口技术及其应用 张淑清 国防工业出版社单片机应用技术汇编指导教师签字基层教学单位主任签字说明:此表一式四份,学生、指导教师、基层教学单位、系部各一份。 2013.7.6目录摘要 31电子琴的发声原理51.1发声原理 51.2 单片机实现简易电子琴原理及代码值的计算52程序的设计思想及执行流程82.1 主程序的流程 82.2 单发音子程序的执行流程112.3 播放歌曲子程序的执行流程 113硬件系统连接 133.1 89c51芯片简介 133.2 蜂鸣器的电路连接及实现 1
3、43.3 4X4矩阵键盘 154总结17参考文献24摘要:单片机是大规模集成电路技术发展的产物,具有高性能、高速度、体积小、价格低廉、稳定可靠等特点。单片机的应用相当广泛,从平常的家用电器到航天系统和国防军事、尖端武器都能找到它的身影。因此,单片机的开发应用已成为高科技和工程领域的一项重大课题。随着社会的发展进步,音乐逐渐成为我们生活中很重要的一部分。本论文设计一个基于单片机的简易电子琴。我们对于电子琴如何实现其功能,如音色选择、声音强弱控制、节拍器、自动放音功能等等也很好奇。电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵
4、活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本文的主要内容是用AT89S51单片机为核心控制元件,设计一个电子琴。以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键和扬声器。本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有一定的实用和参考价值。关键词:单片机 电子琴 节拍器 自动放音1、电子琴的发声原理11电子琴发声原理电子琴既可以演奏不同的曲调,又可以发出强弱不同的声音,还可以模仿二胡、笛子、钢琴、黑管以及锣鼓等不同乐器的声音。那么,电子琴的发音原理是怎样的?大家知道,当物体振动时,能够发出声音
5、。振动的频率不同,声音的音调就不同。在电子琴里,虽然没有振动的弦、簧、管等物体,却有许多特殊的电装置,每个电装置一工作,就会使喇叭发出一定频率的声音。当按动某个琴键时,就会使与它对应的电装置工作,从而使喇叭发出某种音调的声音。电子琴的音量控制器,实质上是一个可调电阻器。当转动音量控制器旋扭时,可调电阻器的电阻就随着变化。电阻大小的变化,又会引起喇叭声音强弱的变化。所以转动音量控制旋扭时,电子琴发声的响度就随之变化。当乐器发声时,除了发出某一频率的声音基音以外,还会发出响度较小、频率加倍的辅助音谐音。我们听到的乐器的声音是它发出的基音和谐音混合而成的。不同的乐器发出同一基音时,不仅谐音的数目不同
6、,而且各谐音的响度也不同。因而使不同的乐器具有不同的音品。在电子琴里,除了有与基音对应的电装置外,还有与许多谐音对应的电装置,适当地选择不同的谐音电装置,就可以模仿出不同乐器的声音来。1.2 单片机实现简易电子琴原理及代码计算本课程设计的题目为简易电子琴的设计,通过编程控制蜂鸣器脉冲的频率和有效信号的长度,可实现如下的功能:一:4*4矩阵键盘的1E按键分别对应着个不同的音符,分为高低不同的14个音符,当按下某一按键,会发出相应的音调。按下按键时,扬声器会发出一定时长的声音。扬声器发声的时长是无法改变的,由程序设定。如果连续按动一个乐谱的音符所对应的按键,可以实现乐曲的演奏。二:程序中预存了音乐
7、我的中国心乐谱对应的编码,通过矩阵键盘中的“0”键触发,当在单片机处于该音乐播放模式时,可以通过按键“F”和“E”对该音乐的播放进行暂停、播放和停止操作等控制。代码值的计算不同的音符对应着不同的频率,我们可以利用不同的频率的组合,来实现不同的音符的组合,即可构成我们所想要的音乐了。假如发生装置为脉冲型的蜂鸣器,将其连接在P1.0上。按每个音符对应的频率和拍长对P1.0施以有效的脉冲信号,即可实现对应的音乐。而对于单片机来说产生不同的频率和一定长度的脉冲信号是非常方便,我们可以利用单片机的定时/计数器来产生这样方波频率信号,调用一个可编程的延时函数即可控制声音的长度。因此,只需将一首歌的音阶和频
8、率即拍长相对应即可。利用定时器计时半周期时间,每当计时终止后就将P1.0反相,然后重复计时再反相。就可在P1.0引脚上得到此频率的脉冲。若要产生音频脉冲,只要算出某一音频的周期(1/频率),再将此周期除以2,即为半周期的时间。利用AT89S52的内部定时器使其工作计数器模式工作方式1下,改变计数初值以产生不同频率的方法产生不同音阶,下面将具体介绍音符频率的计算方法。计数脉冲值与频率的关系式(如式2-1所示)是: N12 2 (式1-1) 式中,N是产生需要脉冲所需的计数值,是单片机的晶振频率(本实验箱的晶体振荡器为5MHz),是想要产生的频率;相应的计数初值T的求法如下: T65536N (式
9、1-2) 以音符DO为例,详述得到对应的频率所需的计数初值:本次课程设计所使用的实验箱上的单片机晶振为6Hz,对应的每次计数时间间隔为2us,低音DO对应的频率为262Hz,其周期T1/2623817s。低音DO(261Hz)、中音DO(523Hz)、高音DO(1046Hz)的计数值。T65536N65536/12/ /2655366000000/12/65536250000/ 低音DO的T65536250000/26264582 中音DO的T65536250000/52365058 高音DO的T65536250000/104665297我们要为这个音符建立一个表格,单片机通过查表的方式来获得
10、相应的数据,单片机6MHZ晶振,高中低音符与计数T0相关的计数值如表1所示:音符频率(HZ)代码值(T)音符频率(HZ)代码值(T)低1DO26264582中 5 SO78465217低2RE29464686中 6 LA88065252低 3 M33064779中 7 SI98865283低 4 FA34964820高 1 DO104665297低 5 SO39264898高 2 RE117565323低 6 LA44064968高 3 M131865346低 7 SI49465030高 4 FA139765357中 1 DO52365058高 5 SO156865377中 2 RE58765
11、110高 6 LA176065394中 3 M65965157高 7 SI196765409中 4 FA69865178表1-1 音符频率表音乐的音拍为基本的发声时长,一个节拍为单位(C调)相应的时长如表1-2所示: 曲调值DELAY曲调值DELAY调4/4125ms调4/462ms调3/4187ms调3/494ms调2/4250ms调2/4125ms表2-1 曲调值表Error! No bookmark name given. 对于不同的曲调,本课程设计采用的是调用延时子程序的,控制定时器的启动与关闭,进而时长的方法来实现的。2程序的设计思想及执行流程2.1主程序的流程主程序的执行流程如图2
12、-1所示,其中包含的功能及其子程序有:一、键盘扫描:检测是否有键按下,有键按下则记录按下键的键值,并跳转至功能转移程序;无键按下,则返回键盘扫描程序继续检测;二、多功能的实现:对检测到得按键值进行判断,是单独发音按键则跳转至单发音子程序,是歌曲播放键“0”键则跳转连续发音子程序,即开始弹奏我的中国心;单发音子程序:根据检测到得按键值,查询音律表,给计时器T0赋值,同时调用固定时长的延时子程序,发出相应频率的及时长的声音,之后自动返回至键盘扫描程序,继续等待是否有键按下;播放歌曲程序:检测到按键按下的是歌曲播放键“0”键时执行该程序,单片机自动播放事先已经存放好的歌曲,同时每隔一定时间扫描一次键
13、盘,检测是否有暂停键“F”或停止键“E”按下,有则处理相应的子功能。歌曲播放完毕之后自动返回至键盘扫描程序,继续等待是否有键按下。开始初始化:设置定时器工作方式,使能中断键盘扫描程序否有键按下否是延时去抖动识别按键功能是否是歌曲播放键“0”否根据按键值,调用单发音子程序,播放键入音符是调用连续放心子程序,播放歌曲返回键盘扫描程序图2-1 主程序流程图2.2 单发音子程序的执行流程根据检测到得按键值,查询音律表,给计时器T0赋值,同时调用固定时长的延时子程序,发出相应频率的及时长的声音,之后自动返回至键盘扫描程序,继续等待是否有键按下,执行流程如图3-2所示单发音子程序根据键值查音律表将代码值转
14、入定时器T0 使能TR0,开始发声调用固定时长延时子程序返回键盘扫描程序图2-2 单发音子程序流程图图2.3 播放歌曲子程序的执行流程检测到按键按下的是歌曲播放键“0”键时执行该程序,单片机自动播放事先已经存放好的歌曲,同时每隔一定时间扫描一次键盘,检测是否有暂停键“F”或停止键“E”按下,有则处理相应的子功能。歌曲播放完毕之后自动返回至键盘扫描程序,继续等待是否有键按下。执行流程如图3-3所示:播放歌曲子程序 取歌谱地址取对应音符的代码值和拍数 是是否为停止码0 返回键盘扫描否赋值定时器T1;赋值延时子程序参数 延时 扫描键盘 否歌曲计数器加一,准备取下一歌曲音符代码是否有键按下是扫描键盘是
15、是否暂停键“F”否否是否停止键“E”是返回键盘扫描图3-3 自动播放歌曲程序流程图3硬件系统连接3.1 89C51芯片简介功能描述(1) AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 大学 简易 电子琴 设计 本科 毕业设计
限制150内