单片机的简易电子琴的设计_第1页
单片机的简易电子琴的设计_第2页
单片机的简易电子琴的设计_第3页
单片机的简易电子琴的设计_第4页
单片机的简易电子琴的设计_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、东 北 石 油 大 学课 程 设 计 2010 年 7 月 31 日课 程 单片机原理及应用课程设计 题 目 院 系 电子科学学院 专业班级 学生姓名 学生学号 指导教师 东北石油大学课程设计任务书课程 单片机原理及应用课程设计题目 基于单片机的简易电子琴的设计 专业 姓名 学号主要内容、基本要求、主要参考资料等1、主要内容:根据单片机课程所学内容,结合其他相关课程知识,设计一个简易电子琴,以加深对单片机知识的理解,锻炼实践动手能力,为以后的毕业设计和工作打下坚实基础。2、基本要求:本设计以 mcs-51 系列单片机为核心,采用常用电子器件设计。要求最少 8 个按键,每个按键对应一种音调,按下

2、按键发声,松开按键后声音延迟一段时间后停止,即带余音的电子琴,延时时间可以设置,要求最少 8 个不同音调,可以采用标准的音调设计。3、主要参考资料: 1 张毅坤,陈善久.单片微型计算机原理及应用m.西安:西安电子科技大学出版社,2002. 2 张友德,赵志英,徐时亮.单片微机原理应用与实验m.上海:复旦大学出版社,2000. 3 张毅.单片机原理及应用m.北京:高等教育出版社,2003.完成期限 指导教师 专业负责人 年 月 日目录目录第 1 章 概 述.11.1 设计任务.4第 2 章 总体设计思想.22.1 简易电子琴基本原理.42.2 系统总框图.4第 3 章 硬件电路的具体设计.43.

3、1 总体电路设计.43.2 单元电路设计.4 3.3 单片机软件设计 .4 3.4 仿真结果及结果分析 .4总结.4参考文献.8附录 1 .9附录 2 .9课程设计成绩评价表 .9第一章第一章 概述概述在电子音乐领域,自从 20 世纪末期 midi(乐器数字化接口)推出和逐步规范化后,各种乐器及众多数码音视频产品中采用 midi 技术已逐渐成为一种潮流。但是当前各厂商的电子琴产品通常使用自己设计的专用音源,并且软硬件均不对外公开,阻碍了 midi 技术的交流。作者在开发基于 midi 模块的音乐发生器的过程中,进行了用单片机控制通用 midi 音源模块的相关功能制作电子琴的实践,制作出具有 8

4、 个按键的 midi 电子琴,该琴支持单音和复音弹奏,单片机以标准的 midi 波特率传送信息,通过串口连接蜂鸣器,从而获得优美的乐音。1.11.1设计任务设计任务技术指标技术指标本次设计提出了用 89c51 单片机为核心控制元件,设计一个简易的电子琴. 本方案以 89c51 单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块在主控模块上设有 16 个按键和扬声器.根据使用者的操作随意弹奏想要表达的音乐。一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的

5、定时/计数器t0 来产生这样方波频率信号。利用所给键盘的 1,2,3,4,5,6,7,8 八个键,能够发出 8 个不同的音调,并且要求按下按键发声,松开延时一段时间停止,中间再按别的键则发另一音调的声音。当系统扫描到键盘上有键被按下,则快速检测出是哪一个键被按下,然后单片机的定时器被启动,发出一定频率的脉冲,该频率的脉冲经喇叭驱动电路放大滤波后,就会发出相应的音调。如果在前一个按下的键发声的同时有另一个键被按下,则启用中断系统,前面键的发音停止,转到后按的键的发音程序,发出后按的键的音。第二章第二章 总体设计思想总体设计思想本系统采用单片机 89c51 为电子琴的控制核心,系统主要包括播放模块

6、、按键控制模块。下面对各模块的设计逐一进行论证比较。2.12.1 简易电子琴基本原理简易电子琴基本原理播放模块是喇叭构成。它几乎不存在噪声,音响效果较好。而且由于所需驱动功率较小,且价格低廉,所以,被广泛应用。 电子琴设有 8 个按键,其中 7 个作为音符输入,另外 1 个作为模式转换按键,实现用户自弹作曲。7 个按键分别代表 7 个音符,包括中音段的全部音符。通过软硬件设计,模式转换按键触发外部中断,中断使程序跳转,实现模式转换,启动电子琴。然后通过查询电子琴所按下的按键,读取电子琴输入状态,跳转到对应的程序人口,实现自编歌曲。当需要取消电子琴编曲功能时,再次按下模式转换按键引起外部中断即可

7、退出电子琴功能而返回原 来按键播放处。2.22.2 系统总框图系统总框图 图 2-2 总体硬件组成框图第三章第三章 硬件电路的具体设计硬件电路的具体设计 为使该模块化电子琴控制系统具有更加方便和灵活性,我们对系统的硬件做了精心设计。硬件电路包括中心控制模块、播放模块、按键控制模块三大模块。3.13.1 总体电路设计设计总体电路设计设计本次设计中中心控制模块是采用 89c51 单片机来控制整个系统。其中 p1 口作为输入口,连接蜂鸣器驱动电路,而 p2 口连接按键控制电路, 从而实现播放音乐的功能。3.23.2 单元电路设计单元电路设计3.2.13.2.1 播放电路设计播放电路设计如下图所示,播

8、放模块其实就是喇叭,它接到 p1.0 口上当有按键按下时,它就会发出声音。中心控制模块 at89c51按键控制模块播放模块 喇叭 按 键 状 态 图 3-2-1 播放模块硬件连接图3.2.23.2.2 按键控制模块的硬件设计按键控制模块的硬件设计在 p.2 口十连有 8 个按键并加有 8 个拉电阻。它们一端接 5 伏电源,一端接地。在仿真时,只要有一个键被按下,并被单片机扫描到,则会使播放器发出声音。ls1speaker 图 3-2-2 按键控制连接图3.2.33.2.3 主控模块最小系统主控模块最小系统主控系统为目前主流的 89c51 单片机,51 系列优点之一是它从内部的硬件到软件有一套完

9、整的按位操作系统,称作位处理器,或布尔处理器。它的处理对象不是字或字节而是位。它不光能对片内某些特殊功能寄存器的某位进行处理,如传送、置位、清零、测试等,还能进行位的逻辑运算,其功能十分完备,使用起来得心应手。图 3-2-3 主控模块最小系统图3.33.3 单片机软件设计单片机软件设计软件是该电子琴控制系统的重要组成部分,在系统的软件设计中我们也才用了模块化设计,将系统的各部分功能编写成子模块的形式,这样增强了系统软件的可读性和可移植性。3.3.13.3.1 下位机软件流程下位机软件流程本系统中下位机(单片机 89c51)的主要功能就是实现音乐播放功能。其主程序流程如图 4-1 所示。图 3-

10、3-1 软件程序流程图3.3.23.3.2 上位机软件上位机软件 本系统的上位机软件主要是编辑电子琴播放状态的内容,在设计中采用汇编语言编写了电子琴控制系统控制和播放内容的程序。 org 0000h ljmp main org 000bh ljmp int_t0 org 0100hmain: mov sp,#60h ;初始化堆栈指针 mov 30h,#00 ;定时器初值清零 mov 31h,#00 mov p1,#0ffh ;设置 p1 口为输入模式 mov tmod,#01h ;设置定时器 0 为工作模式 1 setb et0 ;开定时器 0 中断 setb ea ;开总中断 clr tr0

11、 ;关闭定时器 0 start: mov r0, p2 cjne r0,#0ffh,key1 ;键盘扫描 clr tr0 sjmp startkey1: cjne r0,#0feh,key2 ;k1 键按下 mov 30h,#0fbh ;设置音阶 1 mov 31h,#0e9h ljmp set_timerkey2: cjne r0,#0fdh,key3 ;k2 键按下 mov 30h,#0fch ;设置音阶 2 mov 31h,#5ch ljmp set_timerkey3: cjne r0,#0fbh,key4 ;k3 键按下 mov 30h,#0fch ;设置音阶 3 mov 31h,#

12、0c1h ljmp set_timerkey4: cjne r0,#0f7h,key5 ;k4 键按下 mov 30h,#0fch ;设置音阶 4 mov 31h,#0efh ljmp set_timerkey5: cjne r0,#0efh,key6 ;k5 键按下 mov 30h,#0fdh ;设置音阶 5 mov 31h,#045h ljmp set_timerkey6: cjne r0,#0dfh,key7 ;k6 键按下 mov 30h,#0fdh ;设置音阶 6 mov 31h,#92h ljmp set_timerkey7: cjne r0,#0bfh,key8 ;k7 键按下

13、mov 30h,#0fdh ;设置音阶 7 mov 31h,#0d6h ljmp set_timerkey8: cjne r0,#7fh,nokey ;k8 按下 mov 30h,#0fdh ;设置音阶 8 mov 31h,#0fbhset_timer: setb tr0 ;发声 sjmp startnokey: clr tr0 ;无键按下 sjmp startint_t0: ;t0 中断服务程序 mov th0,30h ;定时器赋初值 mov tl0,31h cpl p1.0 ;输出方波 reti end3.43.4 仿真结果及结果分析仿真结果及结果分析3.4.13.4.1 使用的仪器仪表使

14、用的仪器仪表 单片机仿真器keilc蜂鸣器 ls13.4.23.4.2 系统调试系统调试根据系统设计方案,本系统的调试共分为三大部分:硬件调试,软件调试和软硬件联调。由于在系统设计中采用模块设计法,所以方便对各电路模块功能进行逐级测试:中心控制模块的调试,音乐播放模块的调试,按键控制模块的调试等,最后将各模块组合后进行整体测试。3.4.33.4.3 硬件调试硬件调试对各个模块的功能进行调试,主要调试各模块能否实现指定的功能。3.4.43.4.4 软件调试软件调试 软件调试采用单片机仿真器 keilc 及微机,将编好的程序进行调试,主要是检查语法错误。3.4.53.4.5 硬件软件联调硬件软件联

15、调 将调试好的硬件和软件进行联调,主要调试系统的实现功能。3.4.53.4.5 测试结果测试结果此次系统设计结果较好,分别播动 8 个按键会发出 8 种高低不同的声音,如果送入音乐程序,则会播放歌曲。总结总结 经过两周的忙碌,我的电子琴终于仿真成功。虽然失败了几次,但经过老师对硬件连接图的纠正,自己又调整了程序最后终于仿真成功。心情很激动,一方面:觉得很有成就感;另一方面:收获很大,不但锻炼了编程的能力,而且通过编程对硬件的整个流程了解了。在仿真过程中,我犯了两个低级错误:一个是用了没有模型的元件,另一个是喇叭可以不用驱动就能发出声音。经老师提醒,我改正了连接图,结果成功了。用单片机控制播放模

16、块和按键控制模块制作出的电子琴,结构简单,可靠性高,并且价格低廉,具有实用的价值。这种电子琴能够支持单音和复音弹奏,如果与高品质的音源芯片连接,音质更可与高档电子琴相媲美。参考文献参考文献1 张毅坤,陈善久.单片微型计算机原理及应用m.西安:西安电子科技大学出版社,2002. 2 张友德,赵志英,徐时亮.单片微机原理应用与实验m.上海:复旦大学出版社,2000. 3 张毅.单片机原理及应用m.北京:高等教育出版社,2003.附录附录 1 1 源程序源程序 org 0000h ljmp main org 000bh ljmp int_t0 org 0100hmain: mov sp,#60h ;

17、初始化堆栈指针 mov 30h,#00 ;定时器初值清零 mov 31h,#00 mov p1,#0ffh ;设置 p1 口为输入模式 mov tmod,#01h ;设置定时器 0 为工作模式 1 setb et0 ;开定时器 0 中断 setb ea ;开总中断 clr tr0 ;关闭定时器 0 start: mov r0, p2 cjne r0,#0ffh,key1 ;键盘扫描 clr tr0 sjmp startkey1: cjne r0,#0feh,key2 ;k1 键按下 mov 30h,#0fbh ;设置音阶 1 mov 31h,#0e9h ljmp set_timerkey2:

18、cjne r0,#0fdh,key3 ;k2 键按下 mov 30h,#0fch ;设置音阶 2 mov 31h,#5ch ljmp set_timerkey3: cjne r0,#0fbh,key4 ;k3 键按下 mov 30h,#0fch ;设置音阶 3 mov 31h,#0c1h ljmp set_timerkey4: cjne r0,#0f7h,key5 ;k4 键按下 mov 30h,#0fch ;设置音阶 4 mov 31h,#0efh ljmp set_timerkey5: cjne r0,#0efh,key6 ;k5 键按下 mov 30h,#0fdh ;设置音阶 5 mov

19、 31h,#045h ljmp set_timerkey6: cjne r0,#0dfh,key7 ;k6 键按下 mov 30h,#0fdh ;设置音阶 6 mov 31h,#92h ljmp set_timerkey7: cjne r0,#0bfh,key8 ;k7 键按下 mov 30h,#0fdh ;设置音阶 7 mov 31h,#0d6h ljmp set_timerkey8: cjne r0,#7fh,nokey ;k8 按下 mov 30h,#0fdh ;设置音阶 8 mov 31h,#0fbhset_timer: setb tr0 ;发声 sjmp startnokey: clr tr0 ;无键按下 sjmp startint_t0: ;t0 中断服务程序 mov th0,30h ;定时器赋初值 mov tl0,31h cpl p1.0 ;输出方波 reti end附录附录 2 2 电子琴仿真图电子琴仿真图 xtal218xtal119ale30ea31p

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论