基于51单片机的电子琴开题报告
2020-05-31 20:48:18
1. 研究目的与意义(文献综述包含参考文献)
1.1选题的背景和意义:
单片微型计算机是大规模集成电路技术发展的产物,属第四代电子计算机,他具有高性能、高速度、体积小、价格低廉、稳定可靠、应用广泛的特点。它的应用必定导致传统的控制技术从根本上发生变革。因此,单片机的开发应用已成为高科技和工程领域的一项重大课题。
电子琴是箱子电子科技与音乐结合的产物。之所以受到群众们喜爱,是因为它能模拟各种乐器的音色,如笛、号、琴、颤音、和旋音等以及打击乐板音、鼓乐、沙锤等。本设计介绍一种除有普通电子琴功能外,还有不需要按琴键就能模拟电子琴自动演奏乐曲的电子琴音乐的产生和演奏电路。若与音响放大器相结合,则乐曲的音响效果会更好。 20世纪80年代中期,出现的现场可编程门阵列(FPGA)具有体系结构、逻辑单元灵活、集成度高以及适用范围广等特点,可实现大规模和超大规模的集成电路,而且编程灵活。STC89C52单片机为核心控制元件,可提高开发效率,缩短研发周期,降低研发成本,且易于进行功能扩展。
电子琴系统就是以单片机为核心部件设计的一个简易的电子琴,这只是单片机应用的一个点,由点及面,希望能更好的了解和应用单片机技术。我选单片机电子琴这个选题的目的在于通过从日常生活中的细微之处着手,将所学的理论知识与实践更好的结合起来,在设计制作电子琴的过程中,更加熟练的掌握单片机的应用,在更深刻的理解理论知识的同时锻炼提高自己的动手实践能力,使理论和实际能够相得益彰。
1.2国内外研究现状
单片机诞生于20世纪70年代末,经历了SCM、MCU、SoC三大阶段。单片机是嵌入式系统的独立发展之路,向MCU阶段发展的重要因素,就是寻求应用系统在芯片上的最大化解决;因此,专用单片机的发展自然形成了SoC化趋势。随着微电子技术、IC设计、EDA工具的发展,基于SoC的单片机应用系统设计有较大的发展。因此,对单片机的理解可以从单片微型计算机、单片微控制器延伸到单片应用系统。
目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录象机、摄象机,以及程控玩具等等,这些都离不开单片机。
单片机的技术进步反映在内部结构、功率消耗、外部电压等级以及制造工艺上。在这几方面,较为典型地说明了数字单片机的水平。在目前,用户对单片机的需要越来越多,但是,要求也越来越高。在单片机应用中,可靠性是首要因素为了扩大单片机的应用范围和领域,提高单片机自身的可靠性是一种有效方法。近年来,单片机的生产厂家在单片机设计上采用了各种提高可靠性的新技术:EFT(Ellectrical Fast Transient)技术,低噪声布线技术及驱动技术,采用低频时钟。同时单片机在目前的发展形势下还表现出可靠性及应用越来越水平高和互联网连接,所集成的部件越来越多,功耗越来越低和模拟电路结合越来越多等发展趋势。
1.3预期实现目标
(1)用键盘作出电子琴的按键,每键代表1个音符。各音符按照符合电子琴的按键顺序排列;
(2)达到电子琴的基本功能,可以用弹奏出简单的乐曲;
(3)不弹奏时,利用功能键可以播放内置音乐。
1.4.1设计思路
本设计主要研究基于STC90C52单片机的简易电子琴设计。它是以单片
机作为主控核心,键盘、电脑音响、数码管等外围器件构成;本设计硬件部分主要由最小系统,按键系统模块、数码管显示模块和发声模块组成。其软件部分主要有主程序模块、定时中断程序、定时计数程序、显示程序。
(1)最小系统:它是单片机应用系统的设计基础。它包括单片机的选择、时钟系统设计、复位电路设计等。
(2)按键系统模块:本设计采用16个按键,其中14个按键用来显示14个音调,其它2个按键可以进行功能的切换。
(3)数码管:数码管。
(4)发声模块:扬声器
本次设计首先对单片机设计简易电子琴仔细分析,接着制作硬件电路和编写软件的程序,最后进行软硬件的调试运行。并且从原理图,主要芯片,各模块的原理和各个模块的程序调试来阐述。利用单片机产生不同频率来获得我们要求的音阶,实现高、中、低共21个音符的发音和显示和音乐播放时的控制显示,并且能自动播放程序中编排的音乐,同时还有保存兵播放已按下的音符。系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠.
本系统采用AT89C52为主控芯片,因其精度较高,操作比较灵活,输入电路和输出电路由芯片来进行处理,电路的系统的稳定性高,功耗小。其中,输入电路有8个独立按键,通过按键随意按下所要表达的音符,作为电平送给主体电路,中央处理器通过识别,解码输出音符,在扬声器中发出有效的声音。由于需要显示的信息不多,显示电路未采用液晶屏显示,而是使用数码管显示电路负责显示按下的琴键所对应的键值,这样既节省了成本了,又降低了编程难度。
1.4.2单片机模块
STC89C52是一种带8K字节闪烁可编程可檫除只读存储器(FPEROM-Flash Programable and Erasable Read Only Memory )的低电压,高性能COMOS8的微处理器,俗称单片机。该器件采用ATMEL搞密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
单片机总控制电路如下图:
单片机总控制电路
1.时钟电路
STC89C52内部有一个用于构成振荡器的高增益反相放大器,引脚RXD和TXD分别是此放大器的输入端和输出端。时钟可以由内部方式产生或外部方式产生。内部方式的时钟电路在RXD和TXD引脚上外接定时元件,内部振荡器就产生自激振荡。定时元件通常采用石英晶体和电容组成的并联谐振回路。晶体振荡频率可以在1.2~12MHz之间选择,电容值在5~30pF之间选择,电容值的大小可对频率起微调的作用。
外部方式的时钟电路RXD接地,TXD接外部振荡器。对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12MHz的方波信号。片内时钟发生器把振荡频率两分频,产生一个两相时钟P1和P2,供单片机使用。
示,RXD接地,TXD接外部振荡器。对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12MHz的方波信号。片内时钟发生器把振荡频率两分频,产生一个两相时钟P1和P2,供单片机使用。
RXD接地,TXD接外部振荡器。对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12MHz的方波信号。片内时钟发生器把振荡频率两分频,产生一个两相时钟P1和P2,供单片机使用。
2.复位及复位电路
(1)复位操作
复位是单片机的初始化操作。其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需按复位键重新启动。
除PC之外,复位操作还对其他一些寄存器有影响,它们的复位状态如表一所示。
表一 一些寄存器的复位状态
寄存器 |
复位状态 |
寄存器 |
复位状态 |
PC |
0000H |
TCON |
00H |
ACC |
00H |
TL0 |
00H |
PSW |
00H |
TH0 |
00H |
SP |
07H |
TL1 |
00H |
DPTR |
0000H |
TH1 |
00H |
P0-P3 |
FFH |
SCON |
00H |
IP |
XX000000B |
SBUF |
不定 |
IE |
0X000000B |
PCON |
0XXX0000B |
TMOD |
00H |
|
|
(2)复位信号及其产生
RST引脚是复位信号的输入端。复位信号是高电平有效,其有效时间应持续24个振荡周期(即二个机器周期)以上。若使用颇率为6MHz的晶振,则复位信号持续时间应超过4us才能完成复位操作。
整个复位电路包括芯片内、外两部分。外部电路产生的复位信号(RST)送至施密特触发器,再由片内复位电路在每个机器周期的S5P2时刻对施密特触发器的输出进行采样,然后才得到内部复位操作所需要的信号。
复位操作有上电自动复位相按键手动复位两种方式。
上电自动复位是通过外部复位电路的电容充电来实现的。这样,只要电源Vcc的上升时间不超过1ms,就可以实现自动上电复位,即接通电源就成了系统的复位初始化。
按键手动复位有电平方式和脉冲方式两种。其中,按键电平复位是通过使复位端经电阻与Vcc电源接通而实现的;而按键脉冲复位则是利用RC微分电路产生的正脉冲来实现的,
电阻、电容参数适用于6MHz晶振,能保证复位信号高电平持续时间大于2个机器周期。
STC89C52具体介绍如下:
① 主电源引脚(2根)
VCC(Pin40):电源输入,接+5V电源
GND(Pin20):接地线
②外接晶振引脚(2根)
XTAL1(Pin19):片内振荡电路的输入端
XTAL2(Pin20):片内振荡电路的输出端
③控制引脚(4根)
RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。
ALE/PROG(Pin30):地址锁存允许信号
PSEN(Pin29):外部存储器读选通信号
EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。
④可编程输入/输出引脚(32根)
STC89C52单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。
PO口(Pin39~Pin32):8位双向I/O口线,名称为P0.0~P0.7
P1口(Pin1~Pin8):8位准双向I/O口线,名称为P1.0~P1.7
P2口(Pin21~Pin28):8位准双向I/O口线,名称为P2.0~P2.7
P3口(Pin10~Pin17):8位准双向I/O口线,名称为P3.0~P3.7
STC89C52主要功能如表二所示。
表二 STC89C52主要功能
主要功能特性 | |
兼容MCS51指令系统 |
8K可反复擦写Flash ROM |
32个双向I/O口 |
256x8bit内部RAM |
3个16位可编程定时/计数器中断 |
时钟频率0-24MHz |
2个串行中断 |
可编程UART串行通道 |
2个外部中断源 |
共6个中断源 |
2个读写中断口线 |
3级加密位 |
低功耗空闲和掉电模式 |
软件设置睡眠和唤醒功能 |
参考文献
[1] 彭伟.单片机C语言程序设计实训100例.电子工业出版社.2009年
[2] 吴运昌.模拟电子线路基础.广州:华南理工大学出版社,2004年
[3] 阎石.数字电子技术基础.北京:高等教育出版社,1997年
[4] 张晓丽等.数据结构与算法.北京:机械工业出版社,2002年
[5] 马忠梅ARMamp;Linux嵌入式系统教程.北京:北京航空航天大学出版社,2004年
[6] 李建忠.单片机原理及应用.西安:西安电子科技大学,2002年
[7] 韩志军等.单片机应用系统设计[M].机械工业出版社,2004
[8] 周润景等. Proteus在MCS-51amp;ARM7系统中的应用百例[M].电子工业出版社,2006
[9] 马忠梅等.单片机的C语言应用程序设计[M].北京航空航天大学出版社,2006
[10] 刘树中,孙书膺,王春平.单片机和液晶显示驱动器串行接口的实现[J].微计算机信息,2007
[11]刘兰香,张秋生.51单片机应用与开发实例[M].机械工业出版社,2005.
[12]朱清慧.PROTEUS教程:电子线路设计制版与仿真[M].清华大学出版社,2008.
[13]江思敏,姚鹏翼,胡荣等编著.Pro tel电路设计教程[M].清华大学出版社,2002.
[14] 康华光.电子技术基础[M].高等教育出版社,2008.
[15]ANALOG DEVICES.The technology of AT89C51 [EB/OL].White Paper,Sep.28,2008.
2. 研究的基本内容、问题解决措施及方案
研究内容:
根据以上设计需要,系统拟采用以下技术方案,系统的结构框图如下图所示。
图1 系统结构框图