1、基于单片机的电子琴设计电子系统设计创新实验报告题目基于单片机系统的简易电子琴的设计与实现 学生姓名 学生学号 专业名称 指导教师 2013年12月15 日设计要求:1、能实现电子琴的基本功能,可以用弹奏出简单的乐曲。手动演奏,且能手动演奏八度音的高低音,音色纯真。2、演奏不同的音时,数码管有对应的显示。3、功率不大于500mw,音质悦耳,无失真。摘 要随着社会的发展进步,音乐逐渐成为我们生活中很重要的一部分,有人曾说喜欢音乐的人不会向恶。我们都会抽空欣赏世界名曲,作为对精神的洗礼。本论文设计一个基于单片机的简易电子琴。我们对于电子琴如何实现其功能,如音色选择、声音强弱控制、节拍器、自动放音功能
2、等等也很好奇。电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本文的主要内容是用AT89S52单片机为核心控制元件,设计一个电子琴。以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键和扬声器。本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有一定的实用和参考价值。1、系统总体设计该设计要实现一种由单片机控制的电子琴,单片机工作频率为11.0592MHZ,使用其定时/计数器T0,工作模式为
3、1,改变计数值TH0和TL0可以产生不同频率的脉冲信号。该设计具有16个音节的键盘,用户可以根据乐谱在键盘上进行演奏,音乐发生器会根据用户的弹奏,通过扬声器将音乐播放出来。由于本例实现的音乐发生器是由用户通过键盘输入弹奏乐曲的,所以节拍由用户掌握,不由程序控制。如图1所示系统总体框图。 图1 系统总体框图2、系统硬件设计(1)系统复位电路单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作。无论是在单片机刚开始接上电源时,还是断电后或者发生故障后都要复位。根据实际情况选择如图2所示的复位电路。 图2 系统复位电路(2)系统晶振电路AT89S52引脚XTAL1
4、和XTAL2与晶体振荡器及电容C按图2所示方式连接。晶振、电容C1C2及片内与非门(作为反馈、放大元件)构成了电容三点式振荡器,振荡信号频率与晶振频率及电容C1、C2的容量有关,但主要由晶振频率决定,范围在033MHz之间,电容C1、C2取值范围在530pF之间。根据实际情况,本设计中采用11.0592MHZ做为系统的外部晶振。电容取值为30pF。其接线如图3所示 图3 晶振电路(3)键盘扫描电路对键盘扫描电路的扫描方式有行扫描法和线反转法,在此次程序编写中,采用行扫描法,通过在P10P13上循环送出0扫描信号,P14P17输入按键上的高低电平信息给单片机,经处理程序,判断出是哪个开关按下,并
5、送主程序以实现不同功能,如下图4所示。 图4 键盘扫描电路(4)数码管显示电路数码管显示模块核心是共阳级数码管,通过来自单片机I/O口的电平高低来点亮和熄灭数码管上的发光二极管,通过单片机送来的数码管显示编码可以在数码管上显示数字和字符,使应用人员可以很容易的理解按键按下所对应的音符,如下图5所示。 图5 数码管显示电路(5)蜂鸣器发声电路由于无需较大的控制音量,采用三极管组成的蜂鸣器驱动电路即可满足发声需求,电路如图6所示。 图6 蜂鸣器发声电路3、系统软件设计(1)在本实验中,单片机工作于11.0592MHZ时钟频率,使用其定时/计数器T0,工作模式为1,改变计数值TH0和TL0可以产生不
6、同频率的脉冲信号,在此情况下,C调的各音符频率与计数值T的对照如下表:表4-2 音符频率与计数值T的对照表音符频率(HZ)计数值(T值)音符频率(HZ)计数值(T值)低1DO26263628#4FA#74064860#1DO#27763737中5SO78464898低2RE29463835#5SO#83194934#2RE#31163928中6LA88064968低3MI33064021#6LA#93264994低4FA34964103中7SI96865030#4FA#37064185低1DO104665058低SO39264260#1DO#110965085#5SO#41564331高2RE
7、117565110低6LA44064400#2RE#124565134#6LA#46664463高3MI131865157低7SI49464524高4FA139765178中1DO52364580#4FA#149065198#1DO#55464633高5SO156865217中2RE58764633#5SO#166165235#2RE#62264884高6LA176065252中3MI65964732#6LA#186565268中4FA69864820高7SI196765283T的值决定了TH0和TL0的值,其关系为:TH0=T/256,TL0=T%256(2)系统总体功能流程图如下图7所示为
8、系统主程序流程图,首先进行键盘扫描,当有键按下时,就会对应的乐音并且在数码管上显示对应的字符。 图7 系统总体功能流程图(3)按键子程序流程图如下图8所示为该按键子程序流程图,按矩阵键盘不同的按键发出不同乐音并且显示不同的字符。 图8 按键子程序流程图 4、系统测试及调试(1)系统上电后,开发板上显示如图9所示。无按键时,数码管无显示。 图9 上电时开发板状态(2)当按下K0键时,蜂鸣器发出DO的低音,并且在数码管上显示字符0,如下图10所示。 图10 DO低音数码管显示(3)当按下K9键时,蜂鸣器发出Re的高音,并且在数码管上显示字符9,如下图11所示。 图11 Re高音数码管显示5、结论本设计的电子琴播放乐音声音清脆优美、不失真,通过数码管显示不同字符表示不同乐音,使操作简单方便。