电子琴毕业设计.docx

上传人:b****6 文档编号:6040023 上传时间:2023-01-03 格式:DOCX 页数:15 大小:105.17KB
下载 相关 举报
电子琴毕业设计.docx_第1页
第1页 / 共15页
电子琴毕业设计.docx_第2页
第2页 / 共15页
电子琴毕业设计.docx_第3页
第3页 / 共15页
电子琴毕业设计.docx_第4页
第4页 / 共15页
电子琴毕业设计.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

电子琴毕业设计.docx

《电子琴毕业设计.docx》由会员分享,可在线阅读,更多相关《电子琴毕业设计.docx(15页珍藏版)》请在冰豆网上搜索。

电子琴毕业设计.docx

电子琴毕业设计

 

主要内容、基本要求、主要参考资料等:

设计一个电子琴,要求具有以下功能:

(1)利用查询式键盘,数字键1、2、3、4、5、6、7、8作为电子琴按键,按键按下时发出1、2、3、4、5、6、7、1的声音。

(2)利用定时器,可以发出不同频率的脉冲,不同频率的脉冲经喇叭驱动电路放大滤波后,就会发出不同的音调。

参考资料:

【1】《单片机原理及接口技术》--第二版主编李全利高等教育出版社

【2】《80C51单片机实践与应用{M}》--第一版主编

吴金戌,沈庆阳,郭庭吉清华大学出版

 

完成期限:

2011-12-07

指导教师签名:

课程负责人签名:

年月日

郑州华信学院

课程设计说明书

题目:

简易电子琴设计

姓名:

尚玉莎

院(系):

机电工程学院

专业班级:

09电气工程一班

学号:

0902120110

指导教师:

宋东亚

 

成绩:

 

时间:

年月日至年月日

 

目录

摘要4

引言4

一方案选取5

二原理及结构6

2.1设计简单原理介绍6

2.2设计结构图6

2.3单片机的外部引脚简要说明7

三硬件设计9

3.1键盘控制模块9

四软件设计10

4.1软件流程图10

五软、硬件调试过程11

5.1硬件操作步骤11

5.2软件操作步骤12

六源程序12

6.1源程序12

参考文献14

附录15

总结16

 

摘要

随着现代电子技术的发展,涌现出了很多电子产物,其中电子琴就是其一,本报告设计一个基于单片机的简易电子琴。

电子琴作为科技与音乐的产物,在信息化与电子化的时代,为音乐的大众化做出了不可磨灭的贡献,现在歌曲的制作,很多都需要电子琴来完成,因此它在现代音乐扮演着重要的角色。

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

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

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

以单片机作为主控核心,与键盘扬声器等模块组成核心主控制模块,在主控模块上设有8个按键,和一个复位按键本系统运行稳定,其优点是硬件电路简单,软件功能完善,程序简单易懂,控制系统可靠,性价比较高等,因此具有一定的实用和参考价值。

 

关键词:

电子琴、键盘、频率

引言

单片机作为微型计算机的一个很重要的分支,自问世以来,以其极高的性价比,受到人们的重视和关注,因此应用广泛,发展迅速。

相对而言,单片机体积小、重量轻、抗干扰能力强,对环境要求不高,并且价格低廉、可靠性高、灵活性好,开发较为容易。

目前,在我国,单片机已经广泛地用于智能仪表、机电设备过程控制、自动检测、家用电器和数据处理等各个方面。

因此,单片机的开发应用已成为高科技和工程领域的一项重大课题。

在电子音乐领域,自从20世纪末期MIDI(乐器数字化接口)推出和逐步规范化后,各种乐器及众多数码音视频产品中采用MIDI技术已逐渐成为一种潮流。

但是当前各厂商的电子琴产品通常使用自己设计的专用音源,并且软硬件均不对外公开,阻碍了MIDI技术的交流。

作者在开发基于MIDI模块的音乐发生器的过程中,进行了用单片机控制通用MIDI音源模块的相关功能制作电子琴的实践,制作出具有8个按键的MIDI电子琴,该琴支持单音和复音弹奏,单片机以标准的MIDI波特率传送信息,通过串口连接蜂鸣器,从而获得优美的乐音

一方案选取

通过对单片机系统的学习和认识,我认识到通过8051单片机p1输入到系统,可以完成此简易电子琴的任务,使用80C51单片机做此电子琴是我们的不二选择,因为在我们的课程学子中,了解和接触最多的就是80C51,别的型号的芯片我们不熟,所以80C51是个很好的选择。

乐音实际上是有固定周期的信号,我们可以用80C51的一个定时器(如T0)控制,在P1.0脚上输出方波周期信号,产生乐音。

根据不同的按键,调节T0的溢出时间,可输出不同频率的乐音,单片机因其体积小、功能强、价格低廉而得到广泛应用。

本设计介绍用8051单片机设计微型电子琴的方法,仅需80C51最小系统,扩展一组小键盘,再加一个音频小功放,输出到扬声器。

这样就做出了一台微型电子琴。

 

二原理及结构

2.1设计简单原理介绍

一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。

若要产生音频脉冲,只要算出某一音频的周期(1/频率),再将此周期除以2,即为半周期的时间。

利用定时器计时半周期时间,每当计时终止后就将P1.0反相,然后重复计时再反相。

就可在P1.0引脚上得到此频率的脉冲。

利用8051的内部定时器使其工作计数器模式1下,改变计数值TH0及TL0以产生不同频率的方法产生不同音阶,例如,频率为523Hz,其周期T=1/523=1912μs,因此只要令计数器计时956μs/1μs=956,每计数956次时将I/O反相,就可得到中音DO(523Hz)。

计数脉冲值与频率的关系式如下:

N=fi÷2÷fr

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

表2.1频率与音符对照表

音符

中DO

中RE

中MI

中FA

中SO

中LA

中SI

高DO

频率

523

587

659

698

784

880

988

1046

初值

64580

64684

64777

64820

64898

64968

65030

65058

2.2设计结构图

8051单片机根据不同的琴键产生不同的乐曲音符,并经过信号放大,由喇叭放出。

系统整体方案如图所示:

琴键电路

P0.0

P0.7

P1.0

单片机

图2.1系统原理框图

2.3单片机的外部引脚简要说明

此次设计应用的单片机为80C51,设计中主要应用了它的P0口、复位RST口、片选口、外接晶振引脚和P1.0口,单片机8051的外部引脚配置如图3.2所示:

图2.251系列的外部引脚配置

VCC:

供电电压。

GND:

接地。

P0口:

P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门流。

当P1口的管脚第一次写1时,被定义为高阻输入。

P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。

P1口:

P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。

P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。

P2口:

P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。

并因此作为输入时,P2口的管脚被外部拉低,将输出电流。

这是由于内部上拉的缘故。

P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。

在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。

RST:

复位输入。

当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

XTAL1:

反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2:

来自反向振荡器的输出。

P3口:

P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。

当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。

作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。

P3口同时为闪烁编程和编程校验接收一些控制信号。

P3口也可作为8051的一些特殊功能口,如下表所示:

表2.1P3口的第二功能

P3口引脚

第二功能

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(外部数据存储器读脉冲输出)

 

三硬件设计

本电子琴设计模块主要包括键盘控制模块。

3.1键盘控制模块

电子琴设有8个按键,8个按键分别代表8个音符,从中DO到高DO,通过软硬件设计,按某个键触发外部中断,中断使程序跳转,启动电子琴,使喇叭发出各个音符的声音,此系统琴键输入是通过独立式键盘来完成的。

由于8051单片机的八位I/O口足以能实现控制C调各音阶的输出,并且独立式键盘的编程容易易懂,结构简单,实现起来方便,而且每个按键单独占有一根I/O接口线,每个I/O口的工作状态互不影响,所以采用独立式键盘。

P0.0~P0.7口分别对应琴键1~7输入,如下图所示:

 

图3.1键盘电路图

四软件设计

4.1软件流程图

本系统中下位机(单片机80C51)的主要功能就是实现音乐播放功能。

其主程序流程如图4.1和图4.2所示。

 

 

图4.2

定时中断程序框图

 

五软、硬件调试过程

5.1硬件操作步骤

利用实验仪上提供的键盘,使数字键1、2、3、4、5、6、7、8作为电子琴按键,按下即发出相应的音调。

用3.2口发出音频脉冲,驱动喇叭。

1、单片机最小应用系统1的P1口接查询式键盘,单片机INT0口接音频驱动电路。

2、用串行数据通信线连接计算机与仿真器,把仿真器插到模块的锁紧插座中,请注意仿真器的方向:

缺口朝上。

3、打开KeiluVision2仿真软件,首先建立本实验的项目文件,接着添加电子琴.ASM源程序,进行编译,直到编译无误。

4、进行软件设置,选择硬件仿真,选择串行口,设置波特率为38400。

5、打开模块电源和总电源,点击开始调试按钮,点击RUN按钮运行程序。

按查询式键盘的1~8键,扬声器发出高低不同的声音。

5.2软件操作步骤

1、使用Professional软件画出电路图(如附录所示)。

2、打开KeiluVision2仿真软件,首先建立本实验的项目文件,接着添加电子琴.ASM源程序,进行编译,直到编译无误。

3、进行软件设置,添加ASM源程序,进行编译直至没有出现错误。

4、点击按钮进行程序。

5、按电路图中的8个键盘按钮。

 

六源程序

6.1源程序

Pulseequ10h;脉冲

PulseCNTequ50h;脉冲计数

ToneHighequ40h;高音调

ToneLowequ41h;低音调

Toneequ42h;音调

KeyBufequ54h

SpeakerBITP3.2

ORG0000H

ljmpStart

org000bh

LJMPTimer0Int

ORG0030H

Timer0Int:

;定时中断

pushPSW

clrTR0

movTH0,ToneHigh

movTL0,ToneLow

setbTR0

movC,Pulse

movSpeaker,C

CPLPulse

popPSW

reti

ToneTable:

dw64578,64686,64778,64821

DW64898,64968,65029,65069

TestKey:

MOVP1,#0FFH

MOVA,P1;读入键状态

ret

KeyTable:

DB0FEH,0FDH,0FBH,0F7H;键值表

DB0EFH,0DFH,0BFH,07FH

GetKey:

MOVR6,#10

ACALLDELAY

MOVA,P1

CJNEA,#0FFH,K01;确有键按下

LJMPMLOOP

K01:

MOVR3,#8;8个键

MOVR2,#0;键码

MOVB,A;暂存键值

MOVDPTR,#K0TAB

K02:

MOVA,R

MOVCA,@A+DPTR;从键值表中取键值

CJNEA,B,K04;键值比较

MOVA,R2;得键码

RET

K04:

INCR2;不相等,到继续访问键值表

MOVA,#0FFH;键值不在键值中,即多键同时按下

LJMPMLOOP

Delay:

movr7,#0;延时子程序

DelayLoop:

djnzr7,DelayLoop

djnzr6,Delay

ret

Start:

movsp,#70h

movTMOD,#01;Timer

movIE,#82h;EA=1,IT0=1

movTone,#0

MLoop:

callTestKey

jzMLoop

callGetKey

movb,a

jzMLoop;=0,<1

anla,#16(10H)

jnzMLoop;>7

decb

mova,b

rla;a=a*2

movb,a

movdptr,#ToneTable

movca,@a+dptr

movToneHigh,a

movTH0,a

mova,b

inca

movca,@a+dptr

movToneLow,a

movTL0,a

setbTR0

movP1,#OFFH

Wait:

mova,P1

CJNEA,#OFFH,WAIT

MOVR6,#10

ACALLDELAY

clrTR0

ljmpMLoop

end

 

参考文献

【1】《单片机原理及接口技术》--第二版主编李全利高等教育出版社

【2】《80C51单片机实践与应用{M}》--第一版主编

吴金戌,沈庆阳,郭庭吉清华大学出版

 

附录

电路图

元器件表

1、单片机AT89C51

2、查询式键盘

3、10K电阻(8个)

4、扬声器

 

总结

经过两周的单片机课程设计,是我学习到了很多知识,尤其是实践方面的知识,我设计的是简易电子琴设计,设计这个课题使我把理论课的知识应用到其中,并且检验了理论知识。

通过这次单片机课程设计,我弄懂了不少课本上的知识,还扩展了一些课本没有的知识,再通过老师同学的给予的大力帮助,很好的完成了这次课程设计。

首先在课程设计刚开始阶段,我对本次设计没有什么思路,但通过我在图书馆细心的查资料,并且通过对资料的学习,我大致了解了单片机应用的发展现状以及未来的发展趋势,认识到目前单片机方面的各种各样的应用,大致掌握了电子琴的原理和设计思路,从而对单片机有了更多的了解。

我们的电子琴设计在硬件主要包括三个部分:

硬件检测模块,波形输出模块;在软件方面,因为程序的编写都是我们的弱项,所以我们是先从网上找来类似的程序模板,然后借助各方面的资料对程序的每一步进行分析,按我们的需求进行修改,最终才得到我们现在的程序方案,同时也对单片机汇编语言的设计有了进一步的认识与提高。

通过这次课程设计,我感觉收获了很多:

首先,通过实践,加深对单片机系列知识及其系统的认识。

这个设计题目并不是新的,但从中能体现到一个系统开发设计的过程,足于让我们受益。

第二,通过设计学习到了很多软件的使用。

本次设计,软件部分用到了protues进行硬件设计,用keil进行程系编译,用protel进行制板。

第三,提高了自己的动手能力。

动手在一定程度上反映了一个人的能力,作为当代大学生,社会要求的我们不是只能说而不能做的人才;作为海大的一员,三能人才标准更让我们清醒地认识到,实际动手能力无比重要。

从这次实物制作中,我的动手能力提高了。

两周时间我和同伴过的很充实,我们也通过互相的交流互相学习了很多识,在设计和连接电路的实践中我们也遇到过很多困难,但是经过两周的努力我们终于解决了困难,并且最终连接好电路,在调试过程中也成功了,其中要感谢老师还有其他同学的帮助,希望能有更多这样的机会,让我们能学习更多的知识,也感谢老师和学校能提供给我们各种器件和设备供我们来学习。

总之,两周的课程设计结束了,我们都受益匪浅,为我们以后的工作打下了很好的基础。

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

当前位置:首页 > 工程科技 > 纺织轻工业

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

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