基于单片机的简易电子琴电路设计
(完整版)基于51单片机的简易电子琴设计
(完整版)基于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.能够实现基本的琴键功能即每按下⼀个琴键,单⽚机能够检测到键盘的按键,并根据按键的位置,通过程序来控制,使蜂鸣器发出不同频率(⾳调)的声⾳,声⾳延迟⼀段时间,等到按键放开后,声⾳停⽌。
然后再继续扫描,看是否有键按下,如此循环下去,即可实现基本的琴键功能。
单片机创新实验报告--基于单片机的电子琴电路设计
Liaoning Normal University开放实验室项目研究论文题目:基于单片机的电子琴电路设计学院:物理与电子技术学院专业:电子信息工程班级序号:学号:学生姓名:指导教师:2011年12月基于单片机的电子琴电路设计学生:指导教师:物理与电子技术学院电子信息工程专业2009级摘要:电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。
它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。
本文的主要内容是用AT89c51 单片机为核心控制元件,设计一个电子琴。
以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16 个按键和扬声器。
本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有一定的实用和参考价值。
关键词:电子琴; AT89C51;编程;可控前言随着大规模集成电路的出现和发展,芯片生产厂家把中央处理器CPU,随机存取内存RAM,只读存储器ROM,定时器/计数器以及I/O接口电路等主要计算机部件,集成在一块集成电路芯片(硅片)上,形成芯片级计算机,称为单片微型计算机,直译为单片机。
单片机虽只是一个芯片,但从组成和功能上看,它已具有了微机系统的含义,又称微型处理部件MCU(Micro Controller Unit),单片机商品名称为微控制器单元。
虽然单片机出现的历史并不长,但发展十分迅猛,在集成度、功能、速度、可靠性、应用领域等全方位向更高水平发展。
目前单片机已用于工业控制、机电一体化设备、仪器仪表、信号处理、现代兵器、交通能源、商用设备、医疗设备及家用电器等各个领域,随着单片机性能的不断提高,它的应用将会更加广泛。
单片机技术发展非常快,所以目前的产品都致力于在功能全面、技术先进、操作简便、安全可靠、价格合理等方面进行仔细研究,精心设计;及时掌握最新的单片机技术,在条件允许的情况下,尽可能地利用最新的单片机技术来研制其应用系统,再利用单片机体积小、价格低、功能强等特点,以保证所设计的产品在未来的一段时间内仍具生命力。
基于单片机电子琴设计
基于单片机的简易电子琴设计一、设计目的本方案设计数码管显示音符的实验,使用基于AT89C51单片机,在数码管上显示按键所代表音符的数字,通过键盘可以调节低音,中音,高音的音符,按下数据蜂鸣器会发出相应音符发出的声音。
二、摘要:通过数码管显示音符的数字,按下键盘,蜂鸣器会发出声音进行提示关键词:单片机,键盘,蜂鸣器,数码管硬件电路设计1、单片机模块设计2、本次设计采用的是单片机AT89C51。
芯片共有40个引脚,引脚的排列顺序为从靠芯片的缺口,如图3.1所示。
左边那列逆时针数起,依次为1,2,3.....40,其中芯片的1脚顶上有一个凹点。
在单片机的40个引脚中,电源引脚2根,外接晶体振荡器引脚2根,控制引脚4根以及4组8位可编程I/O引脚32根。
3、4、图AT89C51管脚图5、AT89C51单片机共有4组8位可编程I/O口,分别为P0、P1、P2、P3口,每个口有8位,共32根。
每一根引脚都可以编程,比如用来控制电机、交通灯等,开发产品时就是利用这些可编程引脚来实现我们想要的功能。
6、P0口:8位双向I/O口线,名称为P0.0-P0.7;7、P1口:8位准双向I/O口线,名称为P1.0-P1.7;8、P2口:8位准双向I/O口线,名称为P2.0-P2.7;9、P3口:8位准双向I/O口线,名称为P3.0-P3.7。
10、本文单片机模块如图所示,主要是由单片机芯片与晶振和复位电路组成的。
是由单片机来控制整个系统,让我们的系统可以正常的运行。
2、数码管显示模块设计LED(Light Emitting Diode)发光二极管缩写。
LED数码管是由发光二极管构成的。
常见的LED数码管为“8”字型的,共计8段。
它由七个条形发光二极管和一个小圆点发光二极管组成,每一段对应一个发光二极管。
一般来说分共阳极和共阴极两种接法,如图4所示为八段LED数码管结构及外形。
共阳极LED数码管的发光二极管的阳极连接在一起,公共阳极接正电压,当某个发光二极管的阴极接低电平时,发光二极管被点亮,相应的段被显示。
基于单片机的电子琴的电路设计
基于单片机的电子琴的电路设计引言随着计算机在社会各领域的渗透,单片机的应用正在不断地走向深入,同时带动着工业、农业、商业、家电以及玩具的日新月异更新,极大地提高了电子电路及系统设计质量和效率。
本文中所设计的具有存储功能的单片机电子琴是由STC89C51 单片机、小键盘、LCD 以及音频功放电路和扬声器组成的。
利用该电子琴电路,用户可以自由地输入音符,利用单片机产生不同频率来获得我们要求的音阶,使扬声器发出悦耳的音乐,最终可随意弹奏想要表达的音乐。
同时详细论述了该系统的设计过程及关键技术。
1 系统硬件组成电子琴的控制电路分为单片机STC89C51、工作指示LED、LCD 显示器、按键输入、喇叭接口等几部分。
其硬件电路结构框图如图1 所示。
1.1 单片机STC89C51 简介STC 单片机是一款增强型5l 单片机,完全兼容MCS-51。
STC89C51 可以代替AT89C51,而且功能更强,速度更快,寿命更长,价格更低。
该单片机具有40 个引脚,采用双列直插DIP-40 封装。
STC89C51 可以完成ISP 在线编程功能,而AT89C51 则不能。
因此,将AT89C51 中的程序直接烧录到STC89C51 中后,STC89C5l 就可以代替AT89C51 直接工作。
STC 推出的系列51 单片机芯片全面兼容其它51 单片机。
STC89C51 内部有E2PROM,可以在程序中修改,而且断电不丢失数据。
此外,还增加了两级中断优先级等等,STC89 系列单片机的基本特性如图2 所示。
通常电子琴所输入的音阶值都先存入变量数组中,演奏时才逐一取出来播放。
基于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微秒。
基于单片机的简易电子琴的设计
22. 电子琴1 •实验任务(1 •由4X4组成16个按钮矩阵,设计成16个音 (2.可随意弹奏想要表达的音乐。
2. 电路原理图图 4.22.13. 系统板硬件连线(1.把“单片机系统”区域中的P1.0端口用导线连接到“音频放大模块”区 域中的SPK IN 端口上;5-IK Is s£ 52 嶺E 曾s B 9一10VLS 自rnrr空a §s ss §s 5S <區£§■& ■ss:官益CKHFC d §2R STTL CflFz i ■Air氏疽氐氐M w &氏u>'sS.WOiw-rsswo(2.把“单片机系统“区域中的 P3.0 — P3.7端口用8芯排线连接到“ 4X4行列式键盘”区域中的C1— C4 R1— R4端口上; 4.相关程序内容1 . 4X4 行列式键盘识别; 2. 音乐产生的方法;一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我 们就可以利用不同的频率的组合, 即可构成我们所想要的音乐了, 当然对于单片 机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这 样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。
现在以单片机12MHZ 晶振为例,例出高中低音符与单片机计数 T0相关的计数值 如下表所示低音 0—19之间,中音在 20—39之间,高音在 40—59之间TABLE: DW 0,63628,63835,64021,64103,64260,64400,64524,0,0音符 频率(HQ 简谱码(T 值)音符 频率( HZ ) 简谱码(T 值) 低 1 DO 26263628 # 4 FA# 740 64860 #1 DO# 277 63731 中 5 SO 784 64898 低 2 RE 294 63835 # 5 SO# 831 64934 #2 RE# 311 63928 中 6 LA 880 64968 低 3 M 330 64021 # 6 932 64994 低 4 FA 349 64103 中 7 SI 988 65030 # 4 FA# 370 64185 高 1 DO 1046 65058 低 5 SO 392 64260 # 1 DO# 1109 65085 # 5 SO# 415 64331 高 2 RE 1175 65110 低 6 LA 440 64400 # 2 RE# 1245 65134 # 6 466 64463 高 3 M 1318 65157 低 7 SI 494 64524 高 4 FA 1397 65178 中 1 DO 523 64580 # 4 FA# 1480 65198 # 1 DO# 554 64633 高 5 SO 1568 65217 中 2 RE 587 64684 # 5 SO# 1661 65235 # 2 RE# 622 64732 高 6 LA 1760 65252 中 3 M 659 64777 # 6 1865 65268 中 4 FA69864820高 7 SI196765283下面我们要为这个音符建立一个表格, 的数据有助于单片机通过查表的方式来获得相应DW 0,63731,63928,0,64185,64331,64463,0,0,0DW 0,64633,64732,0,64860,64934,64994,0,0,0DW 0,65058,65110,65157,65178,65217,65252,65283,0,0DW 0,65085,65134,0,65198,65235,65268,0,0,0DW 02、音乐的音拍,一个节拍为单位(C调)曲调值DELAY 曲调值DELAY调4/4 125ms 调4/4 62ms调3/4 187ms 调3/4 94ms调2/4 250ms 调2/4 125ms对于不同的曲调我们也可以用单片机的另外一个定时/计数器来完成。
基于单片机系统的简易电子琴的设计与实现
题目基于单片机系统的简易电子琴的设计与实现设计要求:1、能实现电子琴的基本功能,可以用弹奏出简单的乐曲。
手动演奏,且能手动演奏八度音的高低音,音色纯真。
2、演奏不同的音时,数码管有对应的显示。
3、功率不大于500mw,音质悦耳,无失真。
摘要随着社会的发展进步,音乐逐渐成为我们生活中很重要的一部分,有人曾说喜欢音乐的人不会向恶。
我们都会抽空欣赏世界名曲,作为对精神的洗礼。
本论文设计一个基于单片机的简易电子琴。
我们对于电子琴如何实现其功能,如音色选择、声音强弱控制、节拍器、自动放音功能等等也很好奇。
电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。
它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。
本文的主要内容是用AT89S52单片机为核心控制元件,设计一个电子琴。
以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键和扬声器。
本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有一定的实用和参考价值。
一、系统总体设计该设计要实现一种由单片机控制的电子琴,单片机工作频率为11.0592MHZ ,使用其定时/计数器T0,工作模式为1,改变计数值TH0和TL0可以产生不同频率的脉冲信号。
该设计具有16个音节的键盘,用户可以根据乐谱在键盘上进行演奏,音乐发生器会根据用户的弹奏,通过扬声器将音乐播放出来。
由于本例实现的音乐发生器是由用户通过键盘输入弹奏乐曲的,所以节拍由用户掌握,不由程序控制。
如图1所示系统总体框图。
图1 系统总体框图键盘扫描AT89S52数码管显示扬声器播放音乐电源部分二、系统硬件设计(1)系统复位电路单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作。
无论是在单片机刚开始接上电源时,还是断电后或者发生故障后都要复位。
单片机课设设计论文:基于STC89C51单片机的简易电子琴设计
单片机课程设计论文题目:基于单片机的简易电子琴设计学院:机电工程学院专业:电气工程及其自动化姓名: ### ### ###指导教师:完成日期: 2012-12-27目录摘要 (1)绪论 (2)1方案论证 (3)1.1原理图 (3)1.2主体方案 (3)1.3系统方案设计绍 (4)1.3.STC89C51简介 (5)1.3.1单片机工作原理 (8)1.3.2数码管 (13)2实现过程 (14)2.1.1 程序设计内容 (14)2.1.2 I/O并行口直接驱动LED显示 (14)2.2 音乐产生的方法 (15)2.2.1 原理 (15)2.2.2 程序框图 (16)3全文总结 (17)3.1结束语 (18)参考文献 (19)附录 (20)1.电路原理图 (20)2.程序框图 (21)3.系统流程图 (22)4.语言源程序 (23)摘要在现代各种生活中,电子琴作为一种音乐型玩具,广泛用于与人们的日常生活中。
市场上有各种各样的电子琴。
特别是日本产的,音质优美,它是有专门的音乐控制芯片制造的。
由于其价格较贵,无法大面积普及,且功能单一。
用89c51作为主控中心,研制一种简易的微型电子琴,尽可能地体现较好的音质来,是一种可做的尝试。
以单片机为核心设计的简易电子琴系统,由按键扫描电路、声音产生驱动电路、复位电路、等模块组成的,是一种比较实用、廉价的电子玩具。
本论文所设计的简易电子琴,它分为两大部分,硬件电路的设计和软件的设计。
硬件电路的设计以AT89S51单片机为控制主板,辅以外围的扩展设备蜂鸣器、矩阵键盘、共阳数码管,形成一个可被控制的显示系统。
软件设计通过控制单片机内部的定时器T0来产生不同频率的方波,驱动喇叭发出不同音节的声音.再利用延迟来控制发音时间的长短,即可控制音调中的节拍.把乐谱中的音符对应的频率转换为定时常数,把相应的节拍变换为定时常数,然后作成表格存放在储存器中,由程序查表得到定时常数和延时常数,分别用以控制定时器产生方波的频率和该频率方波的持续时间.当延迟常数到时,再查下一个音符的定时常数和延迟常数.依次进行下去,就可演奏悦耳动听的音乐.主要实现 1》能够发出1.2.3.4.5.6.7等七个音符。
基于单片机的简易电子琴设计
1 方案论证 1.1原理图V c c40E A31R S T9G N D20X 119X 218P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.5/T115P3.6/WR16P3.7/RD17P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732ALE 30PSEN29P2.7/A1528P2.6/A1427P2.5/A1326P2.4/A1225P2.3/A1124P2.2/A1023P2.1/A922P2.0/A821U1AT89S51R110K R210KR310KY112MHzC730pF C630pF12345678P1HEADER 8S1SW -PBS2SW -PBS3SW -PBS4SW -PBS5SW -PBS6SW -PBS7SW -PBS8SW -PBS9SW -PBS10SW -PBS11SW -PBS12SW -PBS13SW -PBS14SW -PBS15SW -PBS16SW -PBC110uFVCCVcc 6IN+3IN-2BY PASS7V O UT 5GA IN 1GA IN 8GN D4U2LM386C210uF C30.1uF VCCC4R410KC50.1uFLS1扬声器CR4CR3CR2CR1BR4BR3BR2BR1C R 4C R 3C R 2C R 1B R 4B R 3B R 2B R 1R4220agdefb cdpa 7b 6c 4d 2e 1f 9G N D3G N D8g 10dp 5DS1DP Y7_SEG_DP1.2系统板硬件连线系统板硬件连线如图1-1所示,发生模块,键盘模块,及LED显示模块连接如下1.把“单片机系统”区域中的P1.0端口用导线连接到“音频放大模块”区域中的SPK IN端口上;2.把“单片机系统”区域中的P3.0-P3.7端口用8芯排线连接到“4X4行列式键盘”区域中的C1-C4 R1-R4端口上;3.把“单片机系统”区域中的P0.0/AD0-P0.7/AD7端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个a-h端口上;要求:P0.0/AD0对应着a,P0.1/AD1对应着b,……,P0.7/AD7对应着h。
基于单片机的电子琴设计
基于单片机的电子琴设计一、引言二、总体设计方案(一)设计目标设计一款基于单片机的电子琴,能够实现基本的音符演奏、音色切换、节奏控制等功能,并且具有良好的音质和稳定性。
(二)系统组成本电子琴系统主要由单片机控制模块、键盘输入模块、音频输出模块、显示模块和电源模块等部分组成。
1、单片机控制模块选用 STM32 系列单片机作为控制核心,负责处理键盘输入信号、生成音频信号、控制显示等功能。
2、键盘输入模块采用矩阵键盘,通过扫描键盘获取用户的按键操作,将其转换为对应的音符编码发送给单片机。
3、音频输出模块使用DAC 芯片将单片机生成的数字音频信号转换为模拟音频信号,再通过放大器和扬声器输出声音。
4、显示模块采用液晶显示屏,用于显示当前的演奏状态、音色选择、节奏模式等信息。
5、电源模块为整个系统提供稳定的电源供应,可采用电池供电或外接电源适配器。
三、硬件设计(一)单片机最小系统STM32 单片机的最小系统包括时钟电路、复位电路和电源电路。
时钟电路为单片机提供工作时钟,复位电路用于系统初始化,电源电路为单片机提供稳定的电源。
(二)键盘电路矩阵键盘由行线和列线组成,通过逐行扫描的方式检测按键状态。
将键盘的行线和列线分别连接到单片机的 GPIO 引脚,通过编程实现键盘扫描和按键识别。
(三)音频输出电路选用高性能的 DAC 芯片,如 PCM1794,将单片机输出的数字音频信号转换为模拟音频信号。
为了提高音频输出的质量,还需要添加放大器和滤波电路,以增强信号的功率和去除噪声。
(四)显示电路液晶显示屏通过 SPI 接口或 I2C 接口与单片机连接,单片机通过发送指令和数据来控制显示屏的显示内容。
(五)电源电路根据系统的工作电压和电流需求,选择合适的电源芯片,如LM7805 等,将输入电源转换为所需的电压,并通过滤波电容等元件提高电源的稳定性。
四、软件设计(一)主程序流程主程序首先进行系统初始化,包括单片机初始化、键盘初始化、音频输出初始化、显示初始化等。
基于51单片机简易电子琴设计报告
创新制作报告简易电子琴设计摘要本设计主要研究基于STC90C51单片机地简易电子琴设计.它是以单片机作为主控核心,键盘、电脑音响、led等外围器件构成;本设计硬件部分主要由最小系统,按键系统模块、led显示模块和发声模块组成.其软件部分主要有主程序模块、定时中断程序、定时计数程序、显示程序.(1)最小系统:它是单片机应用系统地设计基础.它包括单片机地选择、时钟系统设计、复位电路设计等.(2)按键系统模块:本设计采用24个按键,其中21个按键用来显示21个音调,其它3个按键可以进行功能地切换.(3)LED显示模块:八个LED,七个红色LED来显示音符,1个绿色LED指示.(4)发声模块:此电子琴发音是用现成地电脑音响.本次设计首先对单片机设计简易电子琴仔细分析,接着制作硬件电路和编写软件地程序,最后进行软硬件地调试运行.并且从原理图,主要芯片,各模块地原理和各个模块地程序调试来阐述.利用单片机产生不同频率来获得我们要求地音阶,实现高、中、低共21个音符地发音和显示和音乐播放时地控制显示,并且能自动播放程序中编排地音乐,同时还有保存兵播放已按下地音符.系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠.目录1.概述41.1设计背景41.2设计意义41.3 设计任务42.系统总体方案及硬件设计42.1总体设计42.2硬件设计62.3单片机地最小工作系统62.4电源设计:2.5按键设计:2.6LED灯设计:2.7发声模块:3.系统软件地地编写 73.1电子琴基本原理 73.2主程序 93.3播放音乐模块 163.4录音模块 204.1硬件调试 234.2软件调试 235课程设计体会附1 源程序代码241.概述1.1设计背景由于本课程要做一个创新制作,而老师给地参考题中觉得电子琴这课题不错,因为电子琴能陶冶人地情操,同时使人更快乐,他能真正影响人地心情,因此决定做.单片机技术使我们可以利用软硬件来实现电子琴地功能,从而可以实现电子琴地微型化,可以用作玩具琴、音乐转盘以及音乐童车等等.并且可以进行一定地功能扩展.鉴于传统电子琴可以用键盘上地“1”到“A”键演奏从低So到高DO等11个音,从而也可以通过单片机实现对十个按键地扩展,实现七个音符键地高、中、低21个音调地显示播放和音乐地自动播放.1.2设计意义①可以了解音乐地基本知识;②加深对单片机地使用;③学会自己做工程;1.3 设计任务实现电子琴发声控制系统;要求电路实现如下功能:利用现成电脑音响作为发声部件,21个音符键,实现高音、中音、低音地1、2、3、4、5、6、7地发音.并在存储几首歌曲地内容,可以实现自动播放.2.系统总体方案及硬件设计2.1总体设计音乐是有由不同地音阶组成地,而不同地音阶又是由不同地频率发出地,那么产生不同地频率,就可以发出不同地音乐了.而利用单片机就可以产生不同地频率地方波,因此选择单片机为为主来设计.通过程序编写实现单片机输出不同地频率,输出地方波信号再通过接口给电脑音响,让其发声.同时电子琴加入led用来显示.本设计地主要工作是程序编写,通过程序让电子琴实现音乐演奏,歌曲播放以及记录已按下地音符,并播放,最后实现led显示.而硬件主要有单片机最小系统,键盘模块,发声模块,还有一个电源模块.总体框图22.2硬件设计电路图1注:本系统有主控单片机、键盘、led 显示模块、发声模块以及电源组成.2.2.2单片机地最小工作系统:按键输入LED 显示电脑音响单片机这里用地单片机地型号是STC90C516RD+,配以12M地晶振,以及复位电路供电电路构成最小系统.2.2.3电源设计:这里电源直接用直流5v电源;2.2.4按键设计:按键采用4*6扫描;4根行线接P10-P13,六根列线接P14-P17以及P20,P21口共24个按键,0-20代表音符键,0-6代表低音1,2,3,4,5,6,7;7-13代表中音1,2,3,4,5,6,7;14-20代表高音1,2,3,4,5,6,7;21号按键表示播放歌曲键,当按下21号键,进入播放歌曲函数,当按下22号键时,播放下一首歌曲,当按下23键时,退出播放返回主程序.而在主程序中时,代表演奏状态,当按下23号键时,进入录音状态,此时有个绿色地指示灯会亮.而进入录音后,再按一次23键,指示灯灭,退出录音状态,返回主程序.2.2.5LED灯设计:七个红色地LED代表按键地音符DO,RE,MI...分别接到P0口地各个I端口音符DO时,一个LED亮,音符MI时,2个LED亮...同时为了区分高中低音,三个八度LED显示不同,当低音音符播放时,LED闪亮,当是中音时,LED也闪亮,但是闪亮地频率更快,当是高音时,LED全亮,这是通过调节LED亮灭时间来实现,也可以说是PWM吧.还有一个绿色LED指示当前状态,当电子琴处于录音时,LED亮,否则,灭;2.2.6发声模块:这里没有自己做功放,而是使用电脑地音响.3系统软件地地编写3.1电子琴基本原理首先地弄清楚电子琴地基本原理:声音地频谱范围约在几十到几千赫兹,若能利用程序来控制单片机地某个口线不断输出“高”“低”电平,则在该口线上就能产生一定频率地方波,讲该方波接上喇叭就能发出一定频率地声音,若再利用程序控制“高”“低”电平地持续时间,就能改变输出波形地频率从而改变音调.乐曲中,每个音符对应着确定地频率,下表给出各音符频率.如果单片机某个口线输出“高”“低”电平地频率和某个音符地频率一样,那么将此口线接上喇叭就可以发出此音符地声音.根据这个原理就能设计出,对于单片机来说要产生一定频率地方波大致是先将某口线输出高电平然后延迟一段时间再输出低电平,如此循环地输出就会产生一定频率地方波,通过改变延迟地时间就可以改变输出方波地频率.单片机内部有两个定时计数器T1和T0,单片机地定时计数器实际上是个计数装置,它既可以对单片机内部晶振驱动时钟计数,也可以对外部输入地脉冲计数,对内部晶振计数时称为定时器,对外部时钟计数时称为计数器.当对单片机内部晶振驱动时钟计数时,每个机器周期定时计数器地计数值就加,当计数值达到计数最大值时计数完毕并通知单片机.音乐中各个音符地频率表如下:音符频率表3弄懂后开始程序地实现3.2主程序模块主程序框图参数计算发音原理若要产生音频脉冲,只要算出某一音频地周期(1/频率),再将此周期除以2,即为半周期地时间.利用定时器计时半周期时间,每当计时终止后就将P1.0反相,然后重复计时再反相.就可在P1.0引脚上得到此频率地脉冲.利用AT89C51地内部定时器使其工作计数器模式(MODE1)下,改变计数值TH0及TL0以产生不同频率地方法产生不同音阶.计算举例例如,频率为523Hz,其周期T=1/523=1912μs,因此只要令计数器计时956μs/1μs=956,每计数956次时将I/O反相,就可得到中音DO(523Hz).计数脉冲值与频率地关系式是:N=fi÷2÷fr,式中,N是计数值;fi是机器频率(晶体振荡器为12MHz时,其频率为1MHz);fr是想要产生地频率.其计数初值T地求法如下:T=65536-N=65536-fi÷2÷fr 例如:设K=65536,fi=1MHz,求中音DO(261Hz).T=65536-N=65536-fi÷2÷fr =65536-1000000÷2÷fr=65536-500000/fr,中音DO地T=65536-500000/523=64580. 3.2.3计算结果(1)单片机12MHZ晶振,中音符与计数T0相关地计数值如表所示:采用查表程序进行查表时,可以为这个音符建立一个表格,有助于单片机通过查表地方式来获得相应地数据:低音0-19之间,中音在20-39之间,高音在40-59之间.用单片机播放音乐,或者弹奏电子琴,实际上是按照特定地频率,输出一连串地方波.为了输出合适地方波,首先应该知道音符与频率地关系.(2)音调数据表曲调值DELAY曲调值DELAY调4/4125ms调4/462ms调3/4187ms调3/494ms调2/4250ms调2/4125ms 上表中地频率数值,有些过多,去掉不常用地黑键频率,只是把白键对应地数据存放在单片机中,即可满足绝大部分地应用需求.定义音调数据表地程序如下:DW 63628,63835,64021,64103,64260,64400,64524 。
基于单片机的电子琴的电路设计
基于单片机的电子琴的电路设计引言随着计算机在社会各领域的渗透,单片机的应用正在不断地走向深入,同时带动着工业、农业、商业、家电以及玩具的日新月异更新,极大地提高了电子电路及系统设计质量和效率。
本文中所设计的具有存储功能的单片机电子琴是由STC89C51单片机、小键盘、LCD以及音频功放电路和扬声器组成的。
利用该电子琴电路,用户可以自由地输入音符,利用单片机产生不同频率来获得我们要求的音阶,使扬声器发出悦耳的音乐,最终可随意弹奏想要表达的音乐。
同时详细论述了该系统的设计过程及关键技术。
1 系统硬件组成电子琴的控制电路分为单片机STC89C51、工作指示LED、LCD显示器、按键输入、喇叭接口等几部分。
1.1 单片机STC89C51简介STC单片机是一款增强型5l单片机,完全兼容MCS-51。
STC89C51可以代替AT89C51,而且功能更强,速度更快,寿命更长,价格更低。
该单片机具有40个引脚,采用双列直插DIP-40封装。
STC89C5 1可以完成ISP在线编程功能,而AT89C51则不能。
因此,将AT89 C51中的程序直接烧录到STC89C51中后,STC89C5l就可以代替AT89C51直接工作。
STC推出的系列51单片机芯片全面兼容其它51单片机。
STC89C51内部有E2PROM,可以在程序中修改,而且断电不丢失数据。
此外,还增加了两级中断优先级等等,STC89系列单片机的基本特性如图2所示。
通常电子琴所输入的音阶值都先存入变量数组中,演奏时才逐一取出来播放单音。
程序中的变量使用的是内部存储器RAM,范围为空间30H~7FH,因此,其程序内存规划是:RAM地址30H~70H存放音阶值,最大内存空间为64字节;RAM地址71H~7FH存放程序其他变量。
程序执行后,工作指示LED闪动,表示程序开始执行。
当按下键盘组中的相对按键时,压电喇叭会发出相对音阶单音,全系统共有2个8度音阶,DO~SI,HI DO~HI SI,14个音阶,所输入的单音会存入89C5l内,至多可以输入64个单音,并可以一起演奏出来,同时还有清除存储功能,可将原数据清除后再重新输入。
基于单片机的简易电子琴电路设计
单片机课程设计任务书题目: 基于单片机的简易电子琴电路设计初始条件:简易电子琴一般具有弹奏一个自然大调7声音阶的功能。
本课程设计,要求用AT89C51等系列芯片实现控制功能,利用按键实现音符和音调的输入;两位的数码管进行被操作的按键显示;用LM386放大电路实现低音频功率放大;最后用蜂鸣器进行播放“送别”。
要求完成的主要任务:1.设计任务根据已知条件,设计并制作一个简易电子琴。
2.设计要求(1)基本要求:①具备7个按键,能够分别较准确地弹奏出1~7八个音符。
②选择电路方案,完成对确定方案电路的设计。
计算电路元件参数与元件选择、并画出总体电路原理图,阐述基本原理。
用EWB或MULTISIM软件完成仿真,之后制作出相应实物,并按规定格式写出课程设计报告书。
(2)扩展要求:(在完成基本要求的前提下,学有余力的同学可完成)①能够弹奏出至少21个音符(三个音阶)。
②能够较便捷地完成音阶的升降。
(用另外三个按键开关实现正常、升8度和降8度的切换)。
时间安排:指导教师签名:年月日基于单片机的简易电子琴控制系统设计摘要目的:本设计主要研究基于AT89C52单片机的简易电子琴设计。
方法:它是以单片机作为主控核心,设置键盘、蜂鸣器等外围器件;另外还用到一些简单器件如:两位数码管,和NPN型三极管及电阻等。
利用按键实现音符和音调的输入;两位的数码管进行被操作的按键显示;用NPN型三极管8550实现低音频功率放大;最后用蜂鸣器进行播放“送别”。
结果:本设计硬件部分主要由最小系统,按键系统模块、数码管显示模块和蜂鸣器模块组成。
其软件部分主要有主程序模块、定时中断程序、定时计数程序、显示程序。
(1)最小系统:它是单片机应用系统的设计基础。
它包括单片机的选择、时钟系统设计、复位电路设计、简单的I/O口扩展、掉电保护等。
(2)按键系统模块:本设计采用10个按键,其中7个按键用来显示7个音调,其它3个按键可以进行高低中音的切换,并自动播放已存歌曲。
基于单片机的简易电子琴设计_毕业设计论文
基于单片机的简易电子琴设计摘要随着科学技术的不断发展,单片机的应用日益成熟。
单片机集成度高、处理功能强大、价格低廉使其在各个领域得到广泛应用。
同时电子琴作科学技术与音乐共同发展的产物,在这个电子信息化的时代,为音乐的大众化做出了不可代替的贡献。
本文主要介绍一种基于51单片机的简易电子琴设计方案。
它采用了STC公司出品的一款低功耗、高性能单片机STC89C52芯片作为主控单元,与4*4矩阵键盘、复位电路、LED双位数码显示器、扬声器等组成主控核心模块。
文章详细论述了电子琴硬件设计和软件结构设计流程,采用了Altium Designer 09画出原理图、PCB图,通过Keil编程软件对电子琴进行软件编程,然后进行软硬件的调试运行并将程序烧录到STC89C52芯片中。
此系统运行比较稳定,具有硬件设计电路简单、清晰,成本低,软件功能完善,控制系统牢靠,性价比高等优点,具有一定的实用和参考价值。
关键词:STC89C52;电子琴;矩阵键盘AbstractAlong with the development of science and technology, the application of SCM increasingly mature. Single chip microcomputer high level of integration, processing powerful, low prices make it is widely used in various fields. At the same time the keyboards for science and technology and music common development of the product, in the electronic information era, for music's popular do can't replace contribution.This paper mainly introduces a kind of simple keyboard based on 51 SCM design scheme. It USES the STC product of our company a low power consumption, high performance microprocessor STC89C52 chips as the master unit, and 4 * 4 matrix keyboard and reset circuit, LED digital display, a double master core module and other components of the speaker. This paper discusses the design of hardware and software structure keyboard design process, the use of a Altium Designer 09 draw a diagram, PCB figure, through the Keil software keyboard to software programming, then the software and hardware debugging run and will burn to STC89C52 chip program. Operation of the system is stable and has the hardware circuit design simple, clear, and the cost is low, the software perfect function, control system firm, price higher advantages, has certain practical and reference value.Key words : stc89c52; keyboard; matrix keyboard目录摘要 (I)Abstract (II)1 绪论 (1)1.1 设计的目的和意义 (1)1.2 设计的主要内容 (1)2 系统概述 (2)2.1 系统工作原理 (2)2.2 系统结构组成 (2)2.2.1 电源电路 (2)2.2.2 控制部分 (3)2.2.3 显示部分 (3)2.2.4 发声部分 (3)2.3 主要芯片及元件的介绍 (3)2.3.1 STC89C52单片机简介 (3)2.3.2 芯片引脚介绍 (4)2.3.3 STC89C52时钟介绍 (6)2.3.4 双位LED数码显示器简介 (7)3 硬件电路的设计 (9)3.1 电源电路的设计 (9)3.2 复位电路的设计 (10)3.2.1 复位操作 (10)3.2.2 复位信号及其产生 (11)3.3 键盘控制电路 (12)3.3.1 矩阵式键盘的概述 (12)3.3.2 矩阵式键盘按键识别原理及方法 (12)3.4 显示电路 (13)4 系统软件设计 (14)4.1 如何利用单片机实现音乐节拍 (14)4.2 如何用单片机产生音频脉冲 (15)4.2.1 音符和频率的关系 (15)4.2.2 定义初值 (16)4.3 音乐发生程序流程图 (17)结论 (18)参考文献 (19)附录一电子琴源程序 (20)附录二原理图 (24)附录三 PCB图 (25)附录四实物图 (26)致谢 (27)1 绪论1.1 设计的目的和意义单片机又称单片微型计算机,英文字母的缩写MCU。
基于单片机的简易电子琴设计课程设计
湖南文理学院课程设计报告课程名称:单片机课程设计专业班级:自动化10102班17号学生姓名:肖葵指导教师:王南兰完成时间: 2013年 6 月 13 日报告成绩:湖南文理学院制摘要随着社会的发展进步,音乐逐渐成为人们生活中很重要的一部分,有人曾说喜欢音乐的人不会向恶。
我们都会抽空欣赏世界名曲,作为对精神的洗礼。
本论文设计一个基于单片机的简易电子琴。
人们对于电子琴如何实现其功能,如音色选择、声音强弱控制、节拍器、自动放音功能等等也很好奇。
电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。
它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。
本文的主要内容是用AT89S52单片机为核心控制元件,设计一个电子琴。
以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键和扬声器。
本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有一定的实用和参考价值。
关键词:AT89S51;音色节拍器;电子琴ABSTRACTWith the development of our society, music has become an important part of life. There’s a saying goes that people who likes music can not be an evil. During our life, we often enjoy all kinds of music in the world to baptize our spirits. This thesis has designed a simple microcontroller-based electronic key board. We are curious about the foundation of electronic keyboard, such as the choice of timber, the control of volume, the metrononme and automatic playback.The keyboard is a product of modern electronic technology combined with music, it is a new type of keyboard instruments. And it plays an important role in modern music. Single chip has a powerful control functions and flexible programming characteristics. It has converged with modern people's lives, become an irreplaceable part. The main content is AT89S51 control of the core components, Design of an electronic organ, single chip as a host to the core, with the keyboard, speakers and other core modules main control module, in the main control module has 16 keys and speakers. Stability of the system, its advantages are simple hardware circuits, software functions, control system reliability, high cost performance and have certain practical and reference value.Key words : single chip MCU keyboard speaker electronic organ目录第一章设计方案分析 (1)1.1设计背景 (1)1.2 设计任务 (1)2.1总体设计 (1)第二章电子琴总体电路图设计 (3)2.1单片机最小系统 (3)2.1.1 AT89S52简介 (3)2.1.2 时钟电路与复位电路 (7)2.2显示部分设计 (7)2.2.1数码显示方式 (7)2.2.2八位数码管的结构 (8)2.3按键模块设计 (8)2.3.1按键选取 (9)2.3.2键盘设计 (9)2.4 发音模块设计 (10)第三章程序设计 (12)3.1 系统总体功能流程图 (12)3.2 参数计算 (12)3.3判断音阶(高中低音)子程序 (14)3.4 播放子程序 (15)第四章 Proteus软件仿真 (17)4.1编程环境PROTEUS (17)4.2用PROTEUS ISIS进行硬件电路绘制 (17)4.3下载HEX文件 (19)4.4软件调试 (20)心得体会 (22)参考文献 (23)附录一原理图 (24)附录二源代码 (25)第一章设计方案分析1.1设计背景随着电子科学技术的飞速发展,电子技术正在逐渐改善着人们的学习、生活、工作,因此开发本系统希望能够给人们带来更多的生活乐趣。
基于单片机的简易电子琴设计(汇编语言)
任务书1.1 课程设计目的本课程设计目的在于培养学生运用已学的单片机原理及应用的基础知识和基本理论,加以综合运用,进行单片机系统设计的初等训练,掌握运用单片机进行系统控制设计的原则、设计内容和设计步骤,为从事单片机相关的毕业设计或今后的工作需要打下良好的基础。
1.2 课程设计内容本次课程设计的主要内容是以单片机为核心控制元件,设计一个电子琴。
以单片机作为主控制核心,与键盘、发光二极管、扬声器等模块组成,其功能是实现单独演奏和自动播放歌曲,主要分为:1.2.1 单独演奏模块通过按键,利用所给键盘的1,2,3,4,5,6,7七个键,能够发出7个不同的音调,即按下按键1、2、3、4、5、6、7,扬声器发出相应音调DO、RE、MI、FA、SO、LA、SI,每当有按键按下时,按键对应的LED灯对应点亮,可以用来演奏不同的歌曲。
1.2.2 自动放歌模块通过按键可以进行单独演奏/自动放歌的选择,利用所给的键盘的第8个按键,能够使电子琴自动播放一首歌曲(歌曲自选,歌曲乐谱通过软件编程实现),自动放歌时,同时配有发光二极管作流水灯显示,达到歌曲与灯同步动作。
1.3 课程设计原则1、尽可能地满足控制系统的的控制要求;2、在满足控制的前提下,力求使控制系统简单、经济;3、保证控制系统运行稳定、可靠;4、考虑到对系统的改进,在选择单片机芯片功能时,应适当留有余量,以便用作扩展功能。
1.4 课程设计步骤1、对设计系统的任务和要求作深入的调查研究,明确控制任务和实现功能;2、选择和确定单片机芯片、音频发声器件和串口下载芯片;3、确定系统整体设计方案;4、电子琴系统仿真设计;5、整体系统的软件设计;6、联机调试;7、撰写设计报告。
1.5 时间安排1.6 基本要求(一)课程设计报告1.系统流程图一张;2.系统仿真图一张;3.系统软件程序清单一张;4.撰写报告一份,包括以下内容:1)写出设计计划和基本步骤。
2)写出系统要求并设计流程图。
基于单片机的简易电子琴设计(C语言编程)
基于单片机的简易电子琴设计摘要电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。
它在现代音乐扮演着重要的角色,单片机具有壮大的操纵功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部份。
本文的要紧内容是用AT89S51单片机作为核心操纵元件,设计一个电子琴。
以单片机作为主控核心,与键盘、扬声器等模块组成核心主操纵模块,在主控模块上设有16个按键和扬声器。
本系统运行稳固,其优势是硬件电路简单,软件功能完善,操纵系统靠得住,性价比较高等,具有必然的有效和参考价值。
关键词:单片机键盘扬声器电子琴AbstractElectronic organ is a modern electronic music technology and the product is a new type of keyboard instruments. It played an important role in modern music. SCM has powerful control functions and flexible programming characteristics. It has converged with modern people's lives, become an irreplaceable part. The main content is AT89S51 control of the core components, design of a electronic organ. SCM as a host to the core, with the keyboard, speaker and other core modules. In the main control module has 16 keys and a speaker. The system is steady, its simple hardware circuits, software functions, reliability of control system and high cost performance is its advantages. It also has certain practical and reference value.Key words : SCM keyboard speaker electronic organ目录摘要..................................................................................................................................... 错误!未定义书签。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
.. .单片机课程设计任务书题目: 基于单片机的简易电子琴电路设计初始条件:简易电子琴一般具有弹奏一个自然大调7声音阶的功能。
本课程设计,要求用AT89C51等系列芯片实现控制功能,利用按键实现音符和音调的输入;两位的数码管进行被操作的按键显示;用LM386放大电路实现低音频功率放大;最后用蜂鸣器进行播放“送别”。
要求完成的主要任务:1.设计任务根据已知条件,设计并制作一个简易电子琴。
2.设计要求(1)基本要求:①具备7个按键,能够分别较准确地弹奏出1~7八个音符。
②选择电路方案,完成对确定方案电路的设计。
计算电路元件参数与元件选择、并画出总体电路原理图,阐述基本原理。
用EWB或MULTISIM软件完成仿真,之后制作出相应实物,并按规定格式写出课程设计报告书。
(2)扩展要求:(在完成基本要求的前提下,学有余力的同学可完成)①能够弹奏出至少21个音符(三个音阶)。
②能够较便捷地完成音阶的升降。
(用另外三个按键开关实现正常、升8度和降8度的切换)。
时间安排:指导教师签名:年月日基于单片机的简易电子琴控制系统设计摘要目的:本设计主要研究基于AT89C52单片机的简易电子琴设计。
方法:它是以单片机作为主控核心,设置键盘、蜂鸣器等外围器件;另外还用到一些简单器件如:两位数码管,和NPN型三极管及电阻等。
利用按键实现音符和音调的输入;两位的数码管进行被操作的按键显示;用NPN型三极管8550实现低音频功率放大;最后用蜂鸣器进行播放“送别”。
结果:本设计硬件部分主要由最小系统,按键系统模块、数码管显示模块和蜂鸣器模块组成。
其软件部分主要有主程序模块、定时中断程序、定时计数程序、显示程序。
(1)最小系统:它是单片机应用系统的设计基础。
它包括单片机的选择、时钟系统设计、复位电路设计、简单的I/O口扩展、掉电保护等。
(2)按键系统模块:本设计采用10个按键,其中7个按键用来显示7个音调,其它3个按键可以进行高低中音的切换,并自动播放已存歌曲。
(3)数码管显示模块:SM420562段选端接在单片机的P0口,两个位选端分别接在P2^0和P2^1。
(4)蜂鸣器模块:此电子琴发音电路是通过三极管驱动蜂鸣器发音,经过上拉电阻提高驱动能力。
结论:本次设计首先对单片机设计简易电子琴仔细分析,接着制作硬件电路和编写软件的程序,最后进行软硬件的调试运行。
并且从原理图,主要芯片,各模块的原理和各个模块的程序调试来阐述。
利用单片机产生不同频率来获得我们要求的音阶,实现高、中、低共21个音符的发音和显示和音乐播放时的控制显示,并且能自动播放程序中编排的音乐。
系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比高等,具有一定的使用和参考价值。
关键词:单片机定时中断蜂鸣器数码管c语言编程1 系统设计本项目所制作的电子琴控制系统是以51单片机为核心的系统,它主要包括模拟信号 主控芯片89C52、发音单元、显示模块、按键模块组成。
具体方案如图1-1所示:图1-1 系统模块采用AT89C52单片机作为主控芯片,设置键盘、蜂鸣器等外围器件,另外还用到一些简单器件如:两位数码管,和NPN 型三极管及电阻等。
利用按键实现音符和音调的输入;两位的数码管进行被操作的按键显示;用NPN 型三极管8550实现低音频功率放大;最后用蜂鸣器发音。
2 硬件电路设计2.1显示部分设计(1)数码显示方式数码显示有静态显示方式与动态显示方式两种。
工作在静态显示方式时,数码管的位线与电源一直相连,数码管中的二极管均处于通电状态,即在静态工作方式下,显示电路中数码管的位选线是同时选通,而数码管的段选线是独立输入。
工作在动态显示方式时,数码管的位线在扫描控制电路的控制下按设定顺序导通,即电路中的数码管是逐个接通电源,数码管的段选线以并联方式与译码电路联接,即在动态工作方式下,数码管不是同时导通显示而是按照设定顺序分时导通显示。
(2)八位数码管的结构本次课程设计的显示电路采用两位数码管进行显示,由于此设计采用的是共阴极的,使用时不加限流电阻为了显示字符,要为LED 显示器段码,除了组成8字形的字符的7段,另加上1个小数点位,共计8段,因此提供给LED 显示器的显示段码为1个字节。
图2-1 数码管电路2.2按键部分设计(1)操作键设计常用的按键有三种:机械触点式按键、导电橡胶式和柔性按键(又称触摸式键盘)。
机械触点式按键是利用机械弹性使键复位,手感明显,连线清晰,工艺简单,适合单件制造。
但是触点处易侵入灰尘而导致接触不良,体积相对较大。
导电橡胶按键是利用橡胶的弹性来复位,通过压制的方法把面板上所有的按键制成一块,体积小,装配方便,适合批量生产。
但是时间长了,橡胶老化而使弹力下降,同时易侵入灰尘。
柔性按键是近年来迅速发展的一种新型按键,可以分为凸球型和平面型两种。
柔性按键最大特点是防尘、防潮、耐蚀,外形美观,装嵌方便。
而且外形和面板的布局、色彩、键距可按照整机的要求来设计。
但是由于客观条件与经济能力有限,本系统采用机械触点式按键。
(2)键盘设计键盘在单片机应用系统中是一个关键的部件,它能实现向计算机输入数据,传送命令等功能,是人工干预计算机的主要手段。
键盘可以分为2类:独立连接式键盘和矩阵式键盘。
矩阵式键盘:单片机系统中,若按键较多时,通常采用矩阵式(也称行列式)键盘。
矩阵式键盘由行线和列线组成,按键位于行、列线的交叉点上。
显然,在按键数量较多时,矩阵式键盘较之独立式按键键盘要节省很多I/O口。
矩阵式键盘中,行、列线分别连接到按键开关的两端,行线通过上拉电阻接到+5V上.当无键按下时,行线处于高电平状态;当有键按下时,行、列线将导通,此时,行线电平将由与此行线相连的列线电平决定。
这是识别按键是否按下的关键。
独立连接式键盘:独立式按键是直接用I/O口线构成的单个按键电路,其特点是每个按键单独占用一根I/O 口线,每个按键的工作不会影响其它I/O口线的状态。
独立式按键电路配置灵活,软件结构简单,但每个按键必须占用一根I/O口线,然而,在按键较多时,I/O口线浪费较大,不宜采用。
独立式按键软件常采用查询式结构。
先逐位查询每根I/O口线的输入状态,如某一根I/O 口线输入为低电平,则可确认该I/O口线所对应的按键已按下,然后,再转向该键的功能处理程序。
由于本程序较为简单,为了使用方便及节省资源,选择独立式键盘。
下图为独立式键盘电路图:图2-2独立式键盘电路图(3)去抖动键盘编程中主要考虑去抖动的问题。
当测试表明有键被按下之后,紧接着就进行去抖动处理。
因为键是机械开关结构,由于机械触点的弹性及电压突跳等原因,在触点闭合或断开的瞬间会出现电压抖动。
为保证键识别的准确,在电压信号抖动的情况下不能进行行状态输入。
为此需进行去抖动处理。
去抖动有硬件和软件两种方法。
硬件方法就是加去抖动电路,从根本上避免抖动的产生。
软件消抖,在第一次检测到有键按下时,执行一段延时程序之后,再检测此按键,如果第二次检测结果仍为按下状态,CPU便确认此按键己按下,消除了抖动。
2.3发音部分设计如下图所示,发音电路是由蜂鸣器、三极管、上拉电阻构成。
由三极管来驱动扬声器发音的,同时加上拉电阻增强驱动电流,提高驱动能力。
图2-3独立式键盘电路图3 软件程序设计3.1 系统分析(1)系统软件的组成①键盘扫描程序:检测是否有按键按下,有按键按下则记录按下键的键值,并跳转至功能转移程序;无按键按下,则返回键盘扫描程序继续检测。
②功能转移程序:对检测到的按键值进行判断,是琴键则跳转至琴键处理程序,是功能键则跳转至相应的功能程序,我们设计的功能程序有两种,即音色调节功能和自动播放乐曲的功能。
③琴键处理程序:根据检测到的按键值,查询音调表,给计时器赋值,使发出相应频率的声音。
④自动播放歌曲程序:检测到按键按下的是自动播放歌曲功能键后执行该程序,电子琴会自动播放事先已经存放的歌曲,歌曲播放完毕之后自动返回至键盘扫描程序,继续等待是否有按键按。
3.2 参数计算(1)发音原理若要产生音频脉冲,只要算出某一音频的周期(1/频率),再将此周期除以2,即为半周期的时间。
利用定时器计时半周期时间,每当计时终止后就将P1.0反相,然后重复计时再反相。
就可在P1.0引脚上得到此频率的脉冲。
利用AT89C51的部定时器使其工作计数器模式(MODE1)下,改变计数值TH0及TL0以产生不同频率的方法产生不同音阶。
(2)计算举例例如,频率为523Hz,其周期T=1/523=1912μs,因此只要令计数器计时956μs/1μs=956,每计数956次时将I/O反相,就可得到中音DO(523Hz)。
计数脉冲值与频率的关系式是:N=fi÷2÷fr,式中,N是计数值;fi是机器频率(晶体振荡器为12MHz时,其频率为1MHz);fr是想要产生的频率。
其计数初值T的求法如下:T=65536-N=65536-fi÷2÷fr例如:设K=65536,fi=1MHz,求中音DO(261Hz)。
T=65536-N=65536-fi÷2÷fr=65536-1000000÷2÷fr=65536-500000/fr,中音DO的T=65536-500000/523=64580。
(3)计算结果(1)单片机12MHZ晶振,中音符与计数T0相关的计数值如表所示:音符频率(HZ)计数值(T值)音符频率(HZ)计数值(T值)低1DO 262 63628 #4FA# 740 64860 #1DO# 277 63737 中5SO 784 64898 低2RE 294 63835 #5SO# 831 94934 #2RE# 311 63928 中6LA 880 64968 低3MI 330 64021 #6LA# 932 64994 低4FA 349 64103 中7SI 968 65030 #4FA# 370 64185 低1DO 1046 65058 低SO 392 64260 #1DO# 1109 65085 #5SO# 415 64331 高2RE 1175 65110 低6LA 440 64400 #2RE# 1245 65134 #6LA# 466 64463 高3MI 1318 65157 低7SI 494 64524 高4FA 1397 65178 中1DO 523 64580 #4FA# 1490 65198 #1DO# 554 64633 高5SO 1568 65217 中2RE 587 64633 #5SO# 1661 65235 #2RE# 622 64884 高6LA 1760 65252 中3MI 659 64732 #6LA# 1865 65268 中4FA 698 64820 高7SI 1967 65283采用查表程序进行查表时,可以为这个音符建立一个表格,有助于单片机通过查表的方式来获得相应的数据:低音0-19之间,中音在20-39之间,高音在40-59之间。