本文是以单片机为主题,通过软硬件两方面相互结合,达到此次要完成的人物,在讲述过程中,对制作的电子琴进行从程序、设计思路、工作原理的详细分析与讨论,程序和原理图等等。通过本次设计,能把自己在学校所学的知识和社会上的实际技巧相结合,不通过自己动手亲自操作,永远不会发现新的问题,去解决问题,所以对自己的所学有更深层次的理解和认识。
1. 系统总体方案
1.1 方案论证
方案一: 如果用AT89C51来进行中枢操作,在程序和功能的应用上是与本系统相符的,各个功能都能实现,不过该单片机没有像S系列那样的ISP在线编程功能,而且现在市场上出售该类单片机的也不多,大多数都是S系列的。
方案二:本方案可以用AT89S52完成整个系统的运作控制,其功能和C51大致相同,都能满足本次电子琴各个功能的只能需求。由于本次设计还有独立播放的音乐,所需单片机的内部空间较大,而S52则有8K的较大存储空间,拥有较高的性价比较,对于日后制作毕业设计时,对系统的程序升级也比较方便,实用性很高。
结合此次所设计的产品,对比与分析,方案二更合适。
此外,由于简易电子琴的操作单一,本设计中加入语音芯片对电子琴实现即时录放功能,使其比较新颖,设计性更强。
因为考虑到编码键盘还需要有专门的硬件支撑才能工作,所以本次采用的是非编码键盘,主要考虑到非编码键盘的功能比较简单,操作起来也容易,在设计电路结构和程序的编程时相对容易,同时由于此次设计的都是比较基础的程序命令,运用更广泛。
因为在后续的工作中,有可能需要对以上电子琴的设计做一些改动,为了完善其功能和实用性,又有我打算做出实物来进行演示,可能会适当的对一些弹奏按键和功能按键进行增加。
1.2 本系统设计内容
本次的主要内容以AT89S52来完成电子琴的主要控制,电源模块供电, 数码管显示模块,八个按键的输入控制以及最后由蜂鸣器的声音输出设备等相结合,设计的一个八按键的电子琴,由于时间比较充足,在直到老师的帮助和下,我还学校实验室做出了毕业设计,由于田间限制,可能做的不是太好,还有需要解决的问题。
它主要是利用Keil和proteus软件对单片机进行系统所需要的程序编程和仿真相结合,通过单片机内部的定时器产生数据中断,定时参数发生改变时就会产生不同频率的方波,再经发音电路进行信号的放大后,就会由蜂鸣器发出不同的音调。同时在弹奏的过程当中,还会伴有数码管显示器对于每个按键的指示。
1.3 系统设计要求
本次电子琴设计主要要实现两个任务,一是普通的电子琴弹奏,另一个是在弹奏过程的同时,还要显示每一个对应的按键。通过运行AT89S52内部定时器所产生的脉冲,再经蜂鸣器驱动放大电路放大发出声调。要求如下:
(1) 要具备弹奏的功能,这里还能播放两首简单的歌曲。
(2) 在电路板上做八个按键,代表八个音符。
(3) 每按下一个音阶控制键,就会产生相应的声音,数码管还要显示对应的数字。
1.4 系统框图
此次是用AT89S52为主要中枢模块。针对本次设计的局限性,我所设计的电子琴模块相对来说比较简单,只要有几个大致的模块在电路板上焊接而成,对于各个不同的模块都有相对详细的介绍和演示部分。在外部电源接通以后,使用者需要按下不同的按键来进行不同音符的播放,然后由单片机进行电平的识别,从而解码,再通过音频放大电路,经过放大电路放大后,最后由蜂鸣器接收识别并发出声音,系统框图如图1所示。 AT89S52于单片机的电子琴设计+电路图+源程序(2):http://www.youerw.com/tongxin/lunwen_31103.html