欢迎来到天天文库
浏览记录
ID:39897741
大小:353.00 KB
页数:28页
时间:2019-07-14
《简易电子琴(刘磊)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、目录第1章概述2第2章系统总体方案选择与说明3第3章系统硬件电路设计框图与工作原理41、频率、声音的实现和产生:42.键盘的方案选择:53、关于键盘的抖动问题的分析和解决:54、放大电路分析:75、时钟电路分析:76、复位电路的论证和分析:8第4章软件设计及调试9总结10附录A程序清单12附录B系统硬件电路原理图27第1章概述单片机是随着大规模集成电路的出现极其发展,将计算机的CPU,RAM,ROM,定时/计数器和多种I/O接口集成在一片芯片上,形成了芯片级的计算机,因此单片机早期的含义称为单片微型计算机(singlechipmicrocomputer).它拥有优异的性价比、集成度高、体积小
2、、可靠性高、控制功能强、低电压、低功耗的显著优点.主要应用于智能仪器仪表、工业检测控制、机电一体化等方面,并且取得了显著的成果.单片机应用系统可以分为:(1)最小应用系统是指能维持单片机运行的最简单配置的系统。这种系统成本低廉,结构简单,常构成一些简单的控制系统,如开关状态的输入/输出控制等。片内有ROM/EPROM的单片机,其最小应用系统即为配有晶振,复位电路,电源的单个单片机.片内无ROM/EPROM的单片机,其最小应用系统除了外部配置晶振,复位电路,电源外,还应外接EPROM或EEPROM作为程序存储器用.(2)最小功耗应用系统是指为了保证正常运行,系统的功耗最小.(3)典型应用系统是
3、指单片机要完成工业测控功能所必须的硬件结构系统。本设计主要是通过对电子琴主体部分的电路进行模仿设计,达到电子琴固有的基本功能,故叫简易电子琴。利用定时器可发出不同频率的脉冲,不同频率的脉冲经喇叭驱动电路放大滤波后,就会发出不同音调。其次,定时器按设置的定时参数产生中断,这一次中断发出脉冲低电平,下一次反转发出脉冲高电平,由于定时参数不同,就发出不同频率的脉冲,本设计中按键一次,会发出50个脉冲,松开后随之延时10个脉冲,但在延时的10个脉冲期间继续检测键盘,若此时又有键被按下,若被按下的仍为原键则声音不变,否则键盘会译出被按下的另一个键的音调。第2章系统总体方案选择与说明系统整体安排如下:①
4、 按下K1键发出1的声音。② 按下K2键发出2的声音。③ 按下K3键发出3的声音。④ 按下K4键发出4的声音。⑤ 按下K5键发出5的声音。⑥ 按下K6键发出6的声音。⑦ 按下K7键发出7的声音。① 按下K8键发出7的声音。② 单片机可采用AT89C51、AT89C52、AT89S52、fosc=12MHz。③ 时钟电路,复位电路的设计。④ 8051单片机根据不同的琴键产生不同的乐曲音符,并经过信号放大,由喇叭放出。系统整体方案如图所示:琴键电路放大电路P1.0P0.0
5、P0.7单片机时钟电路复位电路第3章系统硬件电路设计框图与工作原理硬件系统原理图如下页图:1、频率、声音的实现和产生:单片机
6、的频率和声音输出的原理是,利用琴键控制定时器的开中断和闭中断,即实现发音和闭音。在此期间再通过对定时器的定时时间进行控制来产生不同频率的方波,驱动嗡宁器发出不同音阶的声音。把C调中相应琴键对应的音符变换为定常数,作为数据表格存放在存储器中。由程序查表得到定时常数,用以控制定时器产生方波的频率。当下一个琴键按下时,再查下此琴键所对应音符的定时常数。依次进行下去,就可以演奏出自己所要的歌曲。用定时器T0方式0来产生琴键对应音符的频率的方波,由P1.0输出驱动嗡宁器。单片机所用的晶振的频率为6MHz,琴键所对应音符、频率及定时常数三者之间的对应关系如下所示。C调音符71234567频率(Hz)49
7、4524588660698784880988半周期(ms)1.010.950.850.760.720.640.570.51定时值FE07FE25FE57FE84FE98FEC0FEE3FF012.键盘的方案选择:此系统琴键输入是通过独立式键盘来完成的。由于8051单片机的八位I/O口足以能实现控制C调各音阶的输出,并且独立式键盘的编程容易易懂,结构简单,实现起来方便,而且每个按键单独占有一根I/O接口线,每个I/O口的工作状态互不影响,所以采用独立式键盘。P0.0~P0.7口分别对应琴键1~7输入,如下图所示。P1.0
8、P1.780513、关于键盘的抖动问题的分析和解决:当用手按下一个键时,
9、如图3所示,往往按键在闭合位置和断开位置之间跳几下才稳定到闭合状态的情况;在释放一个键时,也回会出现类似的情况。这就是抖动。抖动的持续时间随键盘材料和操作员而异,不过通常总是不大于10ms。很容易想到,抖动问题不解决就会引起对闭合键的识别。用软件方法可以很容易地解决抖动问题,这就是通过延迟10ms来等待抖动消失,这之后,在读入键盘码。键按下前沿抖动后沿抖动闭合稳定图4键抖动信号波形延迟10ms的程序为:MOV
此文档下载收益归作者所有