简易电子琴
参考文献:
[1]黄友锐.单片机原理与应用.合肥:工业大学出版社,2014
[2]蓝正.单片机原理及实用技术.成都:西南交通大学,2014.
[3]李朝青.单片机原理及接口技术.北京:北京航空航天大学出版社,2013
[4]陈洪财.单片机原理与应用技术.哈尔滨:哈尔滨工程大学出版社.2012
[5]周坚.单片机轻松入门.北京:北京航天航空大学出版社.2014
在确保硬件电路正常且无异常情况(断路或短路)的情况下方可上电调试,上电调试的目的是检验电路是否接错,同时还要检验原理是否正确。LED电路调试:接通电源,随机按下按钮可以看到LED亮。键盘单片机控制部分调试:上电后,随机按动键盘可以发现各个按键对应的音正确。
4.2软件调试
软件调试是一个重要的任务,当电子琴没有出现预期的功能时,通过反复研究程序的逻辑是否正确,哪些功能实现,哪些功能没实现,是哪一个模块出了问题。实际中往往一个小小的变量没赋予正确的值,其功能完全出不来,通过去修改代码,再利用protus仿真,去看结果是否真确。
-按键发声
-音乐播放(3首以上
2.方案设计与论证(或基本原理与论证)
音乐是有由不同的音阶组成的,而不同的音阶又是由不同的频率发出的,那么产生不同的频率,就可以发出不同的音乐了。而利用单片机就可以产生不同的频率的方波,因此选择单片机为为主来设计。通过程序编写实现单片机输出不同的频率,输出的方波信号再通过功放输出声音。同时电子琴加入led用来显示。
电子工程学院课外学分设计报告
题目:简易电子琴设计
姓名:学号:35
专业:电子信息工程实验室:开放实验室
班级:1211
设计时间:年月日——年月日
评定成绩:审阅教师:
1.设计任务、目的
1.硬件电路设计(制作实物,行列键盘输入,至少21键,扬声器输出)
2.驱动程序设计:扬声器驱动函数,键盘扫描函数
3.结合驱动程序设计程序实现如下功能:
1.单片机最小系统
单片机最小系统由STC89C51芯片、晶振、电容组成。
2.按键设计
按键采用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键,指示灯灭,退出录音状态,返回主程序。
硬件调试主要是针对焊的板子进行调试。
在上电之前,先确保电路中不存在断路或短路情况,这一工作是整个调试工作的第一步,也是非常重要的一个步骤。在这部分调试中主要使用的工具是万用表,用来完成检测电路中是否存在断路或者短路情况的任务。注意焊点之间,确保焊点没有短接在一起,同时注意焊点的美观,确保没有开路以及短路的现象出现。
3.2软件设计
3.2.1主函数流程图如下:
图3.2主函数流程图
3.2.2音乐播放函数流程图如下:
图3.3ห้องสมุดไป่ตู้乐播放流程图
3.2.3按键扫描程序流程图如下:
图3.4按键扫描流程图
3.2.4led流水灯流程图
图3.5判断低中高音符流程图
图3.6led显示低中高音符流程图
4.实现与测试(或调试)
4.1硬件调试
3.Led灯设计
7个绿色的LED代表按键的音符DO,RE,MI...分别接到P0口的各个I端口音符DO时,一个LED亮,音符MI时,2个LED亮…以此类推。有一个绿色LED指示当前状态,当电子琴处于录音时,LED亮,否则,灭。
4.扬声器模块
扬声器模块由扬声器、三极管和电阻组成。经过三极管的放大作用驱动扬声器发声。
uchar cont=0,cont1=0xff; //控制占空比变量
unsigned char code MusicYinFu[]={0xFF,0xFF,0xFB,0x90,0xFC,0x0C,0xFC,0x44,0xFC,0xAC,0xFD,0x09,0xFD,
0x34,0xFD,0x82,0xFD,0xC8,0xFE,0x06,0xFE,0x22,0xFA,0X15,0XFB,0x04,0xFA,0x67,0xFE,0x85};
程序:
#include <stc89.h>
#define uchar unsigned char
#define uint unsigned int
#define led P0
sbit Beep=P3^0;//波形输出口
ucharKeyNo,th0,tl0,flag_yinfu_dizhonggao,yuzhi; //按键按下键值、定时器初值、音符低中高标志位、音符DO、RE...
本设计的主要工作是程序编写和焊电路板,通过程序让电子琴实现音乐演奏,歌曲播放以及记录已按下的音符,并播放,最后实现led显示。而硬件主要有单片机最小系统,键盘模块,发声模块,还有一个电源模块。
图2.1总体方案图
3.硬软件设计
3.1硬件电路设计
图3.1硬件电路图
本系统有主控单片机、按键、led显示模块、扬声器模块以及电源组成。
5.分析与总结
按下按键1~21扬声器输出中高低对应的声音,led流水灯也随之变化;按下按键22播放音乐,led灯随音乐的节拍和音节亮;按下按键23,播放下一首音乐;按下按键24退出音乐播放功能.
结果如图:
总体来说,此次课外学分我收获良多,虽然课外学分的过程中遇到了很多困难与问题,如起初对音乐的一点不懂开始,到器件难找,到硬件焊好后在完善等等,但最终还是完成了设计的任务及要求。这次课外学分设计中,经过努力,在仿真软件和实物上都实现了高、中、低21个音符的发声和音乐的自动播放,使我有了一定的成就感,也使我进一步熟悉和掌握了单片机的内部结构和工作原理,了解了单片机应用系统设计的基本方法和步骤,掌握了单片机仿真软件Proteus的使用方法和键盘、显示器在的单片机控制系统中的应用,同时也掌握了撰写课程设计报告的方法。总之,通过这次课程设计,自己的能力得到进一步的提升。