基于51单片机的脉冲触发电子音调的设计.docx
- 文档编号:7891474
- 上传时间:2023-01-27
- 格式:DOCX
- 页数:32
- 大小:642.13KB
基于51单片机的脉冲触发电子音调的设计.docx
《基于51单片机的脉冲触发电子音调的设计.docx》由会员分享,可在线阅读,更多相关《基于51单片机的脉冲触发电子音调的设计.docx(32页珍藏版)》请在冰豆网上搜索。
基于51单片机的脉冲触发电子音调的设计
扬州工业职业技术学院
2009—2010学年
第二学期
毕业设计
课题名称:
基于51单片机的脉冲触发电子音调的设计
设计时间:
2009年12月
系部:
电子信息工程系
班级:
0702应用电子
姓名:
马淑云
指导教师:
单丹
总目录
第一部分任务书
第二部分开题报告
第三部分毕业设计正文
第一部分
任
务
书
扬州工业职业技术学院
毕业设计任务书
系部
电子信息工程系
指导老师
单丹
职称
讲师
学生姓名
马淑云
班级
0702应用电子
学号
0705120208
设计题目
基于51单片机的脉冲触发电子音调的设计
设计
内容
目标
和
要求
毕业设计的内容:
本毕业设计是以单片机AT89S51为基础,结合蜂鸣器,通过脉冲触发产生不同的电子音调,音阶由方波频率的大小控制。
我们通过按下独立键盘(K1-K7)按钮可发出DO、RE、MI……7个音符的声音,独立编写出三段不同的音乐并通过音乐选择按键选择播放。
毕业设计的目的:
通过本毕业设计旨在让学生要将单片机知识与软件融会贯通,设计出实用的系统。
培养学生的独立分析能力,综合运用所学的知识来解决实际生活中出现的问题。
毕业设计论文要求:
1、提出选题的初步设想和研究目的
2、收集、整理与毕业设计有关领域的信息资料
3、完成本毕业设计电路原理图设计
4、完成软件和硬件系统的调试,功能指标达到技术要求
5、根据本毕业设计的设计、编程、工作过程,形成符合学校规定的毕业设计书面文档。
教研室
审核
系部
审核
第二部分
开
题
报
告
扬州工业职业技术学院电子信息工程系2010届
毕业设计(论文)开题报告书
学生姓名
马淑云
专业
应用电子
班级
0702应电
学号
0705120208
题目
基于51单片机的脉冲触发电子音调的设计
指导教师
单丹
职称
讲师
学位
硕士
题目类别
□工程设计□基础研究■应用研究□其它
【课题的内容与要求】
本设计是以AT89C51单片机为基础,结合蜂鸣器以及独立键盘,通过脉冲触发产生不同的电子音调,音阶由方波频率的大小控制。
对硬件电路进行设计,对软件系统进行编程和调试,并且要有相应的实物或者仿真结果。
通过本次的毕业设计,要掌握单片机的基本工作原理,单片机定时器和按键检测的工作原理以及编程方法。
【前言】
电子音调,是现代电子科技与音乐结合的产物,它在现代音乐扮演着重要的角色。
目前,由于电子音乐的普及,电子音调合成器(合成器实际上是一台声音的频率合成仪,可以制作各种声音,改变各种音色)可以解决相当一部分的歌唱及舞厅的伴奏问题。
【方案的比较与评价】
555电路方案:
它只能实现dolaimi………si七个音调的设置。
如果想要实现更多的功能,电路就会变的复杂。
自然成本也就增加了,这是商家不希望的。
为了弥补NE555电路实现不了功能,本设计采用了市面上最常用,价格便宜的单片机AT89C51来实现七个音调的设计在此电路的基础上还加上了自动唱歌功能。
蜂鸣器的唱歌原理是一个脉冲驱动原理,NE555可以说是一个“万能芯片”,但是要想实现复杂的工作,它可是“力不从心”。
在设计中采用了单片机实现了功能要求。
【预期的效果及指标】
对该设计的硬件电路进行设计,软件部分进行编写和调试。
按下独立键盘(K1-K7)按钮可发出DO、RE、MI……7个音符的声音,通过功能选择按键可选择按键发音和音乐播放,通过音乐选择按钮可选择播放三段不同的音乐,要能够独立编写出三段不同的音乐,要能够设计成实物或者进行软件的仿真。
【进度安排】
2009年9月15日-2009年9月30日选题、调研、收集资料
2009年9月30日-2009年10月5日论证、开题
2009年10月6日-2010年3月20日设计(写作初稿)
2010年3月21日-2010年5月13日修改、定稿、打印、答辩
【参考文献】
[1]俞国亮等编著.《MCS-51单片机原理与应用》.清华大学出版社.2006年:
50页~68页
[2]樊明龙,任丽静.《单片机原理与应用》.化学工业出版社出版.2004年:
125页~144页
[3]张大明.《单片微机控制应用技术》.机械工业出版社.2002年:
189页~221页
[4]张毅坤等编著.《单片机微型计算机原理及应用》.西安电子科技大学出版社.2005年:
32页~57页
【指导教师意见】(有针对性地说明选题意义及工作安排是否恰当等)
□同意提交开题论证□修改后提交□不同意提交(请说明理由)
指导教师签章:
年月日
【系部意见】
□同意指导教师意见□不同意指导教师意见(请说明理由)□其它(请说明)
队系(部)主任签章:
年月日
第三部分
毕
业
论
文
正
文
基于51单片机的脉冲触发电子音调的设计
姓名马淑云
班级0702应用电子
[摘要]电子音调,是现代电子科技与音乐结合的产物,它在现代音乐扮演着重要的角色。
单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。
本文的主要内容是用AT89C51单片机为核心控制元件,通过脉冲触发产生出电子音调,设计一个简易的电子琴。
以单片机作为主控核心,与键盘、蜂鸣器等模块组成控制模块,在控制模块上设有七个键盘按键、三个控制按键和一个蜂鸣器。
本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有一定的实用与参考价值。
[关键词]AT89C51单片机脉冲触发
Basedon51SCMpulsetriggeringelectronictonedesign
NameMaShuYun
Class0702applicationofelectronic
[abstract]electronictone,theproductofthemodernelectronictechnologyandthecombinationofmusic,itisanimportantroleinthemodernmusic.SCMhasstrongcontrolfunctionandflexibleprogrammableachieveproperties,ithascameintomodernpeople'slifeandbeenairreplaceablepart.ThemaincontentofthisarticleistouseAT89C51controldevice,throughthepulsetriggeringproduceelectronictone,designasimplekeyboard.Takesmicrocontrollerasthemastercore,withthekeyboard,buzzeretcmodulecontrolmodule,incontrolonthemodulehassevenclavierkey-press,threecontrolkeysandabuzzer.Thesystemrunsstably,itsadvantageissimplehardwarecircuit,softwarefunctionisperfect,controlsystemisreliable,cost-effectivehigherhascertainpracticalwithreferencevalue.
[keywords]AT89C51SCMpulsetriggered
第一章引言
1.1设计目的及意义
电子音调,是现代电子科技与音乐结合的产物,它在现代音乐扮演着重要的角色。
目前,由于电子音乐的普及,电子音调合成器(合成器实际上是一台声音的频率合成仪,可以制作各种声音,改变各种音色)可以解决相当一部分的歌唱及舞厅的伴奏问题。
可以事先制作伴奏音乐或背景音乐,而不需要乐队,或者部分代替乐队。
由于音调合成器制作和修改方便,成本低,音乐丰满,所以市场需求量很大,因此,世界许多国家的厂商都不断地在发展并推出新的型号,每年都要更新换代。
当前的发展趋势是不断的采用先进技术,以取得更多、更好的音色。
如扩展容量,这包括扩展槽口,增加软盘驱动器或硬盘,增加最大发音数目,增大存贮量,扩展琴键等;使功能多样化,如一台合成器可以同时发二种、四种甚至几种音色,即一台当作几台使用,或者把鼓机的节奏发生器功能、音序器的编辑功能放入合成器,让合成器代替计算机的主机等;扩展功能,例如有的合成器有“跟随”功能,即经预置,每一个音后可以跟随一个二度或三度音,“重叠”功能,轻奏或重奏时可以发不同音调或音色;另外,合成器还向轻便、使用操作方便等方向发展。
电脑音乐也许不会成为今后音乐的主流,但它在整个人类音乐史上的地位已经不容置疑地确立了,相信它会越来越深入地浸透到音乐创作和欣赏的领域中,并且将在一定程度上影响人们对音乐的理解和诠释。
用单片机制作的电子音调也会越来越多,这将必然成为一种趋势。
1.2课题的概述
本文的主要内容是用AT89C51单片机为核心控制元件,设计一个能发出电子音调的简易电子琴。
电子音调的产生是利用单片机产生不同频率来获得我们要求的音符,最终可随意设计出我们想要表达的音乐。
本文分别从硬件部分的设计和软件部分的设计来详细阐述。
硬件部分包括了按下独立键盘中的按键时,蜂鸣器播放对应的音符;通过按下音乐选择按键可以选择3种不同的音乐可供测试与欣赏。
软件部分包括了简单音乐的编程,其中音乐节拍的持续是通过延时子程序来实现的。
编程是用了汇编程序和C语言的混合编写,仿真是用了Protues和Keil来实现的。
1.3设计的主要内容介绍
本毕业设计是设计出一个发出各种电子音调的电子琴。
具体有以下几点设计的内容:
1.不同频率下音符的播放:
通过按下独立键盘K1-K7,可发出DO、RE、MI……7个音符的声音。
2.音乐的编写:
通过软件的编程,编写出三首简单的音乐,音乐中会出现高、中、低音。
3.功能的切换:
通过按下功能选择键,可以实现按键发音和音乐播放之间的切换。
在选择音乐播放时,数码管会被点亮;而当选择按键发音时,数码管会被熄灭。
我们可以通过数码管的工作状态来判断当前的功能。
4.音乐播放的选择:
通过按下音乐选择键,可以实现选择三段音乐进行播放。
按一下,说明播放的是第一段音乐,数码管显示为0;按两下,说明播放的是第二段音乐,数码管显示为1;按三下,说明播放的是第三段音乐,数码管显示为2。
5.音乐的启动与暂停:
通过按下音乐启动/暂停键,可以决定音乐是否继续播放。
第二章设计思路的介绍
根据设计的要求,我将整个设计分为三大模块,AT89C51单片机作为核心控制模块,独立键盘以及控制按键(包括音乐启动/停止按键、音乐选择按键和功能切换按键)作为输入模块,数码管以及蜂鸣器作为输出模块。
具体组成情况如图2.1所示。
输出模块
控制模块
输入模块
数码管
AT89C51单片机
独立键盘
功能切换按键
蜂鸣器
音乐启动/停止按键
音乐选择按键
图2.1系统组成图
2.1AT89C51单片机介绍
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除100次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。
AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
外形及引脚排列如图2.2所示。
图2.251系列单片机
AT89C51单片机管脚说明
VCC:
供电电压。
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下表所示:
P3口管脚备选功能
P3.0RXD(串行输入口)
P3.1TXD(串行输出口)
P3.2/INT0(外部中断0)
P3.3/INT1(外部中断1)
P3.4T0(记时器0外部输入)
P3.5T1(记时器1外部输入)
P3.6/WR(外部数据存储器写选通)
P3.7/RD(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
LE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
振荡器特性:
XTAL1和XTAL2分别为反向放大器的输入和输出。
该反向放大器可以配置为片内振荡器。
石晶振荡和陶瓷振荡均可采用。
如采用外部时钟源驱动器件,XTAL2应不接。
有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。
2.2电子音调工作原理的介绍
在人类还没有产生语言时,就已经知道利用声音的高低、强弱来表达自己的思想和感情。
声琴弦等物体震动时会发出声波,声波通过空气传播传入人耳,我们就可以听到声音。
声音有噪音和乐音之分,震动有规律的就是乐音。
乐音听起来有的高,有的低,这就叫音高。
音高是由发音物体振动频率的高低决定的,频率高声音就高,频率低声音就低
一首音乐是由许多不同的音符组成的,而每个音符对应着不同的频率,这样我们就可以利用不同的频率的组合,加上与拍数对应的延时,即可构成我们所想要的音乐了。
当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音符对应频率关系以及单片机定时计数的关系正确即可。
利用AT89C51的内部定时器使其工作计数器模式(MODE1)下,改变计数值TH0及TL0以产生不同频率的方法产生不同音符,例如,频率为523Hz,其周期T=1/523=1912μs,因此只要令计数器计时956μs/1μs=956,每计数956次时将I/O反相,就可得到中音DO(523Hz)。
计数脉冲值与频率的关系式(如式2-1所示)是:
N=fi÷2÷fr
式中,N是计数值;fi是机器频率(晶体振荡器为12MHz时,其频率为1MHz);fr是想要产生的频率。
其计数初值T的求法如下:
T=65536-N=65536-fi÷2÷fr
例如:
设K=65536,fi=1MHz,求低音DO(261Hz)、中音DO(523Hz)、高音DO(1046Hz)的计数值。
T=65536-N=65536-fi÷2÷fr=65536-1000000÷2÷fr=65536-500000/fr
低音DO的T=65536-500000/262=63627
中音DO的T=65536-500000/523=64580
高音DO的T=65536-500000/1046=65059
本设计所使用的单片机是AT89C51单片机,晶体振荡频率为12MHz,机器频率为1MHz,工作在定时/计数1下,改变计数值TH0及TL0以产生不同频率的方法产生不同音符。
以下表2.1是C调各音符频率与计数器T的对照表。
表2.1C调各音符频率与计数器T的对照表
音符
频率
T值
音符
频率
T值
低1D0
262
63628
#4FA#
740
64860
#1D0#
277
63731
中5SO
784
64898
低2RE
294
63835
#5SO#
831
4934
#2RE#
311
63928
中6LA
880
64968
低3MI
330
64021
中6
932
64994
低4FA
349
64103
中7SI
988
65030
#4FA#
370
64185
高1D0
1046
65058
低5SO
392
64260
#1D0#
1109
65085
#5SO#
415
64331
高2RE
1175
65110
低6LA
440
64400
#2RE#
1245
65134
#6
466
64463
高3MI
1318
65157
低7SI
494
64524
高4FI
1397
65178
中1DO
523
64580
#4FA#
1480
65198
#1DO#
554
64633
高5SO
1568
65217
中2RE
587
64684
#5SO
1661
65235
#2RE#
622
64732
高6LA
1760
65252
中3MI
659
64777
#6
1865
65268
中4FA
698
64820
高7SI
1967
65283
除了音符以外,节拍也是音乐的关键组成部分。
节拍其实就是音持续时间的长短,在单片机系统中可通过延时来实现。
如果1/4拍的延时时间是0.4秒的话,则1拍的延时时间就是1.6秒,所以只要知道1/4拍的延时时间,那其他节拍的延时时间就是它的倍数。
下表2.2是1/4拍和1/8拍的延时时间的设定。
表2.21/4拍和1/8拍的延时时间的设定
曲调值(1/4节拍)
延时DELAY
曲调值(1/8节拍)
延时DELAY
调4/4
125ms
调4/4
62ms
调3/4
187ms
调3/4
94ms
调2/4
250ms
调2/4
125ms
在设计中需要播放音乐,这时在程序设计中必须考虑到音调和节拍的设置,才能够形成自己所需要的音乐。
第三章系统硬件电路的设计
我根据设计的思路设计出硬件电路,整个硬件电路部分是由单片机最小电路作为控制电路,与独立键盘、控制按键电路、数码管显示电路以及蜂鸣器发音电路所组成,硬件的总体设计图如图3.1所示。
图3.1硬件原理图
3.1单片机最小电路
如图3.2所示,单片机最小电路是由晶振电路和复位电路所组成。
图3.2单片机最小电路
晶振电路:
AT89C51单片机的振荡器输入分别由引脚19(XTAL1)和引脚18(XTAL2)来完成。
只要将这两个引脚外接石英晶体和陶瓷电容,就可与CPU内部组成完整的振荡电路。
AT89C51单片机的一个机器周期含有6个状态周期,而每个状态周期为2个振荡器周期,因此一个机器周期共有12个振荡周期,如振荡器的频率为12MHz,一个振荡器周期为1/12微秒,而一个机器周期为1微秒。
复位电路:
复位电路产生复位信号,复位信号送入RST后还要送至片内的施密特触发器,由片内复位电路在每个机器周器的S5P2时刻对触发器输出采样信号,然后由内部复位电路产生复位操作所要的信号。
一般的复位电路可分为上电自动复位和按键复位,我们在此选用的是按键复位。
上电自动复位原理:
RST引脚是复位信号的输入端,只要高电平的复位信号持续两个机器周期以上的有效时间,就可以使单片机上电复位。
上电自动复位是通过电容充电实现的,上电瞬间,RST端电位与VCC相同,随充电电流的减少,RST的电位逐渐下降,直到复位信号无效。
按键复位在此不在作过多的介绍,其原理和上电复位是相同的。
但其采用的是脉冲复位电路和电平复位电路两种。
3.2独立键盘、控制按键电路
独立键盘,控制按键电路如图3.2所示。
图3.2独立键盘、控制按键电路
独立键盘K1—K7按键接在单片机的P2.1—P2.7口,通过按下K1—K7任意一个按键给相应的P2.1—P2.7口一个低电平的信号,向单片机发出指令。
K1对应的是DO音,K2对应的是RE音,K3对应的是MI音,依此类推。
控制按键接在单片机的P3.1,P3.2和P3.3口。
其中,P3
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 51 单片机 脉冲 触发 电子 音调 设计