基于单片机的电子琴设计.docx

上传人:b****6 文档编号:12146931 上传时间:2023-06-04 格式:DOCX 页数:31 大小:175.85KB
下载 相关 举报
基于单片机的电子琴设计.docx_第1页
第1页 / 共31页
基于单片机的电子琴设计.docx_第2页
第2页 / 共31页
基于单片机的电子琴设计.docx_第3页
第3页 / 共31页
基于单片机的电子琴设计.docx_第4页
第4页 / 共31页
基于单片机的电子琴设计.docx_第5页
第5页 / 共31页
基于单片机的电子琴设计.docx_第6页
第6页 / 共31页
基于单片机的电子琴设计.docx_第7页
第7页 / 共31页
基于单片机的电子琴设计.docx_第8页
第8页 / 共31页
基于单片机的电子琴设计.docx_第9页
第9页 / 共31页
基于单片机的电子琴设计.docx_第10页
第10页 / 共31页
基于单片机的电子琴设计.docx_第11页
第11页 / 共31页
基于单片机的电子琴设计.docx_第12页
第12页 / 共31页
基于单片机的电子琴设计.docx_第13页
第13页 / 共31页
基于单片机的电子琴设计.docx_第14页
第14页 / 共31页
基于单片机的电子琴设计.docx_第15页
第15页 / 共31页
基于单片机的电子琴设计.docx_第16页
第16页 / 共31页
基于单片机的电子琴设计.docx_第17页
第17页 / 共31页
基于单片机的电子琴设计.docx_第18页
第18页 / 共31页
基于单片机的电子琴设计.docx_第19页
第19页 / 共31页
基于单片机的电子琴设计.docx_第20页
第20页 / 共31页
亲,该文档总共31页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于单片机的电子琴设计.docx

《基于单片机的电子琴设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的电子琴设计.docx(31页珍藏版)》请在冰点文库上搜索。

基于单片机的电子琴设计.docx

基于单片机的电子琴设计

基于单片机的电子琴设计

摘要:

随着社会的发展进步,音乐逐渐成为我们生活中很重要的一部分,有人曾说喜欢音乐的人不会向恶。

我们都会抽空欣赏世界名曲,作为对精神的洗礼。

本论文设计一个基于单片机的简易电子琴。

电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。

它在现代音乐在微控制器的控制起着重要的作用,强大的功能和灵活的编程功能,它已经融入到现代人的生活,成为一种不可替代的部分。

本系统主要是基于系列单片机,由矩阵键盘,数码管连接的印象。

系统完成显示输入信息、播放相应音符等基本功能。

本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有一定的实用和参考价值。

关键词:

单片机;矩阵键盘;LED数码管;扬声器

Electronicorgandesignbasedonsinglechipmicrocomputer

Abstract:

withthedevelopmentandprogressofsociety,musichasbecomeanimportantpartinourlife,ithasbeensaidthatpeopledonotlikethemusictoevil.Wewilltaketimetoenjoytheworldfamoussongs,asthebaptismofthespirit.Inthispaperwedesignasimplekeyboardbasedsinglechipmicrocomputer.Electronicorganisamodernelectronicmusictechnologyandtheproduct,isanewtypeofkeyboardinstruments.Itisinthemodernmusicinthecontrolofmicrocontrollerplaysanimportantrole,powerfulfunctionsandflexibleprogrammingfunction,ithasbeenintegratedintomodernpeople'slives,becomeanirreplaceablepart.ThissystemismainlybasedonMCU,amatrixkeyboard,digitaltubeconnectingtheimpression.Tocompletethesystemshowstheinputinformation,thebasicfunctionsuchasplaycorrespondingnotes.Thesystemisrunningstable,itsadvantageishardwarecircuitissimple,thesoftwarefunctionisperfect,thecontrolsystemisreliable,thepriceishigher,hascertainpracticalandreferencevalue.

Keywords:

MCU;matrixkeyboard;LEDdigitaltube;thespeaker

目录

1引言1

1.1目的和意义1

1.2本系统主要研究内容1

2.总体方案的设计2

2.1主控模块的选型2

2.2显示模块的选型2

2.3按键模块的选型和论证2

2.4功率放大模块的选型和论证2

2.5系统整体设计概述2

3.系统硬件电路设计4

3.1主控模块4

3.1.1STC89C52单片机主要特性4

3.1.2STC89C52单片机的中断系统6

3.1.3单片机最小体系设计7

3.2数码管模块设计7

3.2.1数码管原理介绍7

3.2.2数码管电路设计8

3.3矩阵键盘模块设计8

3.4功率放大模块设计9

3.4.1LM386内部原理9

4.系统软件设计11

4.1系统软件总体设计11

4.2定时器产生音乐信号原理12

4.3程序设计原理12

5.系统调试13

5.1硬件调试13

5.2软件调试13

5.3调试结果13

6.结论15

参考文献16

附录17

1引言

1.1目的和意义

单片微型计算机简称单片机,是大规模的集成电路芯片。

它的性价比高,计算速度快,运行稳定,性能稳定,被人们广泛的应用于各个领域。

它的出现引领了传统控制技术走向革命创新的道路。

音乐是人们日常生活中不可或缺的部分,而单片机具有可编程的功能,可以帮助人们控制音乐的播放。

本文的主要内容是由单片机为核心元件,一个哈蒙德机构的设计。

如果用人们的身体做个比喻,大脑为控制核心,四肢是核心的主控模块,单片机就是整个模块的大脑,键盘和扬声器等就是模块的四肢,按键和扬声器就是整个模块的手指和嘴巴。

控制单片机输出不同频率的波形以获得所对应的音符就是本文的目的。

本篇论文讲述的是单片机控制电子琴的方法,从原理图,所用到的芯片模块的原理及其程序调试这几个方面进行详细的阐述。

1.2本系统主要研究内容

本系统设计制作一个可演奏的电子琴。

综合应用了两项设计。

(1)键盘矩阵识别。

即矩阵扫描,显示当前按键。

(2)特定频率控制特定音符播放。

模块上的十五个按键对应十五种不同的音符。

(3)设有一个按键,按下后可以播放预设的歌曲。

2.总体方案的设计

2.1主控模块的选型

单片机是一种高可靠性,低价格,保密程度极高,高性能的位微控制器,51系列单片机属于标准型单片机。

它的内部包括CPU、存储器、可编程I/O个口、定时器/计数器、串行口等。

各部分通过内部总线相互连接。

它能够边编程边调试,大大方便了调试下载完整的程序。

因此,用51系列单片机作为主控制芯片。

2.2显示模块的选型

使用输入矩阵键盘。

矩阵键盘组安排利用相似矩阵作为外部设备。

两个数码管作为显示设备。

2.3按键模块的选型和论证

矩阵键盘电路结构,如图图2-1所示。

矩阵键盘,每个水平和垂直的线相交不直接连接,而是一个单一的键连接。

输入矩阵键盘中,按键的数量为行数乘以列数。

当所需按键较多时,可以减少占用I/O端口线的数量。

CPU通过I/O端口线的电平高低来判别键是否按下。

这里采用“时分复用”的方法。

在一个查询周期里,把时间分为4段,每个时间间隔对应一个键。

依次使列线中的一根输出低电平,则只有与之对应的键被按下时,才能使行线为低电平。

图2-1矩阵键盘电路结构框图

所以本设计中用矩阵按键作为键盘模块。

2.4功率放大模块的选型和论证

用集成芯片LM386作为功率输出级。

该芯片是一种音频集成功放,低耗散功率消的功率放大器,由外连的增益调节电路,电源电压标准,外围元件少、总谐波失真小等长处,被普遍用于录音机,收音机。

2.5系统整体设计概述

该系统以单片机为中心,它起到了所有模块的控制和协调的作用。

系统包括键盘、显示数码管。

单片机通过相应的检测,获得键盘的信号。

然后,输出对应的信号,再通过电路驱动LM386扬声器发出声音。

图2-2系统结构框图

3.系统硬件电路设计

3.1主控模块

主控制模块在整个系统中起着协调作用,检测键盘的各种参数,如温度传感器,单片机设计的机器,最初由英特尔开发,但后来英特尔设计的产品销售给电子设计的几个主要生产商,如,菲利普公司和其他大型公司。

 因此,市场上出现了以51单片机为核心的设备。

主要电子产品制造商推出了兼容单片机。

指令和内部结构特征基础和51系列是相同的。

STC89C52有40引脚块,4个8位并行I/O段口,1个全双工异步串行,同时里面有5个中止源,2个优先级,2个16位计时/计数器。

内存系统包括程序存储器(掩模),和数据存储器组成。

基本组成的单片机原理图如图3-1所示。

STC89C52单片机的根本构成框图见图3-1。

图3-1STC89C52单片机结构

3.1.1STC89C52单片机主要特性

1.一个8位的微处理器(CPU)。

2.该数据RAM存储器芯片(28b),你能够读写数据的保存,如测试成果中,成果和数据表现,SST89系列单片机供应1kram。

3.芯片的程序存储器()为存储程序,原始数据,表格。

仍然有一点单片机里面不带rom/eprom,如8031,8032,80c31等。

目前供应链管理的发展趋势是RAM和ROM集成在单片机内部,这样不仅方便了用户保持计划和整体的抗干扰性能。

介绍系列单片集成,快闪记忆体,分别,为用户选择所需要的。

4.两个定时器/计数器,每个定时器计数器可设置为计数,计数的外部事件的数量,也可以被用来作为输出。

5.两定时器/计数器,每一个定时器/计数器都可以设立成计数方式,用以对外部事务举行计数,也能够设置成定时方法,并可以按照计数或定时的结果实现计算机控制。

串行通信设计方便,单片机将提供三位定时器计数器。

6.六的五个中断源的中断控制系统。

新的芯片现在有超过5个中断源,如SST89E58RD将9个中断源。

7.全双工(通用异步回收发送器)系列我端口,或用于达成单片机串行通讯微机和单片机的。

 

8.片内振荡器和时钟发出电路,但石英和微调电容务必外接。

至多可以容许振荡频率为12MHz。

SST89V58RD最高允许振荡频率达40MHz,是以最大的进步了指令的实行运算速率。

图3-2STC89C52单片机管脚示意图

部分引脚说明:

1.时钟电路引脚XTAL1和XTAL2:

XTAL2(引脚18):

外部晶振和电容的侧;芯片的输出振荡放大电路,振荡电路的频率是它自己的频率晶体。

如果你需要使用一个外部时钟电路,外部时钟输入引脚。

XTAL1(19脚):

另一侧连接晶体和电容;电路中的反相放大器的输入电路中的。

使用外部时钟时,该引脚必须连接到地。

2.控制信号引脚RST,ALE,PSEN和EA:

RST/VPD(9脚):

RST是复位信号输入端,高电平有用。

当这个输入端和备用电源。

当电源vcc事故,下降到低值,+5V电源有源2个周期(24个周期)的高水平,以达到减少操作。

VPD二RST引脚RST效应,即接入端,RAM提供备用电源,确保内存的信息不被破坏,所以他可以继续工作后的恢复。

ALE/PROG(引脚30):

锁存允许信号结束的地方。

当8051上电工作,ALE引脚停止输出正脉冲信息,晶振频率的晶振频率的1/6的频率。

CPU到外部存储器,ALE输出信息到锁存低8位控制信号。

不访问外部存储器时,ALE也是基于原来的1/6的振荡频率,输出正脉冲,使信息可以作为一个ALE输出时钟或时间信号。

如果你想要的8051/8031确定芯片的优劣,示波器可以检查是否ALE脉冲输出端。

如果有一个脉冲输出,8051/ 8031基本上是好的。

对于8 LS型TTL ALE终端负载起动力量(低功耗高速TTL)负载。

这个引脚8751编程与4KB4KBEPROMEPROM芯片芯片影响写(固化),成为编程脉冲输入。

PSEN(29脚):

标准保存容许输出信息端。

在访问外部标准的记忆,最后输出负脉冲信号成为选择读芯片存储器。

连接EPROMOE端导致肢体(见章节任何小系统的硬件原理图)。

PSEN是有效的,它允许读取存储器/ROM指令代码。

测试一个小的8051/ 8031的电力系统CPU是正确的吗?

一般的EPROM / ROM读取指令码,也可以用示波器输出端无脉冲输出。

如有则说明基本上工作正常。

ea/vpp(31脚):

外部准则存储器地点容许输入端/固化编程电压输入端。

当ea引脚接高电平时,cpu只接入片内eprom/rom并进行在里面标准存储器中的指令,但当PC(标准计数器)offfh较高(8751/80514K),会自动切换到在程序执行外部程序存储器。

当输入信息ea引脚接低电平(接地)时,cpu只接入外部eprom/rom并实行外部标准存储器中的指令,而不管是否有片内程序存储器。

关于无片内rom的8031或8032,需外扩eprom,此时必需将ea引脚接地。

此引脚的第二功用是vpp是对8751片内eprom固化编程时,成为施加较高编程电压(正常12V到21V)的输入端。

3.输入/输出端口P0/P1/P2/P3:

P0口(P0.0~p0.7,39~32端口):

P0口是一个非常开放的8位双向I/O端口。

这是开漏输出端口,每个出发8LSTTL负载。

当p0口成为输入口行使时,应先向口锁存器(地点80h)写入全1,此时p0口的所有引脚浮空,可作为高阻抗输入。

作为输入应该被用来写1,这是准双向口的意义。

在CPU访问外部存储器时,P0口复用总线电源低8个位置和8位数据在此期间,p0口内部上拉电阻有作用。

P1端口(P1.0~P1.7,1~8):

P18个准双向I/O端口带上拉电阻每个端口P1启动4LS型TTL负载。

使用时,首先对P1输入端口,端口P1闩锁位置(90)1,和由一个内部电阻P1口引脚拉成高电平。

p2口(p2.0到p2.7,21~28脚):

P2口是一个带里面上拉电阻的8位准双向I/O口。

每个端口可以启动4LS型TTL负载。

在访问外部存储器/RAM,它输出一个高8位。

P3端口(P3.0~P3.7,10~17):

P3端口8电平双向I/O端口,一个内部上拉电阻。

P3口每位能启动4个LS型TTL负载。

P3是从其它I/O口非常不同,每个销具有第二功能,如下:

P3.0:

(RXD)串行数据接收。

P3.1:

(RXD)串行数据传输。

P3.2:

(INT0#)外部中断0输入。

P3.3:

(INT1#)外部中断1输入。

P3.4:

(T0)对定时/计数器0外部计数输入。

P3.5:

(T1)按时/计数器1的外部计数输入。

P3.6:

(WR#)外部数据存储器写选通。

P3.7:

(RD#)外部数据存储器读选通。

3.1.2STC89C52单片机的中断系统

stc89c52系列单片机的中断体系有5个中止源,2个优先级,能够完成二级中断办事嵌套。

由内部特殊功能寄存器在控制寄存器cpu悬挂允许反应中断请求,由中断优先级寄存器IP布置各断绝源的优先级;当一样的优先级的中断而中断请求,由内部逻辑确定该查询序列的响应。

在单片机操作体系中,每每会有按时掌管需要,如定时输出、定时检测、定时扫描等;也经常要对外部事件进行计数。

集成在两个可编程定时器计数器:

T0和T1,他们可以工作的时间,也可以工作在统计,外部因素。

此外,T1也可以是一个串行端口的波特率发生器。

3.1.3单片机最小体系设计

图3-3单片机最小系统电路图

图3-3为单片机最小系统电路图,单片机最小系统有单片机、时钟电路、复位电路组成,时钟电路选用了12MHZ的晶振提供时钟,作用为给单片机提供一个时间基准,其中执行一条基本指令需要的时间为一个机器周期,单片机的复位电路,按下复位按键之后可以使单片机进入刚上电的起始状态。

排除口的上拉电阻,自口是不同于其他结构的排水结构,因此,除了抗功能正常。

3.2数码管模块设计

3.2.1数码管原理介绍

有两种类型的数码管分别是七和八部分,后者是一个小数点二极管单元;根据显示多少个“8”可分为1,2,4等数字管;按照连接方式的不同可以将数码管分为共阳极和共阴极。

在连接在一起形成一个共阳极LED的阳极的使用应该连接到5V,根据数字显示数码管二极管阴极水平显示的数字,在低的发光二极管,反之则不亮。

驱动电路控制着数码管中的二极管进而控制数码管显示数字,我们采用的是数码管的动态显示。

动态显示是将所使用的数码管的8个二极管"的同名端连在一起,通过单片机在共阳极的控制就可以显示出字形。

由于数码管的闪烁时间比较短暂,人言无法察觉,给人的印象就是一组稳定的显示数据。

图3-4数码管内部结构图

3.2.2数码管电路设计

如图所示为一个共阳数码控制电路连接图,为数码管灯实际上是,如果把LED的阴级直接单片机的IO的口,会使LED通过的电流过大从而把数码管烧毁,因此,阴极和单片机和限流电阻,所扮演的角色的设计之间的约束。

根据经验,选择1K电阻。

当程序按照我们预先写入的字符显示,对应的一列要显示的准备,所以你可以让这个过程更简化。

程序编写的时候我们预先根据要显示的字符,编写了个对应要显示的数组,这样可以使程序更加简化。

图3-5共阳数码管硬件电路连接图

3.3矩阵键盘模块设计

图3-6矩阵键盘模块电路图

单片机的端口相关联的连接通过八开关“4×4行列式键盘”,其中p3.0-p3.3柱,p3.4-p3.7为线,系统首先通过扫描为所有的键盘,第一行复位到“”状态,剩第二行复位到“读”的输入缓冲区的状态,如果状态是“1”,银行没有键被按下时,第二行是设置为“0”的地位,还读输入缓冲区的状态,如果状态是“1”,第一行设置为“0”状态,等等。

如阅读输入缓冲区的状态并不都是“1”,确定为“0”状态栏,当线的关键和一个“0”的状态栏,按下该键。

矩阵键盘方式连接到N端口控制N×N键,LED数码管显示实时的关键信息管。

显示关键信息,由他节省大量的I/O端口,相反的,独立的按钮具有编程简单,但会消耗更多的I/O资源,不适合在更多的场合应用的关键。

矩阵键盘:

键盘矩阵也被称为键盘的行列,这是NI/O线为线,NI/O线组成的键盘线。

每行和列的行上设置一个按钮线相交。

这样键盘上按键的个数就为N*N个。

行列式键盘结构构成的单片机系统的I/O口大大提高利用。

最常见的键盘构造如图3-7所示。

本设计就选用这个键盘形式。

4

8

C

播放歌曲

3

7

B

F

2

6

A

E

1

5

9

D

图3-7键盘布局

3.4功率放大模块设计

功率放大器模块采用芯片作为主功率放大器模块,在低压的用电产品使用广泛。

为了使最少的外部元件,20内置的电压增益。

但是在1英尺和8英尺以增加一个外部电阻器和电容器,电压增益可调为200以下任意值。

3.4.1LM386内部原理

图3-8LM386内部结构图

图3-8LM386内部结构,这是一三级放大电路。

电流镜作为有源负载;从基极和地之间的输入信号,从管集电极输出,是双输入单端传输出差分电路。

第二阶段是共射极放大器,T7放大器,为有源负载的恒流源,为了提高放大倍数。

第三阶段为复合管和管,及管构成的准互补输出级。

D1和D2二极管为输出级供给适合的偏置电压,能够解除交叉失真。

  2号引脚为反相输入端,3号引脚为同相输入端。

电路由单电源供电,故为OTL电路。

输出(引脚)外部输出电容和负载了。

  R7 T2的发射极接电阻,形成一个反馈路径和R5和R6,反馈网络,以电压串联负反馈深度,使电路具有电压增益稳定性。

图3-9LM386管脚

LM386引脚说明上面显示的外观。

引脚2为反相输入端,3为同相输入端;脚5输出;在6号和4号引脚的电源和接地引脚1和8;当电压增益设置端。

  LM386数据表,电源电压4~12V或5到18V(lm386n-4);静态消耗电流为4ma;电压增益为20-200;在1、8脚开路时,带宽为300khz;输入阻抗是音频功率0.5W为主

4.系统软件设计

4.1系统软件总体设计

图4-1系统流程图

主程序流程图如图4-1所示,单片机上电后先进行初始化,清除一些参数的初值,然后单片机通过不断的扫描矩阵键盘从而判断用户按下的是哪个按键,用户按下按键后单片机通过装载不同的值给定时器从而发出不同频率的声音。

4.2定时器产生音乐信号原理

一段音乐是由许多不同的尺度,每个尺度对应的频率,所以我们可以使用不同的频率,可以形成我们想要的音乐,并在单片集成电路产生不同频率是很方便的,我们可以使用定时器/计数器T0产生一个方波的频率信息,所以,频率规模,我们只是需要一首歌的相应的权利。

利用定时器计数器模式(模式),如计数的变化值与著作权的方式来产生不同的频率具有不同的大小,频率523hz周期T=1/523=1912,因此,定时器956/1μS=956,956的I/O逆转,

   使计数脉冲的价值和关系型频率(式中2-1所示)是:

                        N=fi÷2÷fr                        2-1

式中,N是计数值;Fi是机械频率(晶体振荡器为12MHz时,其频率为1MHz);Fr是要产生的频率。

其计数初值T的求法如下:

                       T=65536-N=65536-fi÷2÷fr

   例如:

K=65536,FI=1MHz,做为低(261hz)做(523hz),低音,高音做(1046hz)计数。

   T=65537-N=65537-fi÷2÷fr=65537-1000000÷2÷fr=65537-500000/fr

   低音DO的T=65537-500000/262=63628

   中音DO的T=65537-500000/523=64581

   高音DO的T=65537-500000/1046=65060

4.3程序设计原理

软件分析与功能的硬件电路设计的任务,它由硬件完成,其任务是由软件完成,硬件电路的设计的基本形状,也基本上决定。

软件分析方面的任务是软件设计的总体规划。

从软件的功能可以分为两类:

一类是软件的实现,能够实现大量的各种功能,如标准,算法,打印,输出控制,监控软件,其目的是为了协调执行模块和操作,在系统软件的组织和调度软件的作用。

这两种软件特性的设计方法,对算法的效率设计软件的执行,与硬件密切相关,千变万化。

软件需求分析的任务,应该模块一一列出了实施,并为每个执行模块的功能进行了定义和输入的定义(输入输出定义)。

在各执行模块进行定义时,将要牵扯到的数据结构和数据类型问题也一并规划好。

执行模块,良好的规划,可以监视。

首先,设置,根据监测程序选择最合适的结构系统的功能和键盘。

相对而言,执行模块任务明确简单,编程容易,和监测的简单的问题。

这就像当一个工人很容易,但当导演更难。

软件任务的一部分是监控软件和如何安排执行模块。

整个系统可分为软件程序(后台和前台程序)。

守护进程是指主程序和子程序调用,对于实时性要求不太高,延迟几十毫秒乃至几百毫秒也没关系,它一般是(键盘监控程序的翻译)显示程序和打印程序处理程序的执行程序的背景和前景;计划,安排一些实时的内容,如定时系统和外部中断(如电源故障中断)。

所有的程序都可以安装在前面的桌子上,对于“睡觉”的背景下,为了节约用电和抗干扰系统。

5.系统调试

5.1硬件调试

电子键盘电路系统极大的焊接,更重要的是,在大的电路系统,只要出一个错误,它将向检测电路带来极大的不便,以及更多的交叉口,所有尖锐引脚必须注意,否则会刺破包装线,这将导致短路的现象。

在本电子琴的计划调试中碰到了不少的事故。

认为只要仔细思考可以避免的问题,以下是主要的问题:

(1)数字选择时没有注意的是阴极或阳极,数码管在调试的时候已经能够显示。

解决:

把共阴数码管换成共阳数码管。

(2)在开始的时候,单片机的IO口直接驱动喇叭发声,调试时长时间不能发出声音。

解决:

通过查找相关资料,了解扬声器需要功率放大器来

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2