单片机课程设计电子琴.doc_第1页
单片机课程设计电子琴.doc_第2页
单片机课程设计电子琴.doc_第3页
单片机课程设计电子琴.doc_第4页
单片机课程设计电子琴.doc_第5页
免费预览已结束,剩余15页可下载查看

下载本文档

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

文档简介

郑州华信学院目录1.引言21.1 单片机概述21.2 概述32.系统总体设计要求42.1 系统设计要求42.2 系统总体设计方案42.2.1系统设计思路42.2.2 系统总体组成框图43. 系统硬件设计53.1 AT89C5153.1.1 AT89C51简介53.1.2 主要的功能特性63.1.3 管脚功能63.1.4 芯片擦除83.2 播放模块的硬件设计83.3 按键控制模块的硬件设计93.4系统硬件设计图104系统软件设计114.1 下位机软件流程114.2上位机软件125调试145.2.1硬件调试145.2.2软件调试145.2.3硬件软件联调145.3 测试结果146总结14参考文献15附录16附录1元件清单16附录2系统仿真电路16附录3 源程序171郑州华信学院1.引言 1.1 单片机概述 随着大规模集成电路的出现和发展,芯片生产厂家把中央处理器CPU,随机存取内存RAM,只读存储器ROM,定时器/计数器以及I/O接口电路等主要计算机部件,集成在一块集成电路芯片(硅片)上,形成芯片级计算机,称为单片微型计算机,直译为单片机。单片机虽只是一个芯片,但从组成和功能上看,它已具有了微机系统的含义,又称微型处理部件MCU(Micro Controller Unit),单片机商品名称为微控制器单元。虽然单片机出现的历史并不长,但发展十分迅猛,在集成度、功能、速度、可靠性、应用领域等全方位向更高水平发展。目前单片机已用于工业控制、机电一体化设备、仪器仪表、信号处理、现代兵器、交通能源、商用设备、医疗设备及家用电器等各个领域,随着单片机性能的不断提高,它的应用将会更加广泛。单片机技术发展非常快,所以目前的产品都致力于在功能全面、技术先进、操作简便、安全可靠、价格合理等方面进行仔细研究,精心设计;及时掌握最新的单片机技术,在条件允许的情况下,尽可能地利用最新的单片机技术来研制其应用系统,再利用单片机体积小、价格低、功能强等特点,以保证所设计的产品在未来的一段时间内仍具生命力。在生活和生产的各个领域中,凡是有自动控制要求的地方都会有单片机的身影出现;从简单到复杂,从空中、地面到地下,凡是能想象到的地方几乎都有使用单片机的需求。现在,尽管单片机的应用已经很普遍了,但仍有许多可以用单片机控制而尚未实现的项目,因此,单片机的应用大有可以想象和拓展的空间。单片机的应用有利于产品的小型化、多功能化和智能化,有助于提高劳动效率,减轻劳动强度,提高产品质量,改善劳动环境,减少能源和材料消耗,保证安全等。但是,单片机应用的意义绝不仅限于它的广阔范围以及所带来的经济效益上,更重要的意义还在于:单片机的应用正从根本上改变着传统的控制系统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分控制功能,现在已能使用单片机通过软件(编程序)方法实现了。这种以软件取代硬件并能提高系统性能的控制系统“软化”技术,称之为微控制技术。微的概念,是对传统控制技术的一次革命。随单片机应用的推广普及,微控制技术必将不断发展、日益完善和更加充实。 简易电子琴系统就是以单片机为主要元器件设计的一个简易电子琴,这只是单片机应用的一个点,由点及面,希望可以更好的了解和应用单片机技术。 之所以以单片机电子琴为选题,目的在于从日常生活能接触到的细微处着手,通过理论与实践的结合,更明确自己的所学所用,也在实践中发现理论的不足,对目前日益广泛应用的单片机有了更加理性化和感性化的认识,使理论和实践相得益彰。 通过单片机电子琴这个选题,更深层次的了解了单片机技术,以前只是有理论,实践的机会不是很多,在作单片机电子琴这个选题的过程中,更加熟练的掌握了一些单片机芯片的应用,也解决了很多以前理论和实践脱节的问题,可谓对单片机的认识有了一个小的飞跃。1.2 概述电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本文的主要内容是用单片机为核心控制元件,设计一个电子琴。以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键和扬声器。 本文主要对使用单片机设计简易电子琴进行了分析,并介绍了基于单片机电子琴统硬件组成。利用单片机产生不同频率来获得我们要求的音阶,最终可随意弹奏想要表达的音乐。并且本文分别从原理图,主要芯片,各模块原理及各模块的程序的调试来详细阐述。本系统是简易电子琴的设计,按下键盘矩阵中的按键会使数码管显示当前按键,扬声器播放器对应的音符。通过设计本系统可了解单片机的基本功能。对单片机的了解有一个小的飞跃。92.系统总体设计要求2.1 系统设计要求1)利用查询式键盘,数字键1、2、3、4、5、6、7、8作为电子琴按键,按键按下时发出1、2、3、4、5、6、7、1的声音。(2)利用定时器,可以发出不同频率的脉冲,不同频率的脉冲经喇叭驱动电路放大滤波后,就会发出不同的音调。2.2 系统总体设计方案本系统采用AT89C51为电子琴控制中心,系统主要包括主控制模块、琴键控制模块、播放模块。下面对这几个模块的设计进行论证比较。2.2.1系统设计思路利用所给键盘的1,2,3,4,5,6,7,8八个键,能够发出8个不同的音调,并且要求按下按键发声,松开延时一段时间停止,中间再按别的键则发另一音调的声音。当系统扫描到键盘上有键被按下,则快速检测出是哪一个键被按下,然后单片机的定时器被启动,发出一定频率的脉冲,该频率的脉冲经喇叭驱动电路放大滤波后,就会发出相应的音调。如果在前一个按下的键发声的同时有另一个键被按下,则启用中断系统,前面键的发音停止,转到后按的键的发音程序,发出后按的键的音。2.2.2 系统总体组成框图按键控制模块播放模块 喇叭中心控制模块 AT89C51 按 键 状 态 图2-1 总体硬件组成框图3. 系统硬件设计3.1 AT89C51 3.1.1 AT89C51简介AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压,高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。外形及引脚排列如图3-2所示。3.1.2 主要的功能特性 与MCS-51 兼容4K字节可编程闪烁存储器寿命:1000写/擦循环数据保留时间:10年全静态工作:0Hz-24MHz三级程序存储器锁定1288位内部RAM32可编程I/O线两个16位定时器/计数器5个中断源可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路3.1.3 管脚功能VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表所示:口管脚 备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。振荡器特性:XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。3.1.4 芯片擦除整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。3.2 播放模块的硬件设计 如下图所示,播放模块其实就是喇叭,它接到P1.0口上当有按键按下时,它就会发出声音. 3.3 按键控制模块的硬件设计在P.2口十连有8个按键并加有8个拉电阻.它们一端接5伏电源,一端接地.在仿真时,只要有一个键被按下,并被单片机扫描到,则会使播放器发出声音.3.4系统硬件设计图郑州华信学院4系统软件设计4.1 下位机软件流程本系统中下位机(单片机89C51)的主要功能就是实现音乐播放功能。其主程序流程如图4-1所示。图4-1 软件程序流程图4.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 ;关闭定时器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,#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键按下 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 END5调试根据系统设计方案,本系统的调试共分为三大部分:硬件调试,软件调试和软硬件联调。由于在系统设计中采用模块设计法,所以方便对各电路模块功能进行逐级测试:中心控制模块的调试,音乐播放模块的调试,按键控制模块的调试等,最后将各模块组合后进行整体测试。5.2.1硬件调试对各个模块的功能进行调试,主要调试各模块能否实现指定的功能。5.2.2软件调试 软件调试采用单片机仿真器KEILC及微机,将编好的程序进行调试,主要是检查语法错误。5.2.3硬件软件联调 将调试好的硬件和软件进行联调,主要调试系统的实现功能。5.3 测试结果此次系统设计结果较好,分别播动8个按键会发出8种高低不同的声音,如果送入音乐程序,则会播放歌曲。6总结本系统以AT89C51片机为核心,结合显示模块、播放模块、琴键控制模块和电源模块,实现两个八度音阶的弹奏,播放预存音乐,同时显示播放和弹奏的音阶的功能。本系统的设计和制作是在对设计电路的仿真基础上完成的,通过仿真中发现的问题对系统的电路和程序进行进一步的调试,以达到更好的效果。再根据仿真的电路制作实际电路,检验仿真的正确性。通过这次课程设计,我们把平时学习到的知识应用到了实际中,加深了对所学知识的理解。同时,我们从这次课程设计中也意识到自己对所学知识的掌握不够深入,对单片机系统的了解还不够细致,以及在编程能力上的缺陷。例如,在对播放模块的编程中,由于仿真中播放模块只能在按键按下松开后才能放音,这与实际的电子琴的功能有差异,本想通过修改程序使蜂鸣器在按键按下时放音,松开后立即停止播放,不过经过几次的程序修改和仿真都未能实现这一功能。从这点上,就可以看出我们在软件编程上的缺陷和不足,在以后的学习中,应该加强这方面的能力。另外,在本次课程设计的过程中,我们深刻体会到了团队合作的重要性,只有一个团队齐心协力,每个成员各司其职才可以把工作做好。经过几周忙碌,我的电子琴终于仿真成功.虽然失败了几次,但经过对硬件连接图的纠正,自己又调整.了程序最后终于方仿真成功.心情很激动,一方面:觉得很有成就感;另一方面:收获很大,:不但锻炼了编程的能力,而且通过编程对硬件的整个流程了解了。在仿真过程中,我犯了两个低级错误:一个是用了没有模型的元件,另一个是喇叭可以不用驱动就能发出声音。经同学提醒,我改正了连接图。结果成功了。用单片机控制播放模块和按键控制模块制作出的电子琴,结构简单,可靠性高,并且价格低廉,具有实用的价值。这种电子琴能够支持单音和复音弹奏,如果与高品质的音源芯片连接,音质更可与高档电子琴相媲美。参考文献1 张毅刚,彭喜元。单片机原理与应用M(十)北京:高等教育出版社,2007.102 张毅刚。MCS-51单片机应用设计M。哈尔滨。哈尔滨工业大学出版,19993 李广弟。单片机基础M。北京:北京航天航空大学出版社,20014 杨振江。智能仪器与数据采集系统的新器件及应用M。西安:西安电子科技大学出版社,20015 彭介华.电子技术课程设计指导J.北京:高等教育出版社,6 康年光.电子技术基础(数字部分).高等教育出版社.2005.07 7 刘乐喜.微机计算机接口技术及应用.华中科技大学出版社.2005.088 谢嘉奎.电子线路(线性部分).高等教育出版社.2004.049 李群芳,张士军,黄建.单片微型计算机原理与接口技术.电子工业出版社.200210 石东海等.单片机数据通信技术从入门到精通.西安电子科技大学出版社.200212 谢自美等.电子线路设计、实验、测试(第二版).华中科技大学出版社.200013 R.L.Geiger,P.E.Allen,N.R.Strader.VLSI.DLSI Design Techniques for Analog And Digital Ciruits.McGraw-Hill Inc.199014N.R.Mallik.Electronic Ciruits-Analysis Simulation and Design.Prentice Hall,1995.附录附录1元件清单序 号名 字数 量备 注1AT89C511个2晶振1个12MHz3AMS1117-5.01个4蜂鸣器1个作为播放模块附录2系统仿真电路附录3 源程序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 ;设置定

温馨提示

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

评论

0/150

提交评论