APP下载

简易电子琴系统设计

2019-06-01南江萍郑凯谢国坤贾亚娟郑建波

智富时代 2019年4期
关键词:电子琴

南江萍 郑凯 谢国坤 贾亚娟 郑建波

【摘 要】本文主要研究的是基于STC89C51单片机的电子琴,设计了系统的主要电路模块,并应用Proteus仿真软件和Keil软件编程软件,使用单片机C语言对单片机进行编程,实现了使电子琴能够弹奏简单歌曲和自动播放歌曲的功能。

【关键词】STC89C51单片机;电子琴;Protues;Keil

近年来,电子乐器的出现,帮助流行音乐迅速席卷全球各地,同时也促进了电子乐器的发展,走进了越来越多的家庭。电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。

本文设计了一个由单片机作为控制元件的电子琴的制作,主要介绍的是电子琴硬件系统的组成并对相关的软件完成编写与调试。整个电子琴工作的过程首先是需要单片机主控软件处理信息,其次主控软件发出的电脉冲能。信号经过各个模块,最后各个模块发挥出对应的功能,进而实现电子琴的基本功能。

一、总体设计框架

本文中的电子琴需要能够控制播放一首或者是多首歌曲,并能实现简单的弹奏功能,具体要求如表1.1所示。最基本的要求便是电子琴可以产生音符和音拍,来达到弹奏音乐的目的,需要系统能够控制音乐的播放,同时也需要具备录制音乐的功能。电子琴的三个具体功能需求为键盘功能需求、音乐存储功能需求、音乐播放功能需求。

表1.1 电子琴功能要求表

电子琴设计总框架如图1.1所示。

图1.1 电子设计总框架

本文所设计的电子琴,以STC89C51单片机为系统的主控芯片,系统还包括了复位电路模块、晶振电路模块、键盘电路模块、显示电路模块以及音乐播放电路模块五大部分。

二、系统各模块设计

(一)音乐播放电路模块

音乐播放功能能够通过以下两种方案发出相应的音符,并能够播放一首或多首歌曲。

1.LM386音频功率放大器:LM386是一种音频集成功放,其电压可通过在1脚与8脚之间增加电阻、电容达到电压增益的目的,使得LM386的电压增益稳定在20-200之间。因此LM386广泛应用于低压电器,如收音机、录音机等。其具有外围元件少,功耗低等优点。

2.蜂鸣器是一种采用直流电压的一体化结构的电子讯响器,因此更适合于使用电池供电的电子琴。蜂鸣器有电压式与电磁式蜂鸣器两种,主要区别在3.6有详细讲述。文章主要采取的是电磁式蜂鸣器。

这两种方案中,都适用于低电压电路,在价格上,LM386功放芯片的价格高于电磁式蜂鸣器,其外围元件虽少,但与蜂鸣器相比较多;同时,LM386功放芯片的电路较为复杂,电压增益的优点对于本文所制作的电子琴意义不大,不需要多次改变电压增益。此外,方案2)中还可以通过与主控软件的结合,使得系统更加简便。电子琴中的单片机可以通过自身所携带的I/O口驱动的蜂鸣器鸣叫,只需要对该I/O口的电平进行翻转就可以达到这种目的。因此,本文采取电磁式蜂鸣器作为电子琴的扬声器部分。

(二)显示电路模块

本设计中显示电路部分用LED八段数码管,其具有寿命长、耗电低等优点,有公共阳极和公共阴极的区分。在日常生活中,LED数码管的两种驱动方式:静态显示和动态显示,两种方式都被广泛应用于单片机中。而对于本文所制造的电子琴来说,因为其主控软件是C51系列的单片机,所以能够使LED数码管在硬件中得到最好的应用。与其他显示硬件相比,LED数码管还具备了规格众多;能够在低电压环境下工作;性能优越等因素。因此,文章采用共阴极LED八段数码管作为显示电路模块,其公共端接地线P0口连接到1K上拉电阻,由于不使用小数点显示,因此将DP引脚悬空。

数码管与单片机引脚连接图如图2.1所示。

图2.1 数码管所接引脚图

(三)键盘电路模块

常用的按键有三种:机械触点式按键、导电橡胶式和柔性按键(又称薄膜按键)。

从经济效益和性价比层次考虑,选择了机械按键作为键盘模块的硬件设备。机械触点式按键的基本原理跟平时所使用的键盘一样,是通过键位的弹性来是按键复位。与电脑键盘具有的优点类似,其具有感觉明显、连接电路简单,易于操作等优点。但本系统采取的按键较少,不能实现紧密排除,因此长时间使用后,在焊接点容易进入灰尘、头发丝等异物,导致焊接点接触不良的问题发生并影响整个系统的功能。同时机械触点式按键的按键面积比较大,会给焊接过程带来一定的麻烦。

按键电路图如图2.2所示。

键盘模块的软件编程过程中,系统需要解决的最重要的问题是如何去抖动,本文是通过软件编程来去键盘抖动的。在检测到按键按下后,通过软件编程语言使系统先执行程序,随后在对按键进行检测,第二次检测结果确定后,才能决定按键是否是被按下,是否可以传输信息。

三、软件系统设计

(一)系统软件设计

根据系统的软硬件需求,为硬件设计匹配相符合的软件设施,在软件设计的一开始,对程序的总框图进行了设计。图3.1是系统的总设计流程图。

(二)按键电路模块软件设計

根据硬件设计中的键盘需求,对每一个键位对应分配一个发音,达到电子琴弹奏的目的,程序流程图如图3.2所示。

(三)去抖模块

按键去抖通常的按键所用开关为机械弹性开关,当机械触点断开、闭合时,由于机械触点的弹性作用,一个按键开关在闭合时不会马上稳定地接通,在断开时也不会一下子断开。因而在闭合及断开的瞬间均伴随有一连串的抖动,为了不产生这种现象而作的措施就是按键去抖。

去抖是为了避免在按键按下或是抬起时电平剧烈抖动带来的影响。按键的消抖,可用硬件或软件两种方法。常用软件方法去抖,即检测出键闭合后执行一个延时程序,5ms~10ms的延时,让前沿抖动消失后再一次检测键的状态,如果仍保持闭合状态电平,则确认为真正有键按下。当检测到按键释放后,也要给5ms~10ms的延时,待后沿抖动消失后才能转入该键的处理程序。

四、结论

本系统仿真是在Proteus软件上进行,该软件不仅可以仿真目前市面上51系列、ARM等主流的单片机,还可以仿真它们的外围电路。在使用Proteus软件进行仿真之前,首先要在Keil软件来进行系统软件的调试。目的检测软件程序是否能够流畅、准确的运行,各个子程序的运行顺序是否正确,各子程序之间的衔接是否顺畅。系统程序调试结果能够实现系统设计要求。

通过本系统的软硬件设计,简易电子琴系统功能能够达到预计性能要求,不仅实现了基本的琴键功能,并且实现了自动播放生日快乐歌以及演奏简单乐曲的功能,还实现了通过按键达到控制音乐播放的功能。

【参考文献】

[1]周琛晖.基于AT89S51单片机的电子琴设计[J].电脑知识与技术,2009,5(27):7679-7681.

[2]徐江维,李菲.基于51单片机的电子琴设计[J].电子世界,2017(09):125.

[3]杜平.基于51单片机的声光电子琴设计[J].数码设计,2017,6(08):48-49.

[4]和丽花,张海龙.基于Proteus的单片机电子琴的设计[J].中国新技术新产品,2014(11):91.

[5]钱学斌.AT89S52单片机的电子琴设计[J].民营科技,2013(12):124.

[6]王爽.趣味电子制作在嵌入式电路基础课程中的应用[J].计算机光盘软件与应用,2013,16(20):215+217.

猜你喜欢

电子琴
基于AT89C51单片机的电子琴设计
电子琴在群众文艺演出中的独特作用
小学生电子琴教学的课堂管理探究
电子琴
双排键电子琴教学方法之我见
我最好的伙伴
电子琴在小学音乐课堂中的应用探讨