1、 四川职科技业技术学院 毕业设计(论文) (专科 2012 届) 院(系): 移动通信与软件学院 课 题 : 基于单片机的简易电子琴 专 业: 电子信息工程技术 班 级: 电信 1 班 学生姓名: 指导老师: 学 号: 201201010121 日 期: 20 年 月 日 四川科技职业技术学院 2012 届毕业设计(论文)开题报告 ( 2012 届) 学 院、系: 移动通信与软件学院 专 业: 电子信息工程技术 学 生 姓 名: 班 级: 2012级 学号 21 指导教师姓名: 20年 月 1 题目:基于单片机原理的简易电子琴系统 一、 课题研究的意义 由于一首音乐是许多不同的音阶组成的,而每
2、个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,这些方面对于单片机来说就非常的方便。我们可以利用单片机的定时 /计数器 T0来产生这样方波频率信号,对于一首歌我们只要把这首歌的音阶对应的频率关系弄正确即可得到节拍。基于单片机原理的电子琴大大简化了以前传统的音乐产生电路,使得元件得到减少,生产成本降低而且性能也得到了提高,并且耗能也 降低了。我通过收集、查阅与发声原理、声音的产生电路有关的文献资料以及仿真调试软件的使用使我对单片机的应用前景有了深刻的了解。 二 .要研究或解决的问题、拟采用的方法或技术路线: 一 ) 要解决的问题 : 1)发声原理与声音的产
3、生电路设计 2)喇叭放声放大电路的设计和制作 3)源程序的编写 二)拟采用的方法或路线: (1) 基本功能: 1能够发出 1.2.3.4.5.6.7等七个音符。 2自选一首歌曲,按下启动键后,能自动演奏完该乐曲。 (2)方法或路线 : 该简易电子琴通过控制单片机内部的定时器 T0 来产生不同频率的方波 ,驱动喇叭发出不同音节的声音 .再利用延迟来控制发音时间的长短 ,即可控制音调中的节拍 .把乐谱中的音符对应的频率转换为定时常数 ,把相应的节拍变换为定时常数 ,然后作成表格存放在储存器中 ,由程序查表得到定时常数和延时常数 ,分别用以控制定时器产生方波的频率和该频率方波的持续时间 .当延迟常数
4、到时 ,再查下一个音符的定时常数和延迟常数 .依次进行下去 ,就可演奏悦耳动听的音乐 . 将某一首音乐的简谱变换成为常数表 ,计算机顺序调入时间常数并以中断方式执行 ,从 P1.7 来输出方波驱动喇叭 ,发出不同音节的声音 ,节 拍的控制可通过调用200Ms 延时子程序的次数来实现 .单片机的晶振频率为 12 Hz,乐谱中的音符 ,频率及定时常数的关系 :T0=216-1/2f*ti;其中 f 为音符对应的频率 ;ti 为内部计时一次所用时间 . 例如 :音调 1 对应的频率 524Hz,其半周期 T/2=1/2f=0.95Ms,用定时器 T0方式 1定时是器定时常数计算公式得到定时常数为 1
5、6进制的 FE25. 2 三、 成果预测: 自选一首歌曲,按下启动键后,能自动演奏完该乐曲。 1能够发出1.2.3.4.5.6.7等七个音符。 2自选一首歌曲,按下启动键后,能自动演奏完该乐曲。 四、 时间进度计划: 1 2007年 11月 14日: 任务书下达日期 2 2007年 12 月 30日:仔细阅读设计任务书,明确设计任务与要求,收集设计资料,准备设计工具。 3 2008年 1月 1日 2008年 2月 15日:确定控制方案,写出指令程序清单;设计控制系统的硬件接线图。 4 2008年 2月 15日 2008年 2月 20日: 整合与完善。 5. 2008年 2月 20日 2008年
6、 3月 1日:上机调试并编写设计说明书 ,准备答辩。 指导教师意见。 指导教师: 年 月 日 说明:开题报告作为毕业设计(论文)答辩委员会对学 生答辩资格审查的依据材料之一,此报告应在导师指导下,由学生填写,将作为毕业设计(论文)成绩考查的重要依据,经导师审查后签署意见生效。(根据需要自行调整开题报告的页面) 3 目 录 摘要 Abstract 第一章 绪论 6 1. 1 课题背景 6 1. 2 本文所做的主要 工作 7 第二章 系统方案设计及主控芯片介绍 8 2. 1主体方案 8 2. 1 电子琴 的总体框图 8 2 2 主控芯片 AT89C51 的结构与原理 10 2.2.1 AT89C5
7、1 单片机的结构 10 2.2.2 AT89C51 单片机的工 作原理 15 第三章 硬件电路设计 17 3. 1发声电路 17 3. 2 数码管显示 电路 19 3. 3 电源电路设 计 20 3 4 键盘设计 21 第四章 乐曲声音算法 23 4 1 音乐频率 的实现 23 4 2 音乐 节拍的实现 24 第五章 系统软件设计 28 5 1 系统程序流程 28 5 2 键盘扫描程序流程图 29 总结 30 致谢 31 参考文献 32 附录 1 33 程序 34 4 摘 要 在现代各种生活中, 电子琴 作为一种音乐型玩具 ,广泛用于与人们的日常生活中。 市场上有各种各样的电子琴。特别是日本产
8、的,音质优美,它是有专门的音乐控制芯片制造的。 由于其价格较贵,无法大面积普及,且功能单一。 用89c51作为主控中心,研制一种简易的微型电子琴,尽可能地体现较好的音质来,是一种可做的尝试。 以单片机为核心设计的 简易电子琴 系统, 由按键扫描电路、声音产生驱动电路、复位电路、等模块组成的, 是一种比较实用、廉价的电子玩具。 本论文所设计的 简易电子琴 ,它分为两大部分,硬件电路的设计和软件的设计。硬件电路的设计以 AT89S51单片机为控制主板,辅以外围的扩展设备蜂鸣器、矩阵键盘、共阳数码管,形成一个可被控制的显示系统。软件设计 通过控制单片机内部的定时器 T0 来产生不同频率的方波 ,驱动
9、喇叭发出不同音节的声音 .再利用延迟来控制发音时间的长短 ,即可控制音调中的节拍 .把乐谱中的音符对应的频率转换为定时常数 ,把相应的节拍变换为定时常数 ,然后作成表格存放在储存器中 ,由程序查表得到定时常数和延时常数 ,分别用以控制 定时器产生方波的频率和该频率方波的持续时间 .当延迟常数到时 ,再查下一个音符的定时常数和延迟常数 .依次进行下去 ,就可演奏悦耳动听的音乐 .主要实现 1能够发出1.2.3.4.5.6.7等七个音符。 2能自动演奏完,自选的一首歌曲两种功能。 关键字: 简易电子琴 单片机 矩阵键盘 定时器 5 Abstract In the modern variety of
10、 life, the flower as a musical toys, widely used and peoples daily life. There are all kinds of market flower. Japan is particularly middle, sounding, it is a dedicated music control of the chip maker. Because of its expensive price, not a popular area, and single function. 89 c51 used as a control
11、centre, the development of a simple micro-organ, as far as possible, to reflect a better quality, is an attempt to do. MCU core design for a simple flower, from the button scanning circuit, a driver circuit voice, reset circuit, such as modules, is a more practical and inexpensive electronic toys. I
12、n this paper the design of simple flower, which are divided into two parts, hardware circuit design and software design. Hardware circuit design to AT89S51 microcontroller for the control board, supported by the expansion of the external equipment buzzer, matrix keyboard, a total of Yang digital for
13、m can be controlled by a display system. SCM software designed to control the internal timer T0 to produce different frequency square wave, driving a different syllable speakers voice. Reuse delayed to control the length of pronunciation, pitch in to control the beat. Notation in the notes converted
14、 to thecorresponding frequency timing constant, corresponding to the beats of the time constant transformation, and then make tables stored in memory, table look-up procedures are regularly by the constant and delay constant, a timer were used to control the square wave The frequency square-wave fre
15、quency and duration. constant when the delay time, a note to check the timing of constant delays and constant. were out of the question, can perform really pleasant to hear music. main one “can be issued 1.2.3.4.5.6 .7 seven notes. 2 “can automatically perform End, the one-on-demand songs two functi
16、ons. Key word : Simple flower MCU Matrix keyboard Timer 6 绪论 1.1 课题背景 单片机自 1976 年由 Intel公司推出 MCS-48开始,迄今已有二十多年了。由于单片机集成度高、功能强、可靠性高、体积小、功耗地、使用方便、价格低廉等一系列优点,目前已经渗入到人们工作和生活的方方面面,几乎“无处不在,无所不为”。单片机的应用领域已从面向工业控制、通讯、交通、智能仪表等迅速发展到家用消费产品、办公自动化、汽车电子、 PC 机外围以及网络通讯等广大领域。 按照内部数据通道的宽度,单片机可分为 4 位、 8 位、 16 位及 32 位等
17、。单片 机的中央处理器( CPU)和通用微处理器基本相同,只是增设了“面向控制”的处理功能。例如:位处理、查表、多种地址访问方式、多种跳转、乘除法运算、状态监测、中断处理等,增强了实时性。 单片机有两种基本结构形式 :一种是在通用微型计算机中广泛采用的,将程序存储器和数据存储器合用一个存储器空间的结构,称为普林斯顿( Princeton)结构。另一种是将程序存储器和数据存储器截然分开,分别寻址的结构,一般需要较大的程序存储器,目前的单片机以采用程序存储器和数据存储器截然分开的结构为多。 单片微型计算机自从问世以来,作 为微型计算机一个很重要的分支,应用广泛,发展迅速,尤其是美国 Intel 公
18、司生产的 MCS-51 系列单片机,由于其具有集成度高,处理功能强,可靠性高,系统结构简单,价格低廉等优点,在智能仪器仪表、工业检测控制、机电一体化等方面取得了令人瞩目的成就。 本文讨论的单片机多功能定时器的核心是目前应用极为广泛的 51 系列单片机,配置了外围设备,构成了一个可编程的计时定时系统,具有体积小,可靠性高,功能强等特点。不仅能满足所需要求而且还有很多功能可供开发,有着广泛的应用领域。 20 世纪 80 年代中期以后, Intel 公司以专 利转让的形式把 8051 内核技术转让给许多半导体芯片生产厂家,如 ATMEL、 PHILIPS、 ANALOG、 DEVICES、 DALL
19、AS等。这些厂家生产的芯片是 MCS-51系列的兼容产品,准确地说是与 MCS-51指令系统兼容的单片机。这些兼容机与 8051 的系统结构(主要是指令系统)相同,采用 CMOS工艺,因而,常用 80C51系列来称呼所有具有 8051指令系统的单片机,它们对 8051单片机一般都作了一些扩充,更有特点。其功能和市场竞争力更强,不该把它们直接称呼为 MCS-51 系列单片机,因为 MCS 只是 Intel 公司 专用的单片机系列型号。 MCS-51 系列及 80C51 单片机有多种品种。它们的引脚及指令系统相互兼容,主要在内部结构上有些区别。目前使用的 MCS-51 系列单片机及其7 兼容产品通
20、常分成以下几类:基本型、增强型、低功耗型、专用型、超 8位型、片内闪烁存储器型。 本设计主要是通过对电子琴主体部分的电路进行模仿设计,达到电子琴固有的基本功能,故叫简易电子琴。利用定时器可发出不同频率的脉冲,不同频率的脉冲经喇叭驱动电路放大滤波后,就会发出不同音调。其次,定时器按设置的定时参数产生中断,这一次中断发出脉冲低电平,下一次反转发 出脉冲高电平,由于定时参数不同,就发出不同频率的脉冲,本设计中按键一次,会发出 50 个脉冲,松开后随之延时 10 个脉冲,但在延时的 10 个脉冲期间继续检测键盘,若此时又有键被按下,若被按下的仍为原键则声音不变,否则键盘会译出被按下的另一个键的音调。
21、我们知道,声音的频谱范围约在几十到几千赫兹,若能利用程序来控制单片机某个口线的“高”电平或低电平,则在该口线上就能产生一定频率的矩形波,接上喇叭就能发出一定频率的声音,若再利用延时程序控制“高”“低”电平的持续时间,就能改变输出频率,从而改变音调。 1.2 本文所 做的主要工作 本次设计的简易电子琴在其功能上能用单片机控制蜂鸣器发声,拟合出乐曲曲调。能够相应按键,进行简单的乐曲弹奏。 本次设计是以单片机为基础 ,在论文中大概讲述了一下单片机的原理。 在此次设计中,简易电子琴的外围设备主要有以下二个部分: 1、发声器件的选择:发声器件比较多,例如喇叭、蜂鸣器、电铃等。这次发声元件采用蜂鸣器,蜂鸣
22、器价格便宜,控制简单,广泛用于各种电子产品和玩具。本设计为保证声音的响亮,通过三极管进行电流放大,增加声音的响度。 2、按键部分的设计:在本电路的按键接口设计,考虑到按键数量 比较多,为了节省 I/O口资源,采用矩阵式键盘。通过软件实现 4*4间盘扫描。 3、数码管显示电路:为指示出当前演奏的曲目标号和显示当前按下的键号,我们采用 1位数码管作为显示部件,为了节省成本,采用 I/O口直接驱动数码管。这样设计充分利用了单片机的资源,使此设计才功能上很丰富、完善。 8 系统方案设计及主控芯片介绍 按照系统的设计功能要求,初步确定设计系统由主控模块、发声模块,显示模块,键盘接口模块 4个部分组成,电
23、路系统构成图 2.1所示。主控芯片使用80C51系列单片机 。发声模块使用的是蜂鸣器,低成本,配以放大电路,可以发出响亮的声音。 2 1 主体方案 本文就是从单片机 AT89C51入手,通过使用 AT89C51的内部的可编程定时器 /计数器,结合对外接晶振的调节来确定一个合适的振荡周期,从而确定出内部的机器周期。 该简易电子琴通过控制单片机内部的定时器 T0 来产生不同频率的方波 ,驱动喇叭发出不同音节的声音 .再利用延迟来控制发音时间的长短 ,即可控制音调中的节拍 .把乐谱中的音符对应的频率转换为定时常数 ,把相应的节拍变换为定时常数 ,然后作成表格存放在储存器中 ,由程序查表得到定时 常数
24、和延时常数 ,分别用以控制定时器产生方波的频率和该频率方波的持续时间 .当延迟常数到时 ,再查下一个音符的定时常数和延迟常数 .依次进行下去 ,就可演奏悦耳动听的音乐。 其电路图见附录 1所示。 2.2 主控器 AT89C51 的结构及工作原理 2.2.1 AT89C51单片机的结构 一、 单片机的主要性能特点 ATMEL公司生产的 AT89C51单片机采用高性能的静态 80C51设计,欲先进工艺制造,并带有非易失性 FLASH程序储存器。它是一它是一种高性能,低功 耗的8位 CMOS微处理芯片,。主要性能特点有: 8KB Flash ROM,可以擦除 1000次以上。数据保存 10年, 256字节内部 RAM 电源控制模式:时钟可停止和恢复;空闲模式;掉电模式。 6个中断源 显示电路 ( 89C51) 主控模块 键扫描电路 发声电路