文档介绍:电子琴实验报告一,,提高综合运用所学知识的能力。,查阅资料,通过独立思考,深入钻研有关问题。、解决问题。。。二,:1:能够通过键盘演奏音符。2:能够保存演奏的音乐,并实现回放。3:有音调调整功能(如:C调,G调)。三,、按键识别基本功能。(1)去抖动:每个按键在按下或松开时,都会产生短时间的抖动。抖动的持续时间与键的质量相关,一般为5—20mm。所谓抖动是指在识别被按键是必须避开抖动状态,只有处在稳定接通或稳定断开状态才能保证识别正确无误。去抖问题可通过软件延时或硬件电路解决。(2)被按键识别:如何识别被按键是接口解决的主要问题,一般可通过软硬结合的方法完成。常用的方法有行扫描法和线反转法两种。行扫描法的基本思想是,由程序对键盘逐行扫描,通过检测到的列输出状态来确定闭合键,为此,需要设置入口、输出口一个,该方法在微机系统中被广泛使用。线反转法的基本思想是通过行列颠倒两次扫描来识别闭合键,为此需要提供两个可编程的双向输入/输出端口。×4矩阵键盘组成1—7数字键演奏音符,蜂鸣器发声,高电平发声,低电平不发声,并通过延迟程序控制输入的频率,不同的频率发出不同的音符,四,实验设计分析针对要实现的功能,采用AT89S52单片机进行设计,AT89S52单片机是一款低功耗,高性能CMOS8位单片机,片内含4KB在线可编程(ISP)的可反复擦写1000次的Flash只读程序存储器,器件采用高密度、非易失性存储技术制造,兼容标准MCS-52指令系统及80C52引脚结构。这样,既能做到经济合理又能实现预期的功能。在程序方面,采用分块设计的方法,这样既减小了编程难度、使程序易于理解,又能便于添加各项功能。程序可分为键盘演奏程序、音乐播放程序、音调调整程序,保存音乐程序,延时程序等。运用这种方法,关键在于各模块的兼容和配合,若各模块不匹配会出现意想不到的错误。首先,在编程之前必须了解硬件结构尤其是各引脚的用法,以及内部寄存器、存储单元的用法,否则,编程无从下手,电路也无法设计。这是前期准备工作。第二部分是硬件部分:依据想要的功能分块设计设计,比如输入需要开关电路,输出需要显示驱动电路和数码管电路等。第三部分是软件部分:先学习理解汇编语言的编程方法再根据设计的硬件电路进行分块的编程调试,最终完成程序设计。第四部分是软件画图部分:设计好电路后进行画图,包括电路图和仿真图的绘制。第五部分是软件仿真部分:软硬件设计好后将软件载入芯片中进行仿真,仿真无法完成时检查软件程序和硬件电路并进行修改直到仿真成功。第六部分是硬件实现部分:连接电路并导入程序检查电路,若与设计的完全一样一般能实现想要的功能。最后进行功能扩展,在已经正确的设计基础上,添加额外的功能!五,:键盘输入部分、播放部分、复位电路。,。蜂鸣器是一种一体化结构的电子讯响器,采用直流图2-3发声模块电路图电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。蜂鸣器在电路中用字母“H”或“HA”(旧标准用“FM”、“LB”、“JD”等)表示。而且由于所需驱动功率较小,且价格低廉,所以,被广泛应用。,电路总体设计图如下::主程序开始程序初始化开始键蜂鸣器发声开始演奏录音键播放键音乐播放NNYYN结合电路图,程序设计的整体思路为:电子琴按键方式:——发声音符为‘1’。——发声音符为‘2’。——发声音符为‘3’。——发声音符为‘4’。——发声音符为‘5’。——发声音符为‘6’。——发声音符为‘7’。——播放保存的音乐。按9键——开始录音。按10键——播放录音。按11键——调整音调。:#include<>#defineucharunsignedchar#defineuintunsignedintuchari,j,x=0,y=0,temp=0