电子音乐盒的设计 联系客服

发布时间 : 星期日 文章电子音乐盒的设计更新完毕开始阅读ae392e0cbdeb19e8b8f67c1cfad6195f302be828

5仿真与性能分析

5.1系统仿真过程

将用keil编写的源程序导入到protues中,当上电仿真时,单片机,蜂鸣器通电,待按下功能键选择歌曲后,蜂鸣器便可发声。

C130PFX112MHZ19U1XTAL1P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD393837363534333221222324252627281011121314151617C21830PFXTAL2R11kC310uF9RSTR21k293031PSENALEEALS212345678P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C51SOUNDER 图5.1 电子音乐盒仿真图

5.2 仿真结果与分析

结果:上电后,当按下k1键时,count2=1,蜂鸣器演奏第一首歌曲;当按下k2键时,count2=2,蜂鸣器演奏第二首歌曲;当按下k3键时,count2=3,蜂鸣器演奏第三首歌曲。在演唱过程中,按下k4键时,音乐暂停,再次重新选择歌曲即可播放。

分析:当按下k1键,产生外部中断,扫描键盘,得到键值count2=1,所以蜂鸣器演奏第一首乐曲,演奏其他乐曲时道理相同。演奏乐曲时,单片机读音符,高四位用于产生不同频率的方波,不同频率的方波通过蜂鸣器发出不同的音调;低四位用于控制发音长度,定时器通过低四位计算出延时时间,即可控制发音长度。

6心得体会

这次单片机课程设计历时两个星期的时间,在这两个星期里我们体验了从设计、画板、

编程、仿真到调试的整个过程,让我们体验了一次工程师的感觉。

首先我先到图书馆和网上查阅了大量有关蜂蜜器发声原理的资料,然后开始设计自己的方案,为了设计任务要求和抱着巩固知识的想法,我选择已经学习过的AT89C51单片机。整天抱着电脑查资料、看资料是一件很痛苦的事情,一天下来眼都花了,但每学会一点新知识还是挺高兴的,有的时候知识遗忘了或者有很难理解的地方,就会向同学求助,他们都会毫无保留的帮助我。

设计完电路以后我便开始编写源程序,起初觉得无从下手,于是开始在网上搜集各种资料,研究和比较了各种源程序,选择了一种比较完整和易懂的源程序作为模板进行研究和校正。几天的反复研究,终于弄懂了程序的各个模块,对照自己的设计任务对程序进行修改,终于没有了错误。然后进行仿真调试,刚开始仿真时,蜂鸣器通电了但并不能发声,对按键进行任何操作都没有作用。仔细对比和研究,在硬件电路和软件程序中均找到了不恰当的地方,又经过反复修改,最终蜂鸣器终于可以发声了。但是仅仅只是k1键有效,其它按键无效。猜想肯定是音乐播放程序有问题,仔细研究,才发现程序中没有涉及功能键的选择,于是自己编写了if程序,若有按下对应按键,则改变count2的值,进而选择不同歌曲。最后,终于成功了!

这两周的时间说轻松也不轻松,说紧张却稍带着愉快的气氛,整个过程应该是充实的,时而惊喜,时而烦闷特别是最后调试阶段有一块调通让我高兴不已,当卡在某处时也确实是让人抓狂。总之通过这次课设,我们不但复习了过去所学,并且学到了一些新东西。更重要的是通过这一次切身实践,才使我们真正将理论与实际结合起来,并且遇到了很多实实在在的需要我们亲自解决的问题。通过解决这些问题,我们处理实际问题的能力有了很大提高,积累了我们的实践经验,以便为以后打下牢固的基础。而这些才是我们作为一名工科学生最宝贵的财富。

参考文献

[1] 郭天祥.新概念51单片机C语言教程[M].北京:电子工业出版社,2009.

[2] 秦实宏,徐春辉 MCS-51单片机原理及应用[M]. 武汉:华中科技大学出版社,2010.6. [3] 李群芳,张士军,黄建.单片机微型计算机与接口技术[J].北京:电子工业出版社,2008. [4] 李群芳 单片机原理接口与应用[J].北京:清华大学出版社,2005.

[5] 高峰 单片机微机应用系统设计及使用技术[M].北京:机械工业出版社,1999.

[6] 彭伟 单片机C语言程序设计实例基于protues仿真[M].北京:电子工业出版社,2007. [7] 张迎新 单片机微型计算机原理、应用及接口技术[M].北京:国防工业出版社,1999.

附录1 系统原理图

C130PFX112MHZ19U1XTAL1P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD393837363534333221222324252627281011121314151617C21830PFXTAL2R11kC310uF9RSTR21k293031PSENALEEALS212345678P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C51SOUNDER