电子琴单片机课程设计--电子琴模拟实验.doc_第1页
电子琴单片机课程设计--电子琴模拟实验.doc_第2页
电子琴单片机课程设计--电子琴模拟实验.doc_第3页
电子琴单片机课程设计--电子琴模拟实验.doc_第4页
电子琴单片机课程设计--电子琴模拟实验.doc_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

毕业设计(论文)单片机课程设计题 目:电子琴模拟实验班 级: 姓 名: 学 号: 指导教师: 设计时间: 评语:成绩 电子琴模拟实验1. 引言 电子琴因其音色优美、节奏多变、价格便宜、携带方便和弹奏易于出效果,深受广大青少年甚至老年人的喜爱,又是我国中小学音乐课堂教学和广大群众业余音乐活动的重要工具。在日常的娱乐活动中,不管是卡拉ok、听音乐、看电影,又或是参与演唱会。你都会发觉,这些消遣全与音乐有不可分割的关系,而几乎所有的音乐里都有琴的参与。再者提高电子琴应用能力(如即兴伴奏),已经成为各级各类电子琴教学活动的重要内容。因此研究电子琴设计也成为了电子设计师的重要课题。 作为一种新兴的乐器,电子琴的历史不像钢琴那样悠久.它也是以键盘形态出现的,而以往的键盘乐器主要是钢琴、风琴、管风琴、手风琴。电子琴是种键盘乐器。它是1934年由美国人劳伦斯.哈梦特制造发明的,只有50多年历史。当初发明它的目的是用它来代替巨大的管风琴(管风琴是乐器中最大的一种,最低的发音管就有10多米长)。后来日本人在五十年代买下了这项专利技术,开始生产电子琴,并把它用于音乐教育。这样,电子琴就渐渐地在世界上普及起来。当今电子琴已被广泛应用于教学,演奏,是一门实用性很强的乐器.在我国目前普及的电子琴有两种:一种是带有脚键盘的立式电子琴;另一种是深受大家喜爱的、用于普及音乐教育的便携式电子琴。当今的电子琴也已经发展为一种技术含量较高、品质要求严格、融音乐艺术与精密机械加工为一体的高新技术产品。2. 设计内容利用定时器可以发出不同频率的脉冲,不同频率的脉冲经喇叭驱动电路放大滤波后,会发出不同的音调。定时器按设置的定时参数产生中断,这一次中断发出脉冲低电平,下一次反转发出脉冲高电平。由于定时参数不同,就发出不同频率的脉冲。有键按下,会发出连续脉冲,直到按键松开,才停止发音。使用数字键17作为电子琴按键,p3.2口发出音频脉冲,驱动喇叭3. 设计方案及原理3.1目的和意义 单片微型计算机是大规模集成电路技术发展的产物,属第四代电子计算机,它具有高性能、高速度、体积小、价格低廉、稳定可靠、应用广泛的特点。它的应用必定导致传统的控制技术从根本上发生变革。因此,单片机的开发应用已成为高科技和工程领域的一项重大课题。 电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本文的主要内容是用at89s51单片机为核心控制元件,设计一个电子琴。以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键和扬声器。 本文主要对使用单片机设计简易电子琴进行了分析,并介绍了基于单片机电子琴统硬件组成。利用单片机产生不同频率来获得我们要求的音阶,最终可随意弹奏想要表达的音乐。并且本文分别从原理图,主要芯片,各模块原理及各模块的程序的调试来详细阐述。本系统是简易电子琴的设计,按下键盘矩阵中的按键会使数码管显示当前按键,扬声器播放器对应的音符。通过设计本系统可了解单片机的基本功能,对单片机的了解有一个小的飞跃。3.2系统的研究内容 本系统设计制作一个可演奏的电子琴。综合应用了两项设计。(1)键盘矩阵识别。即矩阵扫描,显示当前按键。(2)不同频率音符播放。可以通过按键控制16种发音。3.3主要芯片介绍 at89s51是一个低功耗,高性能cmos 8位单片机,片内含4k bytes isp(in-system programmable)的可反复擦写1000次的flash只读程序存储器,器件采用atmel公司的高密度、非易失性存储技术制造,兼容标准mcs-51指令系统及80c51引脚结构,芯片内集成了通用8位中央处理器和isp flash存储单元,功能强大的微型计算机的at89s51可为许多嵌入式控制应用系统提供高性价比的解决方案。 at89s51具有如下特点:40个引脚(引脚图如图1-2所示),4k bytes flash片内程序存储器,128 bytes的随机存取数据存储器(ram),32个外部双向输入/输出(i/o)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(wdt)电路,片内时钟振荡器。 此外,at89s51设计和配置了振荡频率可为0hz并可通过软件设置省电模式。空闲模式下,cpu暂停工作,而ram定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存ram的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有pdip、tqfp和plcc等三种封装形式,以适应不同产品的需求。4. 系统分析4.1系统框图 模拟电子琴的系统主要由单片机单片机led数码管显示44键盘扬声器图1 系统构成框图4.2系统工作原理 本系统扫描键盘矩阵、显示按键、扬声器发出对应音符。4x4行列式键盘识别及显示原理如下:组成键盘的按键有机械式、电容式、导电橡胶式、薄膜式多种,但不管什么形式,其作用都是一个使电路接通与断开的开关。目前微机系统中使用的键盘按其功能不同,通常可分为编码键盘和非编码键盘两种基本类型。 编码键盘:键盘本身带有实现接口主要功能所需的硬件电路。不仅能自动检测被按下的键,并完成去抖动、防串键等功能,而且能提供与被按键功能对应的键码(如ascii码)送往cpu。所以,编码键盘接口简单、使用方便。但由于硬件电路较复杂,因而价格较贵。 非编码键盘:键盘只简单地提供按键开关的行列矩阵。有关按键的识别、键码的确定与输入,去抖动等功能均由软件完成。目前微机系统中,一般为了降低成本大多数采用非编码键盘。 键盘接口必须具有去抖动、防串键、按键识别和键码产生4个基本功能。 (1)去抖动:每个按键在按下或松开时,都会产生短时间的抖动。抖动的持续时间与键的质量相关,一般为520mm。所谓抖动是指在识别被按键是必须避开抖动状态,只有处在稳定接通或稳定断开状态才能保证识别正确无误。去抖问题可通过软件延时或硬件电路解决。 (2)防串键:防串键是为了解决多个键同时按下或者前一按键没有释放又有新的按键按下时产生的问题。常用的方法有双键锁定和n键轮回两种方法。双键锁定,是当有两个或两个以上的按键按下时,只把最后释放的键当作有效键并产生相应的键码。n键轮回,是当检测到有多个键被按下时,能根据发现它们的顺序依次产生相应键的键码。 (3)被按键识别:如何识别被按键是接口解决的主要问题,一般可通过软硬结合的方法完成。常用的方法有行扫描法和线反转法两种。行扫描法的基本思想是,由程序对键盘逐行扫描,通过检测到的列输出状态来确定闭合键,为此,需要设置入口、输出口一个,该方法在微机系统中被广泛使用。线反转法的基本思想是通过行列颠倒两次扫描来识别闭合键,为此需要提供两个可编程的双向输入/输出端口。 (4)键码产生:为了从键的行列坐标编码得到反映键功能的键码,一般在内存区中建立一个键盘编码表,通过查表获得被按键的键码。5. 硬件设计5.1系统总电路本设计中仿真电路由单片机晶振电路、复位电路,数码管显示电路和44行列式键盘输入电路构成。系统总电路图见附录1。5.2复位电路常见的复位电路有三种形式:上电自动复位方式、按键电平复位方式和按键脉冲复位方式,本设计中采用了按键电平复位的方式,通过使rst端经电阻与vcc电源接通实现复位,电路图如图2所示。rstc110ufr110k 图2 单片机复位电路5.3晶振电路本设计中单片机的振荡电路采用了内部时钟方式,在xtal1和xtal2之间跨接晶体振荡器和微调电容,组成并联谐振电路,构成稳定的自激振荡器,如图图3所示,晶体振荡器的振荡频率决定单片机的时钟频率。此设计中振荡频率12mhz.xtal1xtal2c230pfc330pfcrystal图3 单片机晶振电路5.4数码管显示电路1. led结构led数码管显示器,由8只发光二极管组成。7只发光二极管排成“8”字形的7个段,另外一段构成小数点,各段标记如图4所示。当发光二极管导通时,相应的点或线段发光,将这些二极管排成一定图形,控制不同组合的二极管导通,就可以显示出不同的字形。通过不同的组合,可用来显示数字09、字母af及小数点“.”等,它有共阴和共阳两种结构。七段led的阳极连在一起称为共阳极接法,而阴极接在一起的称为共阴极接法。图4 led数码管原理图2. led的工作原理共阴极的led,只要在某该段二极管加上高电平,该段即点亮,反之则暗。共阳极的与之相反。一个单片机应用系统中,通常将控制led显示的8位数据称为段选码,七段led的段选码如表1所示。表1:七段led的段代码字符共阴共阳字符共阴共阳03fhc0h87fh80h106hf9h96fh90h25bha4ha77h88h34fhb0hb7ch83h406h99hc39hc6h56dh92hd5eha1h67dh82he79h86h707hf8hf71h8eh3. 显示电路本设计中led数码管显示电路采用了共阴极的接法,电路如图5所示。p00p01p02p03p04p05p06r2470r3470r4470r5470r6470r7470r8470图5 单片机数码管显示电路5.5键盘电路本设计中采用了44行列式键盘电路,x0x1x2x3y0y2y3y10123456789abcdefr947kr1047kr1147kr1247k图6 44键盘电路5.6扬声器电路本设计中扬声器电路采用了扬声器加npn型的三极管组成的三极管开关电路,当p1.0口是低电平时,三极管q1导通,扬声器发声。p1.0ls1sounderq1npn图6 扬声器电路6. 软件设计本设计程序采用汇编语言编写,程序主要包括主程序、键盘扫描程序、数码管显示程序、中断服务程序和延时程序。6.1主流程开始结束模块初始化发送扫描码扫描键盘距延时启动定时器根据键号发音显示键号是否有键按下?停止发音 n n图7 主流程图6.2键盘扫描程序开始调用键盘扫描程序返回确定是否有键闭合?调用防抖程序有键闭合?计算键值并等待键释放键释放?键值处理 n y n y n y图8 键盘扫描流程图6.3数码管显示程序6.4中断服务程7. 总结 通过这次的设计使我认识到我对单片机方面的知识知道的太少了,对于书本上的很多知识还不能灵活运用,有很多我们需要掌握的知识在等着我去学习,我会在以后的学习生活中弥补我所缺少的知识。本次的设计使我从中学到了一些很重要的东西,那就是如何从理论到实践的转化,怎样将我所学到的知识运用到我以后的工作中去。在大学的课堂的学习只是在给我们灌输专业知识,而我们应把所学的用到我们现实的生活中去,此次的电子时钟设计给我奠定了一个实践基础,我会在以后的学习、生活中磨练自己,使自己适应于以后的竞争。参考文献1 李华. 单片机原理及应用m. 兰州:兰州大学出版社,2001.2 何钦铭.c语言程序设计m .北京:高等教育出版社,2007.附录1附录2/*/ 基于at89c51的电子琴设计/*/学 校: /学 院: /班 级: /设计者: /时 间:/*/程序介绍 :/该程序通过定时器中断/*lineequ30hrowequ31h valequ32h ;赋值org00hsjmpstartorg0bh ;中断首地址ljmpint_t0 ;跳转到中断子程序start:movp0,#00hmovtmod,#01h ;初始化/*按键扫描程序*lscan:movp3,#0f0h ;行扫描l1:jnbp3.0,l2lcalldelayjnbp3.0,l2movline,#00hljmprscanl2:jnbp3.1,l3lcalldelayjnbp3.1,l3movline,#01hljmprscanl3:jnbp3.2,l4lcalldelayjnbp3.2,l4movline,#02hljmprscanl4:jnbp3.3,l1lcalldelayjnbp3.3,l1movline,#03hrscan:movp3,#0fh ;列扫描c1:jnbp3.4,c2movrow,#00hljmpcalcuc2:jnbp3.5,c3movrow,#01hljmpcalcuc3:jnbp3.6,c4movrow,#02hljmpcalcuc4:jnbp3.7,c1movrow,#03hcalcu:mova,line ;计算键号movb,#04hmulabadda,rowmovval,a/*/根据键号查表得到定时器的定时常数/从而发出不同频率的声音/*movdptr,#table2movb,#2mulabmovr1,amovca,a+dptrmovth0,aincr1mova,r1movca,a+dptrmovtl0,amovie,#82hsetbtr0mova,val ;显示键号movdptr,#table1movca,a+dptrmovp0,a/*/等待按键释放/*w0:mova,p3cjnea,#0fh,w1movp0,#00h;去抖动clrtr0ljmplscanw1:mova,p3cjnea,#0f0h,w2movp0,#00hclrtr0ljmplscanw2:sjmpw0/*/定时器0中断服务子程序,输出特定频率的方波,/驱动扬声器发声/*int_t0:movdptr,#table2mova,valmovb,#2mulabmovr1,amovca,

温馨提示

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

最新文档

评论

0/150

提交评论