当前位置:首页 > 单片机 > 单片机
[导读]引言  随着计算机在社会各领域的渗透,单片机的应用正在不断地走向深入,同时带动着工业、农业、商业、家电以及玩具的日新月异更新,极大地提高了电子电路及系统设计质量和效率。本文中所设计的具有存储功能的单

引言

     随着计算机在社会各领域的渗透,单片机的应用正在不断地走向深入,同时带动着工业、农业、商业、家电以及玩具的日新月异更新,极大地提高了电子电路及系统设计质量和效率。

本文中所设计的具有存储功能的单片机电子琴是由STC89C51单片机、小键盘、LCD以及音频功放电路和扬声器组成的。利用该电子琴电路,用户可以自由地输入音符,利用单片机产生不同频率来获得我们要求的音阶,使扬声器发出悦耳的音乐,最终可随意弹奏想要表达的音乐。同时详细论述了该系统的设计过程及关键技术。

    1 系统硬件组成

    电子琴的控制电路分为单片机STC89C51、工作指示LED、LCD显示器、按键输入、喇叭接口等几部分。其硬件电路结构框图如图1所示。


    1.1 单片机STC89C51简介

    STC单片机是一款增强型5l单片机,完全兼容MCS-51。STC89C51可以代替AT89C51,而且功能更强,速度更快,寿命更长,价格更低。该单片机具有40个引脚,采用双列直插DIP-40封装。STC89C51可以完成ISP在线编程功能,而AT89C51则不能。因此,将AT89C51中的程序直接烧录到STC89C51中后,STC89C5l就可以代替AT89C51直接工作。STC推出的系列51单片机芯片全面兼容其它51单片机。STC89C51内部有E2PROM,可以在程序中修改,而且断电不丢失数据。此外,还增加了两级中断优先级等等,STC89系列单片机的基本特性如图2所示。

    通常电子琴所输入的音阶值都先存入变量数组中,演奏时才逐一取出来播放单音。程序中的变量使用的是内部存储器RAM,范围为空间30H~7FH,因此,其程序内存规划是:RAM地址30H~70H存放音阶值,最大内存空间为64字节;RAM地址71H~7FH存放程序其他变量。程序执行后,工作指示LED闪动,表示程序开始执行。当按下键盘组中的相对按键时,压电喇叭会发出相对音阶单音,全系统共有2个8度音阶,DO~SI,HI DO~HI SI,14个音阶,所输入的单音会存入89C5l内,至多可以输入64个单音,并可以一起演奏出来,同时还有清除存储功能,可将原数据清除后再重新输入。

    1.2 LCD硬件接口
 

    本设计所用LCD的引脚如图3所示,其中,DO~D7为双向数据总线,LCD数据读写方式可以分为8位及4位两种。若以8位数据进行读写,则DO~D7皆有效,若以4位方式进行读写,则只用到D7~D4。RS为寄存器选择控制线,当RS为O且做写入操作时,可以写指令寄存器;若RS为l,则用于读写数据寄存器。P/W为LCD读写控制线,R/W为0,LCD执行写作,R/W为1时,则做读操作。VO为亮度调整电压输入控制引脚,输入0V时,字符显示最亮。


    LCD可以实时显示目前演奏的单音码,可以实时显示所存储的单音计数。按键9是清除键,可将存储的单音计数清0;按键8是放音键,可将内存中的单音逐一演奏出来,演奏中可以按K4键来中断。本设计使用一般的LCD显示器来显示音乐演奏的消息及单音码。按下键盘组按键,喇叭就会发出相对音阶。将这些音阶存储起来然后放音,就可成为自动演奏电子琴。

    1.3 键盘扫描

  键盘上的每一个键都有两个唯一的数值进行标志。为什么要用两个数值而不是一个数值呢?这是因为一个键可以被按下,也可以被释放。当一个键按下时,它们产生一个唯一的数值,当一个键被释放时,它也会产生一个唯一的数值,我们把这些数值都保存在一张表里面,到时候通过查表就可以知道是哪一个键被敲击,并且可以知道是它是被按下还是被释放了。

    整个4x4键盘按键的分配及配置原理图如图4所示。图4中为16键的控制电路,使用AT89S51端口2的8条I/O线做16个按键的键盘扫描,并由P2.0~P2.3送出扫描信号,而由P2.4~P2.7读取按键数据返回码。表l所列是4x4按键与音阶的对应表。


2 电子琴硬件类参数

 

 

  键盘(琴键):电子琴的键盘分为标准力度键盘、半配重键盘、全配重键盘、逐级配重式键盘(也叫渐层式锤感键盘)。

  标准力度键盘:拉簧结构键盘,这是从低端琴到中高端琴都有使用的,其优点是回键速度快(也就是按下琴键后,弹回来的速度),缺点是对于力度过渡和定位不精确。

  半配重键盘:一样是采用拉簧结构的键盘,只是比普通的拉簧键盘下多了配重铅 块,这种构造的键盘以前一直是中高端合成器才用的,现在有不少普及琴也有了该配置。相对于标准力度键盘的优点是力度定位更加精确。

  全配重键盘:这种键盘的构造是模仿钢琴的,模拟击弦机结构,每个琴键下方都有固定重量的配重铅块,所以称为全配重键盘。可让弹奏者有种“在弹钢琴的感觉”。优点是比较适合初期替代钢琴来学习演奏,对于各种演奏力度均有良好表现,缺点是不适合弹一些要求演奏速度快的曲子(回弹慢)。

  逐级配重键盘:和全配重键盘一样,也是模拟击弦机结构的,所不同之处就在于逐级配重键盘的琴键在低音区比较重,高音区就比较轻了,这是模仿大三角钢琴的手感。

    3 系统软件设计

    由于本系统可以产生各种频率的声音,所以可由喇叭发出“DO”、“RE”、“ME”……的音阶。系统中的定时器O工作于模式0,计时时长可根据所发音的频率而定,表2所列是各个音符所对应的频率值。而由频率值推得的定时器计数初值。则可由以下关系式求得:

式中,f为频率值;t为方波的宽度,以μs表示;co为定时器所计数的次数,lo为计数初值的低字节,hi为计数初值的高字节。图5所示为主程序的工作流程。

 

 

    4 结束语

    通过改变按键式电子琴的控制程序,也可以设计不同类型的电子琴。还可以通过扩展RAM的方法增加内存容量,从而更大地发挥电子琴的存储功能。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

在电子电路中,电解电容的纹波电流承受能力直接影响其使用寿命和电路稳定性。准确测试纹波电流不仅能验证电容性能是否达标,也是电路设计可靠性验证的关键环节。以下从测试原理、设备准备、操作步骤到数据解读,全面介绍电解电容纹波电流...

关键字: 电解电容 纹波电流 电路设计

在电子电路设计与实践中,稳压芯片是维持稳定输出电压的关键组件。然而,当我们将两个输出电压不同的稳压芯片的输出脚连接在一起时,会引发一系列复杂的物理现象和潜在风险。这一操作不仅违反了常规的电路设计原则,还可能对电路系统造成...

关键字: 稳压 芯片 电路设计

在当今电子技术飞速发展的时代,随着电子产品不断向小型化、高性能化迈进,印刷电路板(PCB)的设计变得愈发复杂和精密。过孔,作为 PCB 中连接不同层线路的关键元件,其对信号完整性的影响已成为电路设计中不可忽视的重要因素。...

关键字: 印刷电路板 电路设计 信号

IIC(Inter IC Bus)协议是一种广泛应用于嵌入式系统中的同步半双工通信协议。随着电子设备的复杂性不断增加,高多层电路板设计变得越来越普遍。在高多层电路板中实现可靠的IIC通信,需要综合考虑布线策略、电源设计、...

关键字: 电路板 电路设计

在现代高速、高密度的电路设计领域,电路完整性是确保电子系统可靠运行的关键要素。回路电感作为电路中的一个重要参数,对电路完整性有着多方面的深远影响。从信号传输的准确性到电源系统的稳定性,回路电感在其中扮演着不容忽视的角色。...

关键字: 电子系统 回路电感 电路设计

在现代汽车电子控制系统中,CAN(Controller Area Network,控制器局域网)总线作为一种高效、可靠的通信协议,发挥着举足轻重的作用。它不仅连接着发动机控制单元(ECU)、变速器控制单元、制动系统控制单...

关键字: 车规级CAN总线 电路设计

串联一个二极管,是利用二极管的单向导电的特性,实现了最简单可靠的低成本防反接功能电路。这种低成本方案一般在小电流的场合,类似小玩具等。

关键字: 电路设计 串联

USB 2.0接口以其高速率等优点渐有取代传统ISA及PCI数据总线的趋势,热插拔特性也使其成为各种PC外设的首选接口。

关键字: 数据采集 电路设计

Finishing 终饰、终修指各种制成品在外观上的最后修饰或修整工作,使产品更具美观、保护,及质感的目的。Metal Finishing特指金属零件或制品,其外表上为加强防蚀功能及观而特别加做的处理层而言,如各种电镀层...

关键字: PCB 电路设计

在电子工程领域,Datasheet(数据手册)是理解和应用特定芯片的关键资源。面对动辄数百页的详细文档,如何高效地提取电路设计所需的关键信息,是每个硬件工程师和软件工程师都面临的挑战。本文旨在提供一套系统化的方法,帮助工...

关键字: Datasheet 电路设计
关闭