基于单片机的带音乐播放的电子琴设计.docx

上传人:b****6 文档编号:7591669 上传时间:2023-01-25 格式:DOCX 页数:53 大小:650.95KB
下载 相关 举报
基于单片机的带音乐播放的电子琴设计.docx_第1页
第1页 / 共53页
基于单片机的带音乐播放的电子琴设计.docx_第2页
第2页 / 共53页
基于单片机的带音乐播放的电子琴设计.docx_第3页
第3页 / 共53页
基于单片机的带音乐播放的电子琴设计.docx_第4页
第4页 / 共53页
基于单片机的带音乐播放的电子琴设计.docx_第5页
第5页 / 共53页
点击查看更多>>
下载资源
资源描述

基于单片机的带音乐播放的电子琴设计.docx

《基于单片机的带音乐播放的电子琴设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的带音乐播放的电子琴设计.docx(53页珍藏版)》请在冰豆网上搜索。

基于单片机的带音乐播放的电子琴设计.docx

基于单片机的带音乐播放的电子琴设计

课题名称:

带音乐播放的电子琴设计

主要内容:

一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,即可构成我们所想要的音阶了,最后经过放大电路放大,送到扬声器输出。

设计要求:

1、可以通过独立按键演奏8种发音。

2、通过一个播放键和一个停止键实现歌曲的顺序播放和停止。

3、在演奏音符和播放音乐的同时,对应的发光二极管点亮,数码管显示相应乐曲音阶。

课题名称、主要内容和基本要求:

进度安排:

周次

工作内容

执行情况

上学期

搜集资料、方案构思、选定题目、明确题目要求、开题报告

第1-5周

设计绘制电路原理图和程序框图

第6-7周

硬件设计与程序编制

第8-9周

软硬件调试与软硬件完善

第10-11周

系统硬软件联合调试

第12-13周

撰写设计报告(论文)

第14-15周

答辩,演示制作成品、讲解设计思路、回答提问。

 

指导教师评语:

指导教师签名:

评阅教师评语:

评阅教师签名:

毕业设计(论文)成绩:

 

答辩委员会主任签名:

 

摘要

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

它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。

本文的主要内容是用AT89S51单片机为核心控制元件,设计一个电子琴。

以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有10个按键和扬声器。

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

众所周知,由于一首音乐是由许多不同的音阶组合而成的,而每个音阶则对应着不同的频率,因此我们可以利用不同的频率来进行音阶的组合,即可产生美妙的音乐了。

对于单片机来说,产生不同的频率非常方便,只要算出某一音频的周期,然后将此周期除以2,即为半周期的时间,利用定时器计时这个半周期时间,每当计时到后,就将输出脉冲的I/O反相,然后重复计时,此半周期再对I/O反相,即可在I/O脚上得到此频率的脉冲。

因此我们可以利用单片机的定时器,使其工作在计数器模式MODE1下,改变计数值TH0及TL0来产生不同频率的信号。

从而产生不同的音符[1]。

关键词:

音阶,频率,单片机

Abstract

Electronic organ is a modern electronic music technology and the product is a new type of keyboard instruments. It played an important role in modern music. SCM has powerful control functions and flexible programming characteristics. It has converged with modern people's lives, become an irreplaceable part. The main content is AT89S51 control of the core components, design of a electronic organ. SCM as a host to the core, with the keyboard, speaker and other core modules. In the main control module has 16 keys and a speaker. The system is steady, its simple hardware circuits, software functions, reliability of control system and high cost performance is its advantages. It also has certain practical and reference value.

Well-known,themusicismadeupbymanydifferentscales,andeachscalecorrespondstodifferentfrequency,sowecanusedifferentfrequencytomakecombinationofscales,andthenproducewonderfulmusic.

Asforsingle-chipmicrocomputer,itisveryconvenienttoproducedifferentfrequency,wejustcalculateanaudiocycle,thenthiscycledividedby2,namelyhalfcycletime,usingtimertotimethehalfcycletime.

Whenevertiming,itwilloutputpulseI/Oreversephase,andrepeatthetiming,thehalfcycleagaintotheI/Oreversed-phase,thencangetthisfrequencypulsefromtheI/Ofeet.Sowecanusemicrocontrollertimertomakeitworkinthecountermodeandgeneratedifferentfrequencysignal.Thusproducedifferentnotes.

Keywords:

scales,frequency,single-chipmicrocomputer

 

目 录

 

第一章绪论

1.1电子琴特点及研究意义

本论文设计的为电子琴,电子琴又称作电子键盘,属于电子乐器(区别于电声乐器),发音音量可以自由调节。

音域较宽,和声丰富,甚至可以演奏出一个管弦乐队的效果,表现力极其丰富。

它还可模仿多种音色,甚至可以奏出常规乐器所无法发出的声音(如合唱声,风雨声,宇宙声等)。

另外,电子琴在独奏时,还可随意配上类似打击乐音响的节拍伴奏,适合于演奏节奏性较强的现代音乐。

另外,电子琴还安装有效果器,如混响、回声、延音,震音轮和调制轮等多项功能装置,表达各种情绪时运用自如。

本论文设计的电子琴虽是简易电子琴,功能和真正电子琴有不小差距,但本论文设计的电子琴是很多高档电子琴的基础,对进一步研究电子琴有很大的促进作用。

本设计易懂、简练,所用器件常见,上网查询资料方便,电路模块具有通用性,非常适合广大电子爱好者制作。

1.2系统简介

本文主要对使用单片机设计简易电子琴进行了分析,并介绍了基于单片机电子琴统硬件组成。

利用单片机产生不同频率来获得我们要求的音阶,最终可随意弹奏想要表达的音乐。

并且本文分别从原理图,主要芯片,各模块原理及各模块的程序的调试来详细阐述。

一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。

 

第二章方案论证

2.1单片机的选择

1、方案一:

用AT89C51作为核心控制元件。

但AT89C51不具备ISP功能,因此ATMEL公司已经停产,在市面上已经不常见了,况且其rom只有4k,在系统将来升级方面没有潜力。

2、方案二:

用AT89S52作为核心控制元件。

AT89S52由于其性价比高,完全满足本作品智能化的需求,他的内部程序存储空间达到8K,使软件设计有足够的内部使用空间并且方便日后系统升级,使用方便,抗干扰性能提高。

综上各优缺点,本设计选择了AT89S52作为本设计的核心控制元件。

2.2键盘选择

1、方案一:

独立式键盘。

此种键盘电路配置灵活,结构和编程都简单,通过查询即可识别出每只按键的状态来。

但每个按键接单片机的一条I/O线,占用单片机I/O口资源多,浪费资源。

多在单片机所需按键较少,I/O口资源充足时使用。

其原理图如下:

图2-1独立式键盘

2、方案二:

矩阵式键盘。

矩阵键盘电路占用I/O口较少,节约资源,编程麻烦,但有现有的程序块。

多用在使用按键较多的电路中。

其原理图如下:

图2-2矩阵式键盘

由于本电子琴设计只需要发生8个音阶,只需要8个键盘识别,占用单片机I/O口资源比较少,而且本设计中I/O口资源充足,足以满足键盘占用I/O口数据线的需求。

综合上述两种键盘识别电路的优缺点,本设计最终选用了独立式键盘识别电路。

2.3功放电路的选择

1、方案一:

三极管放大。

需要元器件很少,只需要一个电阻和一个三极管放大管,成本很低。

但是容易受干扰,噪声大,信号失真大。

其原理图如下:

图2-3三极管放大原理

2、方案二:

LM386功率放大电路。

芯片集成度高,外部电路焊接简单,电压放大倍数可调,有去耦滤波和阻抗校正网络,可以防止电路自激振荡,信号失真度小,噪声小,抗干扰能力强,而且可以调节音量。

电路较三极管电路复杂,成本较三极管电路高。

其原理图如下:

图2-4LM386功率放大电路

由于本设计需要演奏和播放音乐,需要高清晰高保真地还原出原来的音乐信号,所以选择了LM386功放电路。

第三章系统设计

3.1单片机的介绍

单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形式,即哈佛(Harvard)结构,另一种是采用通用计算机广泛使用的程序存储器与数据存储器合二为一的结构,即普林斯顿(Princeton)结构。

INTEL的MCS-51系列单片机采用的是哈佛结构的形式,而后续产品16位的MCS-96系列单片机则采用普林斯顿结构。

为了设计此系统,采用了MCS-51兼容单片机AT89S52单片机作为控制芯片。

3.1.1单片机AT89S52基本知识

AT89S52是一个低功耗,高性能CMOS8位单片机,片内含8kBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,功能强大的微型计算机的AT89S52可为许多嵌入式控制应用系统提供高性价比的解决方案。

AT89S52具有如下特点:

40个引脚,8kBytesFlash片内程序存储器,256bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。

3.1.2单片机AT89S52产品特点

AT89S52具有以下标准功能:

8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。

另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。

空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。

掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。

内部数据存储器的高128个单元是为专用寄存器提供的,因此该区也称作特殊功能寄存器(SFR),它们主要用于存放控制命令、状态或数据。

除去程序计数器PC外,还有21个特殊功能寄存器,其地址空间为80H~FFH。

这21个寄存器中有11个特殊功能寄存器具有位寻址能力,它们的字节地址刚好能被8整除。

下面将对部分专用寄存器作简要介绍。

3.1.3单片机AT89S52的使用

AT89S52单片机是一种低功耗高性能的CMOS8位微控制器,内置8KB可在线编程闪存。

该器件采用Atmel公司的高密度非易失性存储技术生产,其指令与工业标准的80C51指令集兼容。

片内程序存储器允许重复在线编程,允许程序存储器在系统内通过SPI串行口改写或用同用的非易失性存储器改写。

通过把通用的8位CPU与可在线下载的Flash集成在一个芯片上,AT89S52便成为一个高效的微型计算机。

它的应用范围广,可用于解决复杂的控制问题,且成本较低。

其结构框图如图3-1所示。

图3-1AT89S52结构框图

 

3.1.4单片机AT89S52的特性 

AT89S52的主要特性如下:

兼容MCS51产品

8K字节可擦写1000次的在线可编程ISP闪存

4.0V到5.5V的工作电源范围

全静态工作:

0Hz~24MHz

3级程序存储器加密

256字节内部RAM

32条可编程I/O线

3个16位定时器/计数器

8个中断源

UART串行通道

低功耗空闲方式和掉电方式

通过中断终止掉电方式

看门狗定时器

双数据指针

灵活的在线编程(字节和页模式)

3.1.5AT89S52引脚功能与封装

图3-2是AT89S52引脚图。

图3-2AT89S52引脚图

按照功能,AT89S52的引脚可分为主电源、外接晶体振荡或振荡器、多功能I/O口、控制和复位等。

1.多功能I/O口

AT89S52共有四个8位的并行I/O口:

P0、P1、P2、P3端口,对应的引脚分别是P0.0~P0.7,P1.0~P1.7,P2.0~P2.7,P3.0~P3.7,共32根I/O线。

每根线可以单独用作输入或输出。

①P0端口,该口是一个8位漏极开路的双向I/O口。

在作为输出口时,每根引脚可以带动8个TTL输入负载。

当把“1”写入P0时,则它的引脚可用作高阻抗输入。

当对外部程序或数据存储器进行存取时,P0可用作多路复用的低字节地址/数据总线,在该模式,P0口拥有内部上拉电阻。

在对Flash存储器进行编程时,P0用于接收代码字节;在校验时,则输出代码字节;此时需要外加上拉电阻。

②P1端口,该口是带有内部上拉电阻的8位双向I/O端口,P1口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。

对端口写“1”时,通过内部的上拉电阻把端口拉到高电位,此时可用作输入口。

P1口作输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。

在对Flash编程和程序校验时,P1口接收低8位地址。

另外,P1.0与P1.1可以配置成定时/计数器2的外部计数输入端(P1.0/T2)与定时/计数器2的触发输入端(P1.0/T2EX),如表2.1所示。

表3.1 P1口管脚复用功能

端口引脚

复用功能

P1.0

T2(定时器/计算器2的外部输入端)

P1.1

T2EX(定时器/计算器2的外部触发端和双向控制)

P1.5

MOSI(用于在线编程)

P1.6

MISO(用于在线编程)

P1.7

SCK(用于在线编程)

 

③P2端口,该口是带有内部上拉电阻的8位双向I/O端口,P2口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。

对端口写“1”时,通过内部的上拉电阻把端口拉到高电位,此时可用作输入口。

P2口作输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。

在访问外部程序存储器或16位的外部数据存储器时,P2口送出高8位地址,在访问8位地址的外部数据存储器时,P2口引脚上的内容(就是专用寄存器(SFR)区中P2寄存器的内容),在整个访问期间不会改变。

在对Flash编程和程序校验期间,P2口也接收高位地址或一些控制信号。

④P3端口,该口是带有内部上拉电阻的8位双向I/O端口,P3口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。

对端口写“1”时,通过内部的上拉电阻把端口拉到高电位,此时可用作输入口。

P3口作输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。

在AT89S52中,同样P3口还用于一些复用功能,如表2.2所列。

在对Flash编程和程序校验期间,P3口还接收一些控制信号。

表3.2P3端口引脚与复用功能表

端口引脚

复用功能

P3.0

RXD(串行输入口)

P3.1

TXD(串行输出口)

P3.2

INT0(外部中断0)

P3.3

INT1(外部中断1)

P3.4

T0(定时器0的外部输入)

P3.5

T1(定时器1的外部输入)

P3.6

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

P3.7

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

2.RST 复位输入端。

在振荡器运行时,在此脚上出现两个机器周期的高电平将使其单片机复位。

看门狗定时器(Watchdog)溢出后,该引脚会保持98个振荡周期的高电平。

在SFRAUXR(地址8EH)寄存器中的DISRTO位可以用于屏蔽这种功能。

DISRTO位的默认状态,是复位高电平输出功能使能。

3.ALE/PROG 地址锁存允许信号。

在存取外部存储器时,这个输出信号用于锁存低字节地址。

在对Flash存储器编程时,这条引脚用于输入编程脉冲PROG。

一般情况下,ALE是振荡器频率的6分频信号,可用于外部定时或时钟。

但是,在对外部数据存储器每次存取中,会跳过一个ALE脉冲。

在需要时,可以把地址8EH中的SFR寄存器的0位置为“1”,从而屏蔽ALE的工作;而只有在MOVX或MOVC指令执行时ALE才被激活。

在单片机处于外部执行方式时,对ALE屏蔽位置“1”并不起作用。

4.PSEN 程序存储器允许信号。

它用于读外部程序存储器。

当AT89S52在执行来自外部存储器的指令时,每一个机器周期PSEN被激活2次。

在对外部数据存储器的每次存取中,PSEN的2次激活会被跳过。

5.EA/Vpp 外部存取允许信号。

为了确保单片机从地址为0000H~FFFFH的外部程序存储器中读取代码,故要把EA接到GND端,即地端。

但是,如果锁定位1被编程,则EA在复位时被锁存。

当执行内部程序时,EA应接到Vcc。

在对Flash存储器编程时,这条引脚接收12V编程电压Vpp。

6.XTAL1 振荡器的反相放大器输入,内部时钟工作电路的输入。

7.XTAL2 振荡器的反相放大器输出。

3.2LED数码管

3.2.1LED数码管主要技术参数

图3-3数码管

数码管使用条件:

a、段及小数点上加限流电阻

b、使用电压:

段:

根据发光颜色决定;  小数点:

根据发光颜色决定

c、使用电流:

静态:

总电流80mA(每段10mA);动态:

平均电流4-5mA    峰值电流100mA

上面这个只是七段数码管引脚图,其中共阳极数码管引脚图和共阴极的是一样的,4位数码管引脚图数码管使用注意事项说明:

(1)数码管表面不要用手触摸,不要用手去弄引角;

(2)焊接温度:

260度;焊接时间:

5S

(3)表面有保护膜的产品,可以在使用前撕下来。

3.2.2LED数码管的引脚说明

这类数码管可以分为共阳极与共阴极两种,共阳极就是把所有LED的阳极连接到共同接点com,而每个LED的阴极分别为a、b、c、d、e、f、g及dp(小数点);共阴极则是把所有LED的阴极连接到共同接点com,而每个LED的阳极分别为a、b、c、d、e、f、g及dp(小数点),如下图所示。

图中的8个LED分别与上面那个图中的A~DP各段相对应,通过控制各个LED的亮灭来显示数字。

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

图2-5共阴数码管内部结构

对于单个数码管来说,从它的正面看进去,左下角那个脚为1脚,以逆时针方向依次为1`10脚,左上角那个脚便是10脚了,上面两个图中的数字分别与这10个管脚一一对应。

注意,3脚和8脚是连通的,这两个都是公共脚。

还有一种比较常用的是四位数码管,内部的4个数码管共用a~dp这8根数据线,为人们的使用提供了方便,因为里面有4个数码管,所以它有4个公共端,加上a~dp,共有12个引脚,下面便是一个共阴的四位数码管的内部结构图(共阳的与之相反)。

引脚排列依然是从左下角的那个脚(1脚)开始,以逆时针方向依次为1~12脚,下图中的数字与之一一对应。

图3-64位共阳数码管内部结构

3.2.3数码管编码说明

数码管编码说明,如3.3表所示:

表3.3控制命令表

P1.7

P1.6

P1.5

P1.4

P1.3

P1.2

P1.1

P1.0

g

f

a

b

dp

c

d

e

0

0

0

1

0

1

0

0

0

88H

1

1

1

1

0

1

0

1

1

EBH

2

0

0

1

1

0

0

1

0

4CH

3

1

0

1

0

0

0

1

0

49H

4

1

1

1

0

0

0

0

1

2BH

5

1

0

1

0

0

1

0

0

19H

6

0

0

1

0

0

1

0

0

18H

7

1

1

1

0

1

0

1

0

CBH

8

0

0

1

0

0

0

0

0

08H

9

1

0

1

0

0

0

0

0

09H

3.3LM386

3.3.1LM386简介

LM386是一种音频集成功放,具有自身功耗低、更新内链增益可调整、电源电压范围大、外接元件少和总谐波失真小等优点的功率放大器,广泛应用于录音机和收音机之中。

3.3.2LM386特性

静态功耗低,约为4mA,可用于电池供电;

工作电压范围宽,4-12Vor5-18V;

外围元件少;

电压增益可调,20-200;

低失真度;

3.3.3应用特点

LM386是美国国家半导体公司生产的音频功率放大器,主要应用于低电压消费类产品。

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

但在1脚和8脚之间增加一只外接电阻和电容,便可将电压增益调为任意值,直至200。

输入端以地位参考,同时输出端被自动偏置到电源电压的一半,在6V电源电压下,它的静态功耗仅为24mW,使得LM386特别适用于电池供电的场合。

3.3.4LM386引脚图

LM386的外形和引脚的排列如右图所示。

引脚2为反相输入端,3为同相输入端;引脚5为输出端;引脚6和4分别为电源和地;引脚1和8为电压增益设定端;使用时在引脚7和地之间接旁路电容,通常取10μF。

3.3.5LM386注意事项

1、通过接在1脚、8脚间的电容(1脚接电容+极)来改变增益,断开时增益为20dB。

因此用不到大的增益,电容就不要接了,不光省了成本,还会带来好处--噪音减少,何乐而不为?

2、PCB设计时,所有外围元件尽可能靠近LM386;地线尽可能粗一些;输入音频信号通路尽可能平行走线,输出亦如此。

这是死理,不用多说了吧。

3、选好调节音量的电位器。

质量太差的不要,否则受害的是耳朵;阻值不要太大,10K最合适,太大也会影响音质。

4、尽可能采用双音频输入/输出。

好处是:

“+”、“-”输出端

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

当前位置:首页 > 高等教育 > 工学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1