1 / 11
文档名称:

电子琴实验报告.doc

格式:doc   大小:79KB   页数:11页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

电子琴实验报告.doc

上传人:xiang1982071 2018/9/9 文件大小:79 KB

下载得到文件列表

电子琴实验报告.doc

文档介绍

文档介绍:电子琴实验报告

一, 实验目的
1. 学习使用AT89S52单片机的功能,进行单片机编程,实现键盘演奏音乐的功能,进一步加深对于单片机功能实现过程的理解,强化单片机编程的能力。
2. 设计实现各种功能,包括对音乐的录音以及回访放能,要求能实现各种不同音调,在编程过程中必须考虑到各种细节,例如按键的干扰问题以及滞键。
二,实验要求
基本要求:
1:能够通过键盘演奏音符。
2:能够保存演奏的音乐,并实现回放。
3:有音调调整功能(如:C调,G调)。
4: 自由发挥其他功能.
5: 要求有单片机硬件系统框图,电路原理图,软件流程图。
三,实验基本原理
在单片机的设计中,电子琴是一个典型的例子,电子琴的实现需要用到单片机AT89S52、蜂鸣器等模块。而在本次的实验中,我们利用简单的模块,实现了一个简单的电子琴功能,使用单片机可以驱动蜂鸣器发出声音,还可以控制其发出不同的音调,在一首歌曲里面,不同的音阶对应着不同的频率,在蜂鸣器的发音原理里面,我们只需要给蜂鸣器输入不同的脉冲,蜂鸣器就会发出对应的声音,因此,我们只需要弄明白音阶对应的脉冲就可以了。
在键盘控制中,每个按键对应不同的音阶,按键按下的时候,单片机程序里面都会执行一次程序判断是否有前一次的按键被按下,按键按下以后会控制单片机对蜂鸣器输出不同频率的方波,每种情况对应不同的音阶或者音调。一首歌曲就是有不同的音阶构成,从而就实现了电子琴的功能。
四,实验设计分析
针对要实现的功能,采用AT89S52单片机进行设计,AT89S52单片机是一款低功耗,高性能CMOS8位单片机,片内含4KB在线可编程(ISP)的可反复擦写1000次的Flash只读程序存储器,器件采用高密度、非易失性存储技术制造,兼容标准
MCS- 51指令系统及80C51引脚结构。这样,既能做到经济合理又能实现预期的功能。
在设计程序的时候,分析道电子的功能有三个模块构成,分别是单片机本身,键盘按键输入和蜂鸣器的功能响应。首先应该把程序分开成三个主要部分,分别为按键输入程序、高低音的发生程序和主程序。需要注意的是设计程序的时候,需要把各个程序兼容起来,综合匹配的时候,还要注意各种单片机编程的小细节。
在进行编程之前,需要安装各种必须的软件,包括编程用的ukeil软件、模拟程序运行的Progisp软件,最重要的是电脑必须安装正确的单片机驱动程序。硬件部分需要我们学生自己动手焊制,在焊制的时候一定要保证原件的完好连接,从而保证在运行程序的过程中不会出现硬件问题的影响。编程之前,需要先学习理解C语言编程的方法,再根据设计的硬件电路进行分块的编程调试,最终完成程序设计。
五,实验要求实现

1. 整体设计
此次设计主要是应用单片机来设计电子时钟,硬件部分主要分以下电路模块:显示电路用8个共阴数码管分别显示,星期(年份),小时、分钟(月份)和秒(日),通过动态扫描进行显示,从而避免了译码器的使用,同时节约了I/0端口,使电路更加简单。单片机采用AT89S51系列,这种单片机应用简单,适合电子钟设计。
电路的总体设计框架如下:
蜂鸣器
AT89S52单片机
行列键盘
B. 程序总体设计
本实验用汇编程序完成.
程序总的流程图如下:
主程序开始
按1
按3
按2
按9
按8
按7
按6
按5
按4
按11
响Do
响Fa
响Rei
响Mi
响SuoOOUO
录音
发出自带声音

Xi
响La
变调
按1
按3
按2
按4
按5
按6
按7
记录
Do
记录
Mi
记录
Fa
记录Suo
记录La
记录
Xi
记录
Rei
判断是否有键按下

回主程序
回主程序
回主程序

结合电路图,程序设计的整体思路为:
接通电源,执行程序,在程序至此那个过程中各个按键代表不同的功能,下面是不同状态下各个按键的实现目标方式:
在程序执行开始时,先判断之前是否有按键按下,若之前没有按键按下:
按1键--蜂鸣器发出Do的声音;
按2键--蜂鸣器发出Rei的声音;
按3键--蜂鸣器发出Mi的声音;
按4键--蜂鸣器发出Fa的声音;
按5键--蜂鸣器发出Suo的声音;
按6键--蜂鸣器发出La的声音;
按7键--蜂鸣器发出Xi的声音;
按8键--蜂鸣器发出程序里本来自带的的声音;
按9键--系统执行录音功能,开始录音;
按10键--蜂鸣器发出录音功能执行时所录下的声音;
按11键—系统进入调音的功能,改变输出声音的音调。
在执行录音功能的时候,当你按下录音键以后,每按下键盘里的1——7键的其中一个,系统就会以数组的形式记录下这一按键代表的数字,在