实训二 电子琴.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实训二 电子琴.doc

实训二 电子琴 在开发儿童智力的玩具中,一按就能发出不同的音调,一定十分有趣。单片机以其体积小、价格低、编程灵活等特点在这一领域独领风骚。 系统功能要求: 1.具有发出C大调为标准音1234567和7八个音的功能。 2. 设计完整的原理图电路,包括时钟电路、复位电路以及键盘接口电路等。 系统整体方案提示: 系统整体安排如下: 按下K1键发出1的声音。 按下K2键发出2的声音。 按下K3键发出3的声音。 按下K4键发出4的声音。 按下K5键发出5的声音。 按下K6键发出6的声音。 按下K7键发出7的声音。 按下K8键发出7的声音。 单片机可采用AT89C51、AT89C52、AT89S52、fosc=12MHz。 时钟电路,复位电路的设计。 8051单片机根据不同的琴键产生不同的乐曲音符,并经过信号放大,由喇叭放出。系统整体方案如图所示: 琴键 电路 放大 电路 P1.0 P0.0 | P0.7 单片机 时钟电路 复位电路 硬件系统原理图: 硬件系统原理图如下页图: 频率、声音的实现和产生 单片机的频率和声音输出的原理是,利用琴键控制定时器的开中断和闭中断,即实现发音和闭音。在此期间再通过对定时器的定时时间进行控制来产生不同频率的方波,驱动嗡宁器发出不同音阶的声音。把C调中相应琴键对应的音符变换为定常数,作为数据表格存放在存储器中。由程序查表得到定时常数,用以控制定时器产生方波的频率。当下一个琴键按下时,再查下此琴键所对应音符的定时常数。依次进行下去,就可以演奏出自己所要的歌曲。 用定时器T0方式0来产生琴键对应音符的频率的方波,由P1.0输出驱动嗡宁器。单片机所用的晶振的频率为6MHz,琴键所对应音符、频率及定时常数三者之间的对应关系如下所示。 C调音符71234567频率(Hz)494524588660698784880988半周期(ms)1.010.950.850.760.720.640.570.51定时值FE07FE25FE57FE84FE98FEC0FEE3FF01 2.键盘的方案选择 此系统琴键输入是通过独立式键盘来完成的。由于8051单片机的八位I/O口足以能实现控制C调各音阶的输出,并且独立式键盘的编程容易易懂,结构简单,实现起来方便,而且每个按键单独占有一根I/O接口线,每个I/O口的工作状态互不影响,所以采用独立式键盘。P0.0~P0.7 口分别对应琴键1~7输入,如下图所示。 P1.0 | P1.7 8051 关于键盘的抖动问题的分析和解决 当用手按下一个键时,如图3所示,往往按键在闭合位置和断开位置之间跳几下才稳定到闭合状态的情况;在释放一个键时,也回会出现类似的情况。这就是抖动。抖动的持续时间随键盘材料和操作员而异,不过通常总是不大于10ms。很容易想到,抖动问题不解决就会引起对闭合键的识别。 键按下 前沿抖动 后沿抖动 闭合 稳定 用软件方法可以很容易地解决抖动问题,这就是通过延迟10ms来等待抖动消失,这之后,在读入键盘码。 图4 键抖动信号波形 延迟10ms的程序为: MOV R1, #100 ;执行次数为1 D1: MOV R2, #98 ;执行次数为100 NOP ;执行次数为100 D2: DJNZ R2, D2 ;执行次数为100ⅹ98 DJNZ R1, D1 ;执行次数为48 延迟时间与指令执行时间有密切的关系。在使用6MHz晶振时,一个机器周期为 0.5μs,执行一条MOV指令时间为0.5μs, 执行一条DJNZ指令时间为1μs。 则实际延迟时间=1ⅹ0.5+100ⅹ0.5+100ⅹ0.5+100ⅹ98ⅹ1+98ⅹ1=99.985≈10ms。 4.放大电路分析 此部分的放大电路简单容易实现。可以采用一个小功率PNP型硅管9012, 放大电路输出原理图 利用“分压偏置式工作点稳定直流通路”,达到了对静态工作点的稳定。分压电阻分别选择1K和5.5K。蜂鸣器一端接+5V电压,一端接晶体管的发射极。由P1.0 输出预定的方波,加到晶体管进行放大,再输出到嗡宁器,很好的实现了频率、声音的转换。 5.时钟电路分析 此系统的时钟电路设计是采用的内部方式,即利用芯片内部的振荡电路。 MCS-51内部有一个用于构成振荡器的高增益反相放大器。引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。这个放大器与作为反馈元件的片外晶体谐振

文档评论(0)

xinshengwencai + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5311233133000002

1亿VIP精品文档

相关文档