您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 基于51单片机的电子琴设计
摘要随着社会的发展进步,音乐逐渐成为我们生活中很重要的一部分,有人曾说喜欢音乐的人不会向恶。我们都会抽空欣赏世界名曲,作为对精神的洗礼。本论文设计一个基于单片机的简易电子琴。电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经融入现代人们的生活中,成为不可替代的一部分。本文的主要内容是用AT89C51单片机为核心控制元件,设计一个电子琴。以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有8个按键和扬声器。本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高,具有一定的实用和参考价值。关键词:AT89C51单片机;数码管;电子琴目录1系统方案设计............................................................................................................11.1设计指标..........................................................................................................11.2系统方案综述..................................................................................................11.3系统设计思路..................................................................................................12硬件设计....................................................................................................................22.1电路图..............................................................................................................22.2单片机AT89C51简介....................................................................................22.3单片机的工作过程..........................................................................................42.4键盘电路..........................................................................................................52.5显示电路..........................................................................................................52.6声音电路..........................................................................................................73系统软件设计............................................................................................................73.1延时程序设计...................................................................................................93.2定时器初始化及其中断函数...........................................................................93.3示例音乐播放程序.........................................................................................103.4单独按键中断处理函数.................................................................................104实验结果与分析......................................................................................................104.1Proteus软件简介............................................................................................104.2仿真调试.........................................................................................................125设计心得..................................................................................................................136参考文献..................................................................................................................14附录..............................................................................................................................15附录A元件清单、器件识别与检测.................................................................15附录B程序源代码.............................................................................................1611系统方案设计1.1设计指标①设计一个简易的八音符电子琴,它可通过按键输入来控制音响。②演奏时可以选择是手动演奏(由键盘输入)还是自动演奏已存曲目,并且在演奏完已存曲目后可自动复位。1.2系统方案综述从系统实现的功能上来看,电子琴的设计主要利用所给键盘的1,2,3,4,5,6,7,8八个键,能够发出八个不同的音调,并且要求按下按键发声,松开延时一段时间停止,中间再按别的键再发出另外一种音调的声音。从系统硬件结构上来看,我们主要使用到AT89C51单片机,复位电路以及开关等。将这些硬件电路有机的结合起来使之满足电子琴的实现硬件需要。从音乐产生的原理方面来看,通过控制单片机的定时器的定时时间产生不同频率的音频脉冲,经放大驱动发出不同音乐的声音。用软件延时来控制发音时间的长短。把音乐的音符和相应的节拍变换为定时常数和延时常数,分别来控制定时器产生的脉冲频率和发出该音频脉冲持续时间。因此,我们可以综合上述方案设计原理,从软件和硬件两部分进行有计划有步骤的分析和设计。1.3系统设计思路当系统扫描到键盘上有键被按下,则快速检测是哪一个键被按下,然后单片机的定时器被启动,发出一定频率的脉冲,该频率的脉冲输入到蜂鸣器后,就会发出相应的音调,如果在前一个按下的键发声的同时有另一个键被按下,则启动中断系统,前面键的发音停止,转到后按得键的发音程序,发出后按的键的音调。这样,设计一个时钟方式的电路来产生11.0592MHZ的振荡频率产生时钟脉冲,一个按键电平复位电路对AT89C51单片机进行复位,8个开关分别从P2.0,P2.1,P2.2,P2.3,P2.4,P2.5,P2.6,P2.7输出,用于产生八个不同频率的音,一个扬声器电路,从P3.2连接一个开关播放已存曲目,从P3.3与扬声器之间连接2一个上拉电阻和三极管,驱动扬声器响应,以此来设计硬件电路。总体框图如图1-1所示。1-1总体框图2硬件设计2.1电路图硬件电路图如图2-1所示。图2-1电路图2.2单片机AT89C51简介AT89C51是51系列单片机的一个型号,它是STC公司生产的。AT89C51是一键盘矩阵数码管扬声器3个低电压,高性能CMOS8位单片机,片内含8kbytes的可反复擦写的Flash只读程序存储器和256bytes的随机存取数据存储器(RAM),器件采用STC公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的STC89C51单片机可提供许多较复杂系统控制应用场合。AT89C51有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,STC89C51可以按照常规方法进行编程,但不可以在线编程(S系列的才支持在线编程)。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本AT89C51有PDIP、PQFP/TQFP及PLCC等三种封装形式,以适应不同产品的需求。其封装及引脚图如图2-2。图2-2单片机外封装及单片机引脚图AT89C51具体介绍如下:①主电源引脚(2根)VCC(Pin40):电源输入,接+5V电源GND(Pin20):接地线②外接晶振引脚(2根)XTAL1(Pin19):片内振荡电路的输入端XTAL2(Pin20):片内振荡电路的输出端③控制引脚(4根)4RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。ALE/PROG(Pin30):地址锁存允许信号PSEN(Pin29):外部存储器读选通信号EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。④可编程输入/输出引脚(32根)AT89C52单片机有4组8位的可编程I/O口,分别为P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。P0口(Pin39~Pin32):8位双向I/O口线,名称为P0.0~P0.7。P1口(Pin1~Pin8):8位准双向I/O口线,名称为P1.0~P1.7。P2口(Pin21~Pin28):8位准双向I/O口线,名称为P2.0~P2.7。P3口(Pin10~Pin17):8位准双向I/O口线,名称为P3.0~P3.7。2.3单片机的工作过程单片机自动完成赋予它的任务的过程,也就是单片机执行程序的过程,即一条条执行的指令的过程,所谓指令就是把要求单片机执行的各种操作用的命令的形式写下来,这是在设计人员赋予它的指令系统所决定的,一条指令对应着一种基本操作;单片机所能执行的全部指令,就是该单片机的指令系统,不同种类的单片机,其指令系统亦不同。为使单片机能自动完成某一特定任务,必须把要解决的问题编成一系列指令(这些指令必须是选
三七文档所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
本文标题:基于51单片机的电子琴设计
链接地址:https://www.777doc.com/doc-1888249 .html