基于51单片机的电子琴设计课程设计
- 格式:docx
- 大小:616.08 KB
- 文档页数:22
(完整版)基于51单⽚机的简易电⼦琴设计基于51单⽚机的简易电⼦琴设计⼀.问题提出为什么选择简易电⼦琴设计?1.对于⾳乐的兴趣我们对⾳乐都有着浓厚的兴趣,喜欢听钢琴曲,如理查德·克莱德曼演奏的《思乡曲》《星空》《秋⽇的私语》等,⾳乐在我们的⽣活中扮演着很重要的⾓⾊。
有⼈曾说,喜欢⾳乐的⼈不会向恶。
以前不以为然,可是随着这些年来慢慢喜欢上阴郁,听了越来越多的钢琴曲之后,觉得这句话⾮常有道理。
⾳乐是⽤艺术家⽤⾳符记录世界,传达情感的⼀种艺术形式,⾳乐⾥有⼀种和谐之美,听⾳乐可以让⼈⼼情舒畅,与外界和谐统⼀。
⾳乐现在已经成为我⽣活中很重要的⼀部分,我们每周都会抽些时间去欣赏世界名曲,作为对精神的洗礼。
2.对于电⼦琴的好奇好奇是⼈的天性,⼈类对于⾃然的认识,对于科学的探索,⽆不始于好奇。
我们对电⼦琴如何实现其功能,如⾳⾊选择、声⾳强弱控制、节拍器、⾃动放⾳功能等等也很好奇,想通过学习单⽚机这个机会,深⼊了解电⼦琴的功能实现原理。
3.对于51单⽚机强⼤功能的信赖51单⽚机有基本特性:(1)⾯向控制的8位CPU和指令系统(2)4K字节的程序存储器(ROM或EPROM)(3)128字节的数据存储器(4)可编程的并⾏I/O⼝P0~P3,有32位双向输⼊/输出线(5)⼀个全双⼯串⾏⼝(6)两个16位定时器/计数器(7)五个中断源,两个优先级的中断结构(8)⼀个⽚内时钟振荡器和时钟电路(9)可以寻址64K字节的程序存储器和64K字节的外部数据存储器51单⽚机功能强⼤,性能⽇趋完善,在⼯业测控、智能仪器仪表、机电⼀体化产品、家电领域中应⽤⼴泛,因此基于51单⽚机设计简易的电⼦琴可⾏性⾮常⼤。
⼆.功能需求1.能够实现基本的琴键功能即每按下⼀个琴键,单⽚机能够检测到键盘的按键,并根据按键的位置,通过程序来控制,使蜂鸣器发出不同频率(⾳调)的声⾳,声⾳延迟⼀段时间,等到按键放开后,声⾳停⽌。
然后再继续扫描,看是否有键按下,如此循环下去,即可实现基本的琴键功能。
基于51单片机的16键电子琴课程设计报告.docx
本课程设计旨在设计一款基于51单片机的16键电子琴,利用该电子琴进行乐器演奏
练习。
课程设计的目标是通过51单片机的控制,使乐器的按键实现发声功能,即在按下按
键后,将发出相应的音调,且声音质量较为清晰、拒绝杂音;同时,设计外设及程序使乐
器美观并能在一定程度上体现主人的个性操作习惯,体现出一定程度上的可定制性和稳定性。
课程设计使用MCS-51单片机作为核心芯片,搭建计算机与电子琴模块之间的桥梁,
通过控制要求,配备8位延时定时器、8位计数器/比较器和定时/计数器模块的硬件模块,通过定时/计数器去控制音色的发声数量,再加以PCB板设计,完成各模块的焊接、网络
接线,通过连接各功能模块,实现51单片机控制芯片,实现程序控制电子琴的具体功能。
最后,课程设计尝试完成女声、爵士电子琴等曲目,通过实验,充分验证设计的可行性,并发现一些在设计过程中的不足,如欠缺外设模块,无法实现一些特殊功能等,给出
相应的改善思路,以供设计实现。
在设计过程中,综合运用硬件电路设计、程序设计思维,构建整个系统的总体构架,
实现相应的电子琴演奏功能,使得本次课程设计取得了一定的成果。
它是以单片机作为主控核心,设置键盘、蜂鸣器等外围器件;另外还用到一些简单器件如:两位数码管,和NPN型三极管及电阻等。
利用按键实现音符和音调的输入;两位的数码管进行被操作的按键显示;用NPN型三极管8550实现低音频功率放大;最后用蜂鸣器进行播放“送别”。
本设计硬件部分主要由最小系统,按键系统模块、数码管显示模块和蜂鸣器模块组成。
其软件部分主要有主程序模块、定时中断程序、定时计数程序、显示程序。
实现电子琴发声控制系统;要求电路实现如下功能:利用蜂鸣器作为发声部件,两个数码管作为显示部件,设置10个按键,实现高音、中音、低音的1、2、3、4、5、6、7的发音。
并在存储一首歌曲的内容,可以实现自动播放。
说明:单片机的工作时钟频率为11.0592MHz。
音乐是有由不同的音阶组成的,而不同的音阶又是由不同的频率发出的,那么利用不同的频率,就可以发出不同的音乐了。
采用AT89S52单片机作为主控芯片,设置键盘、蜂鸣器等外围器件,另外还用到一些简单器件如:两位数码管,和NPN型三极管及电阻等。
利用按键实现音符和音调的输入;两位的数码管进行被操作的按键显示;用NPN型三极管2.3.1 时钟电路单片机内部具有一个高增益反相放大器,用于构成振荡器。
通常在引脚XTALl 和XTAL2跨接石英晶体和两个补偿电容构成自激振荡器,结构图2 中X1、C1、C2。
可以根据情况选择6MHz、12MHz或24MHz等频率的石英晶体,补偿电容通常选择30pF左右的瓷片电容。
图2、时钟电路2.3.2复位电路单片机小系统常采用上电自动复位和手动按键复位两种方式实现系统的复位操作。
上电复位要求接通电源后,自动实现复位操作。
手动复位要求在电源接通的条件下,在单片机运行期间,用按钮开关操作使单片机复位。
其结构如下图。
上电自动复位通过电容C3充电来实现。
手动按键复位是通过按键将电阻R1与VCC 接通来实现。
图3、复位电路2.4 原理框图本系统有主控芯片89S52、发音单元、显示模块、按键模块组成。
基于51单片机的多功能电子琴的设计摘要电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。
它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。
本文的主要内容是用AT89C51单片机为核心控制元件,设计一个电子琴。
以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键、一排LED灯和扬声器。
本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有一定的实用和参考价值。
一、总体方案设计1、系统设计要求本系统分为三个部分,一个是音乐播放,一个是电子琴弹奏,和一个流水灯演示。
具体指标如下:1)要求达到电子琴的基本功能,可以用弹奏出简单的乐曲。
2.)用键盘作出电子琴的按键,每键代表一个音符。
3)各音符按一定的顺序排列,必须符合电子琴的按键排列顺序。
//4)固定音乐播放有按键控制:“播放”、“弹奏/停止”。
5)弹奏电子琴时能播放出准确的声音,不弹奏时可以播放内置音乐。
6)弹奏电子琴时,流水灯会不停的亮灭。
2、系统设计组成本系统分为两个部分,一个是音乐另一个就是电子琴。
音乐播放部分:乐音实际上是有固定周期的信号。
本文介绍用AT89C51的两个定时器(如T0,T1)控制,在P3.7脚上输出方波周期信号,产生乐音,通过矩阵键盘按键产生不同的音符,由此操作人员可以随心所欲的弹奏自己所喜爱的乐曲,同时,那排流水灯会不停的闪烁,当不想弹奏时通过按放歌键可以演奏事先存放在单片机中的几首动听的曲子供消遣。
当歌曲演奏完时,通过按复位键便可回到初始状态,这样就做出了一台微型电子琴。
由于一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。
目录前言 (2)第1章基于51单片机的电子琴设计 (3)1.1 电子琴的设计要求 (3)1.2 电子琴设计所用设备及软件 (3)1.3 总体设计方案 (3)第2章系统硬件设计 (5)2.1 琴键控制电路 (5)2.2 音频功放电路 (6)2.3 时钟-复位电路 (6)2.4 LED显示电路 (6)2.5 整体电路 (6)第3章电子琴系统软件设计 (7)3.1 系统硬件接口定义 (7)3.2 主函数 (8)3.2.1 主函数程序 (8)3.3 按键扫描及LED显示函数 (9)3.3.1 键盘去抖及LED显示子程序 (10)3.4 中断函数 (11)3.4.1 中断程序 (12)第4章电子琴和调试 (12)4.1 调试工具 (12)4.2 调试结果 (13)4.3 电子琴设计中的问题及解决方法 (14)第5章电子琴设计总结 (15)参考文献 (16)附录 (17)前言音乐教育是学校美育的主要途径和最重要内容,它在陶冶情操、提高素养、开发智力,特别是在培养学生创新精神和实践能力方面发挥着独特的作用。
近年来,我国音乐教育在理论与实践上都取得了有目共睹的成绩,探索并形成了具有中国特色的、较为完整的音乐教育教学体系。
但我国音乐教育的改革力度离素质教育发展的要求还存在一定距离。
如今,电子琴作为电子时代的新产物以其独特的功能和巨大的兼容性被人们广泛的接受和推崇。
而在课堂教学方面,它拥有其它乐器无法比拟的两个瞬间:瞬间多元素思维的特殊的弹奏方法;瞬间多声部(包括多音色)展示的乐队音响效果的特点。
结合电子琴自身强大的功能及独特的优点来进行音乐教育的实施,这样就应该大力推广电子琴进入音乐教室,让电子琴教学在音乐教育中发挥巨大的作用。
现代乐器中,电子琴是高新科技在音乐领域的一个代表,体现了人类电子技术和艺术的完美结合。
电子琴自动伴奏的稳定性、准确性,以及鲜明的强弱规律、随人设置的速度要求,都更便于人们由易到难、深入浅出的准确掌握歌曲节奏和乐曲风格,对其节奏的稳定性和准确性训练能起到非常大的作用。
基于51单片机的复音电子琴课程设计X汇鹏课程组1班指导老师:宋荣摘要:本设计是基于数字电路为基础,以单片机技术为核心,软件设计采用模块化结构,采用C语言编程,通过按键控制,可以发出两个不同的声音,并实现音乐盒的功能。
内容上首先描述系统硬件工作原理,介绍各个接口模块的功能,而后介绍软件上的各个功能模块。
关键字:单片机,电子琴,STC90C51一绪论随着科学技术的迅速发展,尤其是在电子领域上的发展,让电器走进千家万户,越来越多的物件可以用电器用品代替,电子乐器渐渐代替传统乐器出现在众人眼前,电子乐器相比于传统乐器更轻便,也更加便宜,让乐器走进千家万户,这次制作的核心在于单片机,单片机体积小,性能好,造价便宜。
并且能实现强大的功能。
复音电子琴不仅能够实现复音效果,还能成为一个音乐盒,这也是得益于单片机的强大功能。
二设计要求与方案(一)设计要求1.能够实现电子琴的复音功能。
2.能够实现音乐盒的功能(二)设计方案1.关于电子琴的发声原理本作品采用了用单片机模块产生的频率进行输出,蜂鸣器作为输入,蜂鸣器收到来自单片机控制端口的不同频率的信号,会发出对应的声音频率,这就完成了从电信号转换成声音信号的过程。
2.关于电子琴的复音功能复音是指由许多纯音组成的声音。
复音的频率用组成这个复音的基音的频率来表示。
一般乐器发出的声音都是复音。
由于单片机程序执行是按照顺序执行,所以本作品利用两个单片机模块,一个单片机模块控制一个蜂鸣器,再用8个独立按键作为键盘,当两个不同按键被按下的时候,两个蜂鸣器能几乎同时发出这两个声音。
在空间中产生和弦效果。
使之相比于单音电子琴能使旋律变得更加丰富。
3.关于音乐盒功能按下按键后能够播放音乐。
利用单片机片内存储功能,通过软件编程的方式,将一些曲目编写在片内ROM里,通过按下控制键加普通按键,实现8个独立按键的功能转换。
4.关于单片机芯片的选择方案一:采用89C51芯片作为硬件核心,采用Flash ROM,内部具有4KB ROM存储空间,能于3V 的超低压工作,而且与MCS-51系列单片机完全兼容,但是运用于电路设计中时由于不具备ISP在线编程技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的损坏。
51汇编电子琴课程设计一、课程目标知识目标:1. 学生能理解51汇编语言的基本原理,掌握与电子琴相关的硬件控制方法。
2. 学生能掌握电子琴音阶、音调和音符的基础知识,并能运用51汇编语言实现音符的播放。
3. 学生了解电子琴的电路原理,能分析并描述51汇编在电子琴中的应用。
技能目标:1. 学生能运用51汇编语言编写程序,实现电子琴的基本功能,如播放音符、和弦等。
2. 学生能够通过编程解决实际问题,如调试程序、优化代码等。
3. 学生培养团队协作能力,通过小组合作完成一个具有实际功能的电子琴项目。
情感态度价值观目标:1. 学生培养对编程和电子制作的兴趣,激发创新精神。
2. 学生在课程学习中,培养耐心、细心和专注的品质,提高解决问题的能力。
3. 学生通过课程学习,认识到编程与实际生活的联系,增强学以致用的意识。
本课程针对高年级学生,结合学科特点和教学要求,将知识目标、技能目标和情感态度价值观目标进行分解,旨在使学生在掌握汇编语言基础知识的同时,提高实际动手能力和团队合作能力,培养对编程和电子制作的兴趣,为后续学习奠定基础。
二、教学内容本课程教学内容以《51单片机原理与应用》教材为基础,结合课程目标,组织以下内容:1. 51单片机基础知识:介绍51单片机的内部结构、工作原理及编程环境。
2. 汇编语言基础:讲解汇编指令、寄存器、伪指令等基本概念。
3. 电子琴硬件原理:分析电子琴的电路原理,介绍相关元件及其功能。
4. 音符与音阶编程:教授如何用51汇编语言实现音符、音阶的编程控制。
5. 电子琴程序设计:指导学生编写程序,实现电子琴的基本功能。
6. 项目实践:分组进行项目实践,完成一个具有实际功能的电子琴制作。
教学内容安排和进度如下:第一周:51单片机基础知识学习,了解汇编语言环境。
第二周:汇编语言基础,学习汇编指令和寄存器。
第三周:电子琴硬件原理,学习相关元件及其功能。
第四周:音符与音阶编程,编写相关程序。
第五周:电子琴程序设计,完善程序功能。
基于51单⽚机的简易电⼦琴设计基于51单⽚机的简易电⼦琴设计⼀、设计任务及要求1、在该简易电⼦琴设计中,设置8个按键,8个按键可以发出do、re、mi、fa、sol、la、si、Do 8个⾳阶。
2、设计三个拨码开关,三个拨码开关可以调节⾼⾳、中⾳、低⾳三个⾳调。
3、画出电路的总体⽅框图和电路原理图。
⼆、设计原理⾳乐由许多不同的⾳阶组成的,⽽每个⾳阶对应着不同的频率,这样,我们就可以利⽤不同的频率组合,构成我们想要的⾳乐。
简易电⼦琴是摁下拨码开关时,单⽚机AT89C51会发出声⾳,声⾳从P1.0端⼝经过LM386,经过放⼤以后传⼊喇叭。
声⾳主要是经过单⽚机4×4矩阵键盘的按键产⽣,这⾥只⽤到8个按键来产⽣⾼中低的8个⾳阶,来产⽣do re mi fa sol la si Do。
下⾯是计数初值:三、设计⽅案本次设计的电⼦琴主要是利⽤AT89C51单⽚机为核⼼控制元件,同时还包括键盘、拨码开关和扬声器等控制模块,由键盘选择⼋个⾳阶。
1、电路原理图的总体设计总体电路需要c51单⽚机⼀⽚,⾳乐按键及喇叭等外围电路,要进⾏⾳调控制和⾳频放⼤,设计好的电路图如下图所⽰:2、键盘控制模块的设计矩阵按键部分由8个轻触按键按照2⾏4列排列,连接到P3端⼝。
将⾏线所接的单⽚机的I/O⼝作为输出端,⽽列线所接的I/O,则作为输⼊。
⾏线输出是低电平,有健按下,则输⼊线就会被拉低,这样,通过读输⼊线的状态就可得知是否有键按下。
3、键盘消抖当⽤⼿按下⼀个键时,如图所⽰,往往按键在闭合位置和断开位置之间跳⼏下才稳定到闭合状态的情况;在释放⼀个键时,也回会出现类似的情况。
这就是抖动。
抖动的持续时间随键盘材料和操作员⽽异,不过通常总是不⼤于10ms。
⽤软件⽅法可以很容易地解决抖动问题,这就是通过延迟10ms来等待抖动消失,此后再读⼊键盘码。
⼀个单⽚机⼯作于12M晶振,它的时钟周期是1/12(微秒)。
它的⼀个机器周期是12*(1/12)也就是1微秒。
目录摘要 (3)Abstract (3)1绪论 (4)1.1背景 (4)1.2目的 (4)1.3 意义 (4)1.4基本理论依据和主要工作内容 (4)2 设计方案简述 (6)2.1键盘模块 (6)2.2发声模块 (6)2.3 8X8点阵显示模块 (6)2.4系统技术指标和预期功能 (7)3 详细设计 (8)3.1主要IC芯片介绍 (8)3.2硬件设计 (11)4 设计结果及分析 (19)4.1 测试 (19)5总结 (20)参考文献 (21)附录主要程序代码 (22)摘要单片机的应用已经越来越贴近生活,用单片机来实现一些电子设计也变得容易起来。
本设计阐述的主要内容是一种基于51 单片机的电子琴的设计,其核心芯片AT89S52 单片机,内部电路包括4X4行列式键盘模块、音频放大模块和8X8LED点阵显示模块,本系统运行稳定,功能较为完善,控制系统可靠,性价比较高等,具有一定的实用价值。
对于那些需要显示的信息量不是很大,分辨率不是很高,又需要制造成本相对比较低的场合,使用大、小屏幕LED点阵显示器是比较经济适用的,他可以显示字符、数字和简单图形,显示亮度较高,并且对环境条件要求比较低。
电子乐器的结构较为复杂,音源是由晶体管产生的电振动,并通过音色回路而产生各种音色;同时由周波数调制产生颤音效果,由振幅调制产生各种乐器的音效。
关键词:AT89S52单片机;音频放大模块;8X8点阵AbstractIts applications have become increasingly close to life, with a single chip to achieve a number of electronic design is becoming simpler. The main elements of the design described is based on 51 single-chip, the flower design, the core chip AT89S52 microcontroller Internal circuit including the 4X4 determinant keyboard module, audio amplifier module and 8X8LED dot matrix display module, the system is stable, function better, control system reliability, higher cost and so on, has some practical value. For those who need to display the amount of information is small, resolution is not high, they need to make the occasion a relatively low cost, using large and small screen, LED dot matrix display is more economical, and he can display characters, numbers and simple graphics, display brightness higher and lower demands on the environmental conditions. : The structure of more complex electronic instruments, the source is generated by the transistor electrical vibration, and sound loops generated by a variety of tone; also modulated by the frequency to produce vibrato effects, generated by the amplitude modulated sounds of various instruments.Keywords:AT89S52 Microcontroller;Audio Amplifier Module;8X8 matrix1绪论1.1背景单片机是随着大规模集成电路的出现极其发展,将计算机的CPU,RAM,ROM,定时/计数器和多种I/O接口集成在一片芯片上,形成了芯片级的计算机,因此单片机早期的含义称为单片微型计算机(single chipmicrocomputer).它拥有优异的性价比、集成度高、体积小、可靠性高、控制功能强、低电压、低功耗的显著优点.主要应用于智能仪器仪表、工业检测控制、机电一体化等方面,并且取得了显著的成果。
摘要本设计是基于AT89S52单片机的简易电子琴设计。
主要组成是以51单片机最小系统为核心,通过键盘获取按键信息,通过运用单片机定时器等部件实现蜂鸣器发声同时用数码管同步显示。
本系统具有播放歌曲及选取按键输入高、中、低音的功能。
本设计的特点是:大部分功能通过软件实现,使电路简单明了,系统稳定性好。
电子琴是电子科技与音乐结合的产物是一种新型的键盘乐器。
一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。
关键字:AT89S52,按键,数码管,蜂鸣器,音阶。
(要求宋体、小四号,行间距为固定值22磅。
字数500字以上。
介绍你所作设计的主要内容及主要方法和取得的结果,是整个报告的概括性内容,不要超过一页面)目录(小三号居中,加粗)1 概述………………………………………………………………………………1.1 51系列单片机简介89系列单片机是ATMEL公司的8位FLASH单片机系列。
89系列单片机是以8031为核心构成的,它和8051系列单片机外部端子是一样的、兼容的,其最大特点是片内含有FLASH存储器。
AT89S52单片机是一种低功耗、高性能、内含4KB的闪速存储器(Flash Memory)的8位微控制器。
片内闪速存储器的程序代码或数据可在线写入,也可通过常规的编程器编程。
(宋体、小四,行间距固定值18磅。
以下相同要求)……………………1.2 电子琴简介电子琴为键盘乐器,采用半导体集成电路,对乐音信号进行放大,通过扬声器产生音响。
电子琴有多种类型,为业余型和专业型。
使用五线谱,多为高低音双行记谱。
有时也用中音谱。
电子琴又称作电子键盘,属于电子乐器,发音音量可以自由调节。
音域较宽,和声丰富,甚至可以演奏出一个管弦乐队的效果,表现力极其丰富。
基于51单片机电子琴设计课程设计
“基于51单片机电子琴设计课程设计”是一门介绍如何使用51单片机设计电子琴的课程。
本课程主要以51单片机为核心,以硬件电路、基础电路、信号处理程序及计算机软件为基础,介绍如何设计和控制电子琴原理,包括电子琴合成器、音源和操控器等技术知识。
课程通过理论讲解、硬件示范和软件实践的方式,引导学生搭建51单片机电子琴,并运用51专有语言和C语言,将单片机程序下载到电子琴中,实现声音的发出以及控制功能。
同时,学生还能学习电子琴软件仿真技术,理解电子琴的构造及琴键按钮的控制原理,掌握电子琴的基本程序,掌握电子琴的发声装置的设计等。
本课程旨在让学生掌握单片机电子琴的原理,熟悉信号处理程序和计算机存储系统,掌握原理及应用实践。
学生可以通过实践学习基础电路结构,了解单片机操作原理和程序编写应用,也可以运用所学知识及联系实际应用,完成不同功能需求的电子琴设计、系统设计及控制。
从而为建立有趣、实用的小型电子产品奠定基础。
经过本课程的学习,学生可以比较熟练的设计出基于51单片机的电子琴系统,实现基本的功能及控制,熟悉电子琴原理及程序设计,熟悉电子琴系统分析及调试。
另外,还可以运用计算机软件如Keil C51等,完成更复杂的电子琴程序设计,使学生掌握先进的电子琴设计技术,学会分析并解决实际的电子琴控制问题,进一步提升学生的学习能力和职业发展能力。
目录1.设计题目 (3)2. 设计目的 (3)3. 主要内容 (3)4. 音符频率与计数初值对照表 (3)5.定时/计数器的工作原理 (4)5.1 方式寄存器 (4)5.2启/停控制寄存器TCON (6)6. 中断控制 (6)6.1 TCON用于中断请求 (6)6.2 中断允许寄存器IE (7)7.系统分析 (7)7.1 系统组成 (8)7.2 系统工作原理 (8)8.系统硬件设计 (8)8.1 系统硬件总体设计 (8)8.2 LED显示模块 (9)8.3 扬声器模块 (9)8.4 子系统(模块)电路图 (10)8.4.1 共阳极电路图 (10)8.4.2 上位开关 (10)9.系统软件设计 (10)9.1 系统软件总体设计 (10)9.2 本系统总体代码 (11)10.课程设计成果 (15)11.个人总结 (15)参考文献 (17)一、设计题目:简易电子琴二、设计目的:(1)熟悉单片机的内部结构;(2)掌握C51编程方法;(3)掌握定时器与发声的关系;(4)掌握交流蜂鸣器的发声原理和程序控制方法;(5)掌握串行控制键盘键的识别方法;(6)掌握声音频率的计算方法。
三、主要内容本系统设计制作一个可演奏的电子琴。
综合应用了两项设计。
(1)能产生纯音,了解音调高低的控制方法。
(2)用键盘代替电子琴的键盘,控制演奏音乐。
(a)掌握串行控制键盘键的识别方法;(b)根据键值控制发声。
(3)至少演奏一支乐曲。
四、音符频率与计数初值对照表:低音7 370 0xf64c 中音6 740 0xfb29高音6 1480 0xfd98低音7 415 0xf75a 中音7 831 0xfbb1高音7 1661 0xfddc五、定时/计数器原理MCS-51单片机内部有2个16位的可编程定时/计数器,定时/计数器0由计数器TH0和TL0组成,定时/计数器1由计数器TH1和TL1组成,THX和TLX(X=0,1)分别为两个8位计数器,连接起来可组成16位计数器。
单片机原理及系统课程设计专班姓学指基于单片机的16键电子琴一、电子琴设计的目的、要求与设计方法1.1设计目的(2)设置定时器产生不同频率的方波,I/O口输出,经功放后扬声器发声。
(3)采用4×4矩阵键盘弹奏16个音(低XI到高DO)。
二、电子琴的设计方案及原理2.1设计总体方案本系统采用AT89C52为主控芯片。
输入电路有16个琴键按键,通过按键随意按下所要表达的音符,作为电平送给主体电路,中央处理器通过识别,解码输出音符,在扬声器中发出有效的声音。
1个音乐按键用于播放音乐和切换歌曲,通过按键触发中断,重置定时器初值,于另一个扬声器中发出有效音响。
总设计框图如下图1所示。
);三、电子琴的硬件设计基于单片机AT89C51的电子琴电路由琴键控制电路、数码管显示电路、音频播放电路、时钟-复位电路、音乐切换电路和电源电路六部分所构成。
3.1琴键控制电路琴键控制电路作为人机联系的输入部分,也是间接控制数码显示和音频功放的重要组成部分。
键盘按照连接方式可以分为独立式和矩阵式键盘两类。
如图2所示为4X4矩阵式键盘电路,由一个4X4的行、列结构可以构成一个16个按键键盘。
?矩阵中无按键按下时,行线为高电平;当有按键按下时,行线电平状态将由与此行线相连的列线的电平决定。
列线的电平如果为低,则行线电平为低;列线的电平如果为高,则行线的电平也为高,这是识别按键是否按下的关键所在。
图2矩阵式键盘独立式键盘的特点是一键一线,各键相互独立,每个键各接一条I/O口线,通静态显示方式就是无论在任何时刻只有一个LED数码管处于显示状态,即单片机采用“扫描”方式控制各个数码管轮流显示。
?对于以上两种数码管驱动电路的的优缺点比较如表3所示。
由于静态驱动方式的显示无闪烁,亮度较高,编程简单,加上本次设计的数码管显示电路只需要2个数码管,且分别接两部分管脚,故选择静态驱动方式来显示数码管更为合理。
如图3所示为数码管显示电路,采用静态驱动方式和共阳极接法。
基于51单片机的电子琴设计课程设计单片机原理》课程设计前言本课程设计旨在通过基于51单片机的电子琴设计,加深学生对单片机原理的理解和应用。
在本设计中,我们将介绍电子琴的设计要求、所用设备及软件以及总体设计方案。
随后,我们将详细介绍系统硬件设计中琴键控制电路、音频功放电路、时钟-复位电路和LED显示电路的设计。
第1章基于51单片机的电子琴设计1.1 电子琴的设计要求在电子琴的设计中,我们需要考虑琴键数量、音频输出质量、电源电压和外部接口等因素。
在本设计中,我们将采用25个琴键,保证音频输出质量和电源电压稳定,并提供外部接口以便于扩展和调试。
1.2 电子琴设计所用设备及软件在本设计中,我们将使用51单片机、琴键、音频功放、时钟、LED显示器等设备,并使用Keil C51编译器进行软件开发。
1.3 总体设计方案在总体设计方案中,我们将采用按键扫描方式实现琴键控制,使用PWM技术实现音频输出,使用外部晶振提供时钟信号,并使用LED显示器显示琴键状态。
第2章系统硬件设计2.1 琴键控制电路在琴键控制电路中,我们将采用矩阵按键扫描方式,通过51单片机的IO口进行扫描和检测。
同时,我们还将使用电容式触摸开关来实现琴键的触发。
2.2 音频功放电路在音频功放电路中,我们将采用TDA7297芯片作为功放,通过PWM技术实现音频输出,并通过滤波电路滤除杂音和谐波。
2.3 时钟-复位电路在时钟-复位电路中,我们将采用12MHz晶振作为时钟源,并使用复位电路确保系统在上电时能够正确运行。
2.4 LED显示电路在LED显示电路中,我们将采用MAX7219芯片实现LED点阵显示,并通过SPI接口与51单片机进行通信。
同时,我们还将使用CD4511芯片实现数码管显示琴键状态。
通过本课程设计,我们可以深入理解单片机原理的应用,掌握电子琴的设计和制作技术,提高自身的实践能力和创新能力。
2.5 整体电路本章将介绍电子琴的整体电路设计。
基于51单片机的电子琴课程设计摘要本设计主要研究基于AT89C52单片机的简易电子琴设计。
它是以单片机作为主控核心,设置键盘、蜂鸣器等外围器件;另外还用到一些简单器件如:NPN型三极管及电阻等。
利用按键实现音符和音调的输入;用NPN型三极管8550实现低音频功率放大;最后用蜂鸣器进行播放“送别”。
本设计硬件部分主要由最小系统,按键系统模块和蜂鸣器模块组成。
其软件部分主要有主程序模块、定时中断程序、定时计数程序。
(1)最小系统:它是单片机应用系统的设计基础。
它包括单片机的选择、时钟系统设计、复位电路设计、简单的I/O口扩展、掉电保护等。
(2)按键系统模块:本设计采用10个按键,其中7个按键用来显示7个音调,其它3个按键可以进行高低中音的切换,并自动播放已存歌曲。
(3)蜂鸣器模块:此电子琴发音电路是通过三极管驱动蜂鸣器发音,经过上拉电阻提高驱动能力。
本次设计首先对单片机设计简易电子琴仔细分析,接着制作硬件电路和编写软件的程序,最后进行软硬件的调试运行。
并且从原理图,主要芯片,各模块的原理和各个模块的程序调试来阐述。
利用单片机产生不同频率来获得我们要求的音阶,实现高、中、低共21个音符的发音和音乐播放时的控制,并且能自动播放程序中编排的音乐。
系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比高等,具有一定的使用和参考价值。
目录1.概述 01.1设计背景 01.2设计意义 01.3 设计任务 02.系统总体方案及硬件设计 (1)2.1总体设计 (1)方案一:采用单个的逻辑器件组合 (1)方案二:用VHDL语言编程来实现 (1)2.2单片机选型 (2)2.3单片机的最小工作系统 (2) (2) (3)2.4 原理框图 (3)2.5 按键部分设计 (4)2.5.1操作键设计 (4) (4) (5)2.6发音部分设计 (6)3.系统软件设计 (6)3.1系统分析 (6) (6) (7)3.2 参数计算 (9) (9) (9) (9)3.3程序设计 (12) (12) (13)4. Proteus软件仿真 (15)4.1硬件调试 (15)4.2 软件调试 (15)4.3 仿真结果(任举一例) (16)4.4 结果分析 (16)5. 课程设计体会 (17)参考文献 (18)附1 源程序代码 (19)附2 系统原理图 (27)1.概述1.1设计背景随着电子科学技术的飞速发展,电子技术正在逐渐改善着人们的学习、生活、工作,因此开发本系统希望能够给人们带来更多的生活乐趣。
基于51单片机的电子琴设计随着科技的不断发展,单片机技术已经成为了现代电子设备中的重要组成部分。
51单片机作为一种广泛应用的单片机系列,具有高性能、低功耗、高集成度等特点,被广泛应用于各种嵌入式系统开发中。
本文将介绍一种基于51单片机的电子琴设计。
一、系统硬件设计1、单片机选择本设计选用AT89C51单片机作为主控制器,AT89C51是一种低功耗、高性能的8位单片机,具有4K字节的可编程存储器和128字节的RAM,同时具有丰富的外设接口,如UART、SPI、I2C等。
2、电子琴设计电子琴采用8×8 LED点阵作为输出设备,通过单片机控制点阵的亮灭状态来展示音乐波形。
具体实现方式是将音频信号通过一个运放放大器放大,然后将其输入到LED点阵中,通过控制点阵的亮灭状态来展示音乐的波形。
3、存储模块设计为了实现电子琴曲目的存储和播放,本设计选用了一块AT24C02 EEPROM芯片作为存储设备。
AT24C02是一种串行E2PROM存储器,容量为256字节,可以通过I2C总线与单片机进行通信。
将曲目信息存储在AT24C02中,可以实现曲目的存储和播放功能。
4、按键模块设计本设计采用4×4矩阵键盘作为输入设备,通过扫描按键状态来实现音符的选择和节奏控制。
矩阵键盘的行线连接到单片机的P1口,列线连接到P2口,通过检测行列组合的变化来确定按下的键位。
二、系统软件设计1、音符解码本设计采用MIDI音符编码方式来存储和播放曲目信息。
在解码过程中,根据音符的频率和持续时间计算出对应的音高和节奏信息,然后将其用于驱动电子琴的输出设备展示音乐的波形。
2、演奏控制为了实现节奏控制,本设计采用了一种基于时间间隔的演奏方式。
在演奏过程中,单片机根据设定的节奏间隔时间来触发音符输出,从而实现对节奏的控制。
同时,为了实现曲目的停止和播放功能,我们需要在软件中加入相应的控制逻辑。
3、存储和播放在软件设计中,我们需要实现将曲目信息存储到AT24C02中以及从AT24C02中读取曲目信息的功能。
目录前言 (2)第1章基于51单片机的电子琴设计 (3)1.1 电子琴的设计要求 (3)1.2 电子琴设计所用设备及软件 (3)1.3 总体设计方案 (3)第2章系统硬件设计 (5)2.1 琴键控制电路 (5)2.2 音频功放电路 (6)2.3 时钟-复位电路 (6)2.4 LED显示电路 (6)2.5 整体电路 (7)第3章电子琴系统软件设计 (9)3.1 系统硬件接口定义 (9)3.2 主函数 (10)3.2.1 主函数程序 (10)3.3 按键扫描及LED显示函数 (11)3.3.1 键盘去抖及LED显示子程序 (12)3.4 中断函数 (13)3.4.1 中断程序 (14)第4章电子琴和调试 (14)4.1 调试工具 (14)4.2 调试结果 (15)4.3 电子琴设计中的问题及解决方法 (16)第5章电子琴设计总结 (17)参考文献 (18)附录 (19)前言音乐教育是学校美育的主要途径和最重要内容,它在陶冶情操、提高素养、开发智力,特别是在培养学生创新精神和实践能力方面发挥着独特的作用。
近年来,我国音乐教育在理论与实践上都取得了有目共睹的成绩,探索并形成了具有中国特色的、较为完整的音乐教育教学体系。
但我国音乐教育的改革力度离素质教育发展的要求还存在一定距离。
如今,电子琴作为电子时代的新产物以其独特的功能和巨大的兼容性被人们广泛的接受和推崇。
而在课堂教学方面,它拥有其它乐器无法比拟的两个瞬间:瞬间多元素思维的特殊的弹奏方法;瞬间多声部(包括多音色)展示的乐队音响效果的特点。
结合电子琴自身强大的功能及独特的优点来进行音乐教育的实施,这样就应该大力推广电子琴进入音乐教室,让电子琴教学在音乐教育中发挥巨大的作用。
现代乐器中,电子琴是高新科技在音乐领域的一个代表,体现了人类电子技术和艺术的完美结合。
电子琴自动伴奏的稳定性、准确性,以及鲜明的强弱规律、随人设置的速度要求,都更便于人们由易到难、深入浅出的准确掌握歌曲节奏和乐曲风格,对其节奏的稳定性和准确性训练能起到非常大的作用。
电子琴所包含的巨量的音乐信息和强大的音乐表现力可以帮助音乐教学更好地贯彻和落实素质教育,更有效地提高人们的音乐素质和能力。
目前,市场上的电子琴可谓琳琅满目,功能也是越来越完备。
以单片机作为主控核心,设计并制作的电子琴系统运行稳定,其优点是硬件电路简单、软件功能完善、控制系统可靠、性价比较高等,具有一定的实用与参考价值。
这就为电子琴的普及提供了方便。
二、电子琴设计要求本设计主要是用AT89C51单片机为核心控制元件,设计一台电子琴。
以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有7个按键和1个复位按键。
本系统主要是完成2大功能:音乐自动播放、电子琴弹奏。
关于声音的处理,使用单片机C语言,利用定时器来控制频率,而每个音符的符号只是存在自定义的表中。
第1章基于51单片机的电子琴设计1.1 电子琴的设计要求本设计主要是用AT89C51单片机为核心控制元件,设计一台电子琴。
以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有7个按键和1个复位按键。
本系统主要是完成的功能:电子琴弹奏。
关于声音的处理,使用单片机C语言,利用定时器来控制频率,而每个音符的符号只是存在自定义的表中。
本设计的电子琴有以下要求:1.用键盘作出电子琴的按键,共7个,每键代表1个音符。
各音符按照符合电子琴的按键顺序排列;2.利用五彩小灯显示有按键按下及相对应的位置。
3.达到电子琴的基本功能,可以用弹奏出简单的乐曲;1.2 电子琴设计所用设备及软件本设计除了需要计算机,还会用到两款软件:仿真软件Proteus、编程软件Keil uVision4。
1.仿真软件Proteus的简介Proteus软件具有其它EDA工具软件的功能,诸如:原理布图、PCB自动或人工布线、SPICE电路仿真。
除此之外还有一些革命性的特点:互动的电路仿真、仿真处理器及其外围电路。
所实现的功能:数字电路仿真2.Keil uVision4的简介uVision4在uVision3 IDE的基础上,增加了更多大众化的功能:多显示器和灵活的窗口管理系统;系统浏览器窗口的显示设备外设寄存器信息;调试还原视图创建并保存多个调试窗口布局;多项目工作区简化与众多的项目。
所实现的功能:编写程序1.3 总体设计方案本系统采用AT89C51为主控芯片,因其精度较高,操作比较灵活,输入电路和输出电路由芯片来进行处理,电路的系统的稳定性高,功耗小。
其中,输入电路有7个独立按键,通过按键随意按下所要表达的音符,作为电平送给主体电路,中央处理器通过识别,解码输出音符,在扬声器中发出有效的声音。
由于需要显示的信息不多,显示电路未采用液晶屏显示,而是使用LED 管显示电路负责显示按下的琴键所对应的键值,这样既节省了成本了,又降低了编程难度。
如图1-1所示基于单片机AT89C51的电子琴电路,它主要由琴键控制电路、LED 显示电路、音频功放电路、时钟-复时钟复位电路和电源电路五部分所构成。
图1-1 电路的原理框图AT89C51 放大电路 按键模块 声音模块 LED 显示系统时间第2章系统硬件设计基于单片机AT89C51的电子琴电路由琴键控制电路、数码管显示电路、音频功放电路、时钟-复位电路和电源电路五部分所构成。
琴键控制电路采用了8输入与门芯片CD4068B,收集7个独立按键的开关状态信号,并触发单片机的外部中断来处理;而数码管显示电路负责显示按下的琴键所对应的键值;同时,音频功放电路也会播放琴键对应的音调;电源电路为整个电路提供能源。
2.1 琴键控制电路琴键控制电路作为人机联系的输入部分,也是间接控制数码显示和音频功放的重要组成部分。
键盘按照连接方式可以分为独立式和矩阵式键盘两类。
此次设计采用的是独立键盘。
独立式键盘的特点是一键一线,各键相互独立,每个键各接一条I/O口线,通过检测I/O输入线的电平状态,可判断出被按下的按键。
显而易见,这样电路简单,各条检测线独立,识别按下按键的软件编写简单。
适用于键盘按键数目较少的场合,不适用于键盘按键数目较多的场合,因为将占用较多的I/O口线。
独立式键盘电路如图3所示,8个独立按键分别对应一个I/O口线,当某一按键按下时,对应的检测线就变成了低电平,与其它按键相连的检测线仍为高电平,只需读入I/O输入线的状态,判别哪一条I/O输入线为低电平,很容易识别哪个键被按下。
图2-1 独立按键电路图2.2 音频功放电路如图2-2所示音频功放电路,它主要由三极管放大器和扬声器组成。
其中,扬声器具有自身功耗低、电压增益可调整、电源电压范围大、外接元件少和谐波失真小等优点,广泛应用于录音机和收音机之中。
电位器Rv1是用来调节声音的大小。
图2-2 音频电路2.3 时钟-复位电路时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。
常用的时钟电路有两种方式,一种是内部时钟方式,另一种是外部时钟方式。
AT89C51内部有一个用于构成振荡器的高增益反相放大器,输入端为芯片引脚XTAL1,输出端为引脚XTAL2。
这两个引脚跨接石英晶体振荡器和微调电容,构成一个稳定的自激振荡器,图2-3是AT89S51内部时钟方式的电路,C1和C2的典型值通常选择为30pF,石英晶体常选6MHz或12MHz的。
本设计采用内部时钟方式做时钟电路。
图2-3复位电路图2.4 LED显示电路本文设计中采用的是LED,LED(Light Emitting Diode)发光二极管缩写,它是半导体二极管的一种,可以把电能转化成光能。
发光二极管与普通二极管一样是由一个PN结组成,也具有单向导电性。
LED具有体积小,电压低,使用寿命长,价格低,亮度高,低热量等优点。
但是显示内容单一。
本文中采用它显示按键的键位。
如图2-4所示。
图2-4 LED显示电路图2.5 整体电路基于单片机AT89C51的电子琴电路由琴键控制电路、LED显示电路、音频功放电路、时钟-复位电路和电源电路五部分所构成。
琴键控制电路采用了7输入,收集7个独立按键的开关状态信号,并触发单片机的外部中断来处理;而LED显示电路负责显示按下的琴键所对应的键值;同时,音频功放电路也会播放琴键对应的音调;电源电路为整个电路提供能源。
如图2-5所示。
图2-5整体电路第3章电子琴系统软件设计系统功能的实现一般包括硬件部分和软件部分,一旦硬件确定下来,软件要实现的功能也随之确定。
而为使编程思路清晰,应先绘制程序流程图。
图3-1 电子琴系统流程图3.1 系统硬件接口定义系统硬件接口定义如表1所示表1 系统硬件接口定义3.2 主函数主函数流程图如图所示。
利用模块化的思想,主函数只执行初始化函数,对所需的I/O口、外部中断1、定时器0进行初始化配置。
音频处理函数和LED显示函数。
另外,键码的识别与刷新是通过中断函数来完成。
图3-2 函数流程图3.2.1 主函数程序void main(void){TMOD=0x01; //tmod 方式1ET0=1;EA=1;LED=0xff;KEY =0xff;while(1){if(KEY != 0xff){delay();key_scan();STH0=tab[MUSIC]/256; //设初始值STL0=tab[MUSIC]%256;TR0=1;}else{SPEAKER = 1;TR0=0;}}}3.3 按键扫描及LED显示函数由于本设计采用的是接触开关式按键,故不可避免存在机械抖动。
按键被按下是,其触点电压变化过程如图19所示。
这种抖动会使系统处于不稳定状态,故需要进行消抖处理。
抖动时间的长短和按键的机械特性有关,一般为5~10ms。
通常手动按下键然后立即释放,这个操作中稳定闭合的时间超过20ms,因此单片机在检测按键是否按下时都需要加上去抖动操作,有专门的去抖动电路或则芯片,但同用软件延时的方法也能轻易解决抖动问题,没必要添加多余的硬件。
本设计是用软件消抖方法编写一个消抖程序。
当按键按下去后,首先对其进行连续两次取样,如果两次都为低电平,则输出低电平;如果其中有一次高电平,则输出高电平。
本文所设计的显示为LED显示,当键盘得到低电平时,输出P1口的LED常亮。
以表示所指向的键盘动作。
3.3.1 键盘去抖及LED显示子程序void key_scan(void){if(KEY != 0xff){switch (~KEY)//显示的列位置{case 0x01:{MUSIC = 0;P0=0xfe;break;}case 0x02:{MUSIC = 1;P0=0xfd;break;}case 0x04:{MUSIC = 2;P0=0xfb;break;}case 0x08:{MUSIC = 3;P0=0xf7;break;}case 0x10:{MUSIC = 4;P0=0xef;break;}case 0x20:{MUSIC = 5;P0=0xdf;break;}case 0x40:{MUSIC = 6;P0=0xbf;break;}}}}3.4 中断函数中断函数用到了定时器中断。