1、共页第页摘要随着社会的发展进步,音乐逐渐成为我们生活中很重要的一部分,有人曾说喜欢音乐的人不会向恶。我们都会抽空欣赏世界名曲,作为对精神的洗礼。本论文设计一个基于单片机的简易电子琴。我们对于电子琴如何实现其功能,如音色选择、自动放音功能等等也很好奇。电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本文的主要内容是用STC89C51单片机为核心控制元件,设计一个电子琴。以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有12个按键和一
2、个扬声器。本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有一定的实用和参考价值。关键词STC89C51,电子琴,数码管共页第页ABSTRACTWITHTHEDEVELOPMENTANDPROGRESSOFSOCIETY,MUSICHASBECOMEANIMPORTANTPARTOFLIFE,ITWASSAIDTHATPEOPLEDONOTLIKETHEMUSICTOTHEEVILWEWILLFINDTIMETOENJOYTHEWORLDMUSIC,ASTHEBAPTISMOFTHESPIRITTHISTHESISDEVELOPEDASIMPLEMICROCO
3、NTROLLERBASEDELECTRONICKEYBOARDELECTRONICORGANISAMODERNELECTRONICMUSICTECHNOLOGYANDTHEPRODUCTISANEWTYPEOFKEYBOARDINSTRUMENTSITMODERNMUSICPLAYEDANIMPORTANTROLEINSINGLECHIPISAPOWERFULCONTROLFUNCTIONSANDFLEXIBLEPROGRAMMINGCHARACTERISTICS,ITHASCONVERGEDWITHMODERNPEOPLESLIVES,BECOMEANIRREPLACEABLEPARTTHE
4、MAINCONTENTISSTC89C51CONTROLOFTHECORECOMPONENTS,DESIGNOFANELECTRONICORGAN,SINGLECHIPASAHOSTTOTHECORE,WITHTHEKEYBOARD,SPEAKERSANDOTHERCOREMODULESMAINCONTROLMODULE,INTHEMAINCONTROLMODULEHAS16KEYSANDSPEAKERSSTABILITYOFTHESYSTEM,ITSADVANTAGESARESIMPLEHARDWARECIRCUITS,SOFTWAREFUNCTIONS,CONTROLSYSTEMRELIA
5、BILITY,HIGHCOSTPERFORMANCEANDHAVECERTAINPRACTICALANDREFERENCEVALUEKEYWORDSSTC89C51,ELECTRONICORGAN,LEDDISPLAY共页第页目录摘要1ABSTRACT2目录3第一章绪论511电子琴设计的背景及意义512电子琴设计的目标513方案的比较和选择6第二章硬件设计及说明621系统组成及总体框图622元件简介7221STC89C517222901310223LED数码管1123各功能模块原理图12231STC89C51模块电路原理图12232键盘扫描模块电路原理图13233数码管显示模块电路原理图132
6、34音频处理模块电路原理图14第三章软件设计1431音乐相关知识1432如何用单片机产生音频脉冲1433系统总体功能流程图15第四章系统调试1541硬件调试1542软件调试16第五章课程设计总结以及心得体会16共页第页致谢17参考文献18附录A电路图19附录CC语言源程序21共页第页第一章绪论11电子琴设计的背景及意义随着当代科学技术的发展,电子产品在人们的日常生活中占据着越来越重要的地位。电子琴作为其中的一个典型代表,是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部
7、分。因此,我们选择了简易电子琴这个题目来制作,因为它不仅能够提高我的实践动手能力,还与实际生活有着紧密地联系。单片机是一门实践性很强的课程,而此次课程设计依据的理论基础是单片机的相关知识。其主要目的是通过本课程的培养,启发学生的创造性思维,进一步理解数字系统的概念,掌握小型数字系统的设计方法,掌握小型数字系统的组装和调试技术,装握查阅有关资料的技能。单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。1
8、2电子琴设计的目标由于本设计主要用于人们娱乐方面,因此在设计上尽量使其安全以及简单易操作。其次,在这次设计可行性上进行分析如下1、经济可行性所谓经济可行性,即在这次设计上需要投入资金的多少,由于课程设计是提高我们的动手能力以及资金有限。因此在经济上必须能够承受,比较理想化的对于我们课程设计来说是不可行的。通过分析后,无论是在器件价格或是常见度上均是可行的。2、技术可行性技术可行性主要是分析技术条件上是否能够顺利开展并完成课程设计的主要问题,硬件、软件能否满足设计者的需要等。通过分析各种软件环境,硬件仿真环境等均已经具备。综上所述,本系统设计目标已经明确,在经济与技术上均可行,因此本系统的开发是
9、完全可行的。共页第页13方案的比较和选择方案一用可控硅制作电子琴。将220V交流电经变压器降压,再经过整流、滤波,获得135V直流电压。将单向可控硅SCR和电阻、电容组成驰张振荡器电路。但该设计方案制作成本高且复杂。方案二采用STC89C51单片机进行控制,由于其性价比高,完全满足了本作品智能化的要求,它的内部程序存储空间达到8K,使软件设计有足够的内部使用空间并且方便日后系统升级,使用方便,抗干扰性能提高。选择方案鉴于上述对比与分析,本设计采用方案二。第二章硬件设计及说明21系统组成及总体框图硬件设计的任务是根据总体设计要求,在选择的机型的基础上,具体确定系统中所要使用的元器件,设计出系统的
10、原理框图、电路原理图。该设计要实现一种由单片机控制的电子琴,单片机工作于12MHZ时钟频率,使用其定时/计数器T0,工作模式为1,改变计数值TH0和TL0可以产生不同频率的脉冲信号。该设计具有8个音节的键盘,用户可以根据乐谱在键盘上进行演奏,音乐发生器会根据用户的弹奏,通过扬声器将音乐播放出来。由于本例实现的音乐发生器是由用户通过键盘输入弹奏乐曲的,所以节拍由用户掌握,不由程序控制。用单片机产生的音频脉冲直接驱动扬声器并不能产生所要实现的音乐,因为它没有足够的驱动能力,这就需要功率放大电路。本例使用三极管9013来实现音频功放电路。图21系统结构图按键单片机STC89C51扬声器LED显示电路
11、音频功放电路共页第页22元件简介221STC89C51STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程FLASH存储器。在单芯片上,拥有灵巧的8位CPU和在系统可编程FLASH,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。具有以下标准功能8K字节FLASH,512字节RAM,32位I/O口线,看门狗定时器,内置4KBEEPROM,MAX810复位电路,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口。另外STC89X52可降至0HZ静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/
12、计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHZ,6T/12T可选。综上所述,凌阳单片机虽然性能更好,但价格比较昂贵,且本设计不需要很复杂的运算,所以本设计选用更便宜,更易用的STC89C52单片机。EA/VP31X119X218RESET9P37/RD17P36WR16P32/INT012P33/INT113P34/T014P35/T115P101P112P123P134P145P156P167P178P0039P0138P0237P0336P0435P0534P0633P0732P2021P
13、2122P2223P2324P2425P2526P2627P2728PSEN29ALE/P30P31/TXD11P30/RXD10GND20VCC40U1STC89C52图22STC89C51引脚图DIP封装单片机是美国STC公司最新推出的一种新型51内核的单片机。片内含有FLASH程序存储器、SRAM、UART、SPI、PWM等模块。(一)STC89C52主要功能、性能参数如下(1)内置标准51内核,机器周期增强型为6时钟,普通型为12时钟(2)工作频率范围040MHZ,相当于普通8051的080MHZ(3)STC89C52RC对应FLASH空间4KB(4)内部存储器(RAM512B(5)定
14、时器计数器3个16位;共页第页(6)通用异步通信口(UART)1个;(7)中断源8个;(8)有ISP在系统可编程)IAP在应用可编程,无需专用编程器仿真器;(9)通用IO口3236个;(10)工作电压3855V;(11)外形封装40脚PDIP、44脚PLCC和PQFP等。(二)STC89C52单片机的引脚说明VCC供电电压。GND接地。P0口P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,
15、此时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口输出地址的高八位。在
16、给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P30RXD(串行输入口)P31TXD(串行输出口)P32/INT0(外部中断0)P33/INT1(外部中断1)P34T0(记时器0外部输入)P35T1(记时器1外部输入)P36/WR(外部数据存储器写选通)P37
17、/RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。I/O口作为输入口时有两种工作方式,即所谓的读端口与读引脚。读端口时实际上并不从外部读入数据,而是把端口锁存器的内容读入到内部总线,经过某种运算或变换后再写回到端口锁存器。只有读端口时才真正地把外部的数据读入到内部总线。上面图中的两个三角形表示的就是输入缓冲器CPU将根据不同的指令分别发出读端口或读引脚信号以完成不同的操作。这是由硬件自动完成的,不需要我们操心,1然后再实行读引脚操作,否则就可能读入出错,为什么看上面的图,如果不对端口置1端口锁存器原来的状态有可能为0Q端为0Q为1加到场效应管栅极的信号为1,该场效应
18、管就导通对地呈现低阻抗,此时即使引脚上输入的信号为1,也会因端口的低阻抗而使信号变低使得外加的1信号读入后不一定是1。若先执行置1操作,则可以使场效应管截止引脚信号直接加到三态缓冲器中实现正确共页第页的读入,由于在输入操作时还必须附加一个准备动作,所以这类I/O口被称为准双向口。89C51的P0/P1/P2/P3口作为输入时都是准双向口。接下来让我们再看另一个问题,从图中可以看出这四个端口还有一个差别,除了P1口外P0P2P3口都还有其他的功能。RST复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地
19、位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP当/EA保
20、持低电平时,则在此期间外部程序存储器(0000HFFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2来自反向振荡器的输出。(三)STC89C52单片机最小系统最小系统包括单片机及其所需的必要的电源、时钟、复位等部件,能使单片机始终处于正常的运行状态。电源、时钟等电路是使单片机能运行的必备条件,可以将最小系统作为应用系统的核心部分,通过对其进行存储器扩展、A/D扩展等,使单片机完成较复杂的
21、功能。STC89C52是片内有ROM/EPROM的单片机,因此,这种芯片构成的最小系统简单可靠。用STC89C52单片机构成最小应用系统时,只要将单片机接上时钟电路和复位电路即可,结构如图23所示,由于集成度的限制,最小应用系统只能用作一些小型的控制单元。图23单片机最小系统原理框图1时钟电路STC89C52单片机的时钟信号通常有两种方式产生一是内部时钟方式,二是外部时钟方式。内部时钟方式如图24所示。在STC89C52单片机内部有一振荡电路,只要在单片机的XTAL118和XTAL219引脚外接石英晶体简称晶振,就构成了自激振荡器并在单片机内部产生时钟脉冲信号。图中电容C1和C2的作用是稳定频
22、率和快速起振,电容值在530PF,典型值为30PF。晶振CYS的振荡频率范围在1212MHZ间选择,典型值为12MHZ和6MHZ。时钟电路复位电路STC89C52单片机I/O口共页第页Y1110592MHZC230PFC330PF1819图24STC89C52内部时钟电路2复位电路当在STC89C52单片机的RST引脚引入高电平并保持2个机器周期时,单片机内部就执行复位操作若该引脚持续保持高电平,单片机就处于循环复位状态。复位电路通常采用上电自动复位和按钮复位两种方式。最简单的上电自动复位电路中上电自动复位是通过外部复位电路的电容充放电来实现的。只要VCC的上升时间不超过1MS,就可以实现自动
23、上电复位。除了上电复位外,有时还需要按键手动复位。本设计就是用的按键手动复位。按键手动复位有电平方式和脉冲方式两种。其中电平复位是通过RST9端与电源VCC接通而实现的。按键手动复位电路见图25。时钟频率用110592MHZ时C取10UF,R取10K。R110KC110UFS4VCC9图25STC89C52复位电路22290139013NPN外延型晶体管三极管9013是一种最常用的普通三极管。它是一种低电压,大电流,小信号的NPN型硅三极管有如下特性集电极电流ICMAX500MA集电极基极电压VCBO40V工作温度55TO150功率W0625200202主要用途开关应用射频放大低噪声放大管共页
24、第页图269013引脚图223LED数码管本次课程设计的显示电路采用LED数码管显示,LED(LIGHTEMITTINGDIODE)是一种外加电压从而流过电流并发出可见光的器件。LED是属于电流控制器件,使用时必须加限流电阻。LED有单个LED和八段LED之分,也有共阴和共阳两种。常用的七段显示器的结构如图下图所示。发光二极管的阳极连在一起的称为共阳极显示器如图B所示,阴极连在一起的称为共阴极显示器如图C所示。1位显示器由八个发光二极管组成,其中七个发光二极管AG控制七个笔画(段)的亮或暗,另一个控制一个小数点的亮和暗,这种笔画式的七段显示器能显示的字符较少,字符的开头有些失真,但控制简单,使
25、用方便。此外,要画出电路图,首先还要搞清楚他的引脚图的分布,在了解了正确的引脚图后才能进行正确的字型段码编码。才能显示出正确的数字来。(A)外形(B)共阳极C共阴极图27数码管引脚共页第页数码管使用注意事项说明(1)数码管表面不要用手触摸,不要用手去弄引角;(2)焊接温度260度;焊接时间5S(3)表面有保护膜的产品,可以在使用前撕下来。23各功能模块原理图231STC89C51模块电路原理图单片机主程序模块通过对键盘扫描程序信号的读取,在通过对应的表,取出数码管显示编码和定时器初始值以产生不同的声音信号。在这一过程中,对数码管编码是直接赋值,对声音信号则是通过中断程序进行控制。图28STC8
26、9C51模块电路原理图共页第页232键盘扫描模块电路原理图对键盘扫描电路的扫描方式有行扫描法和线反转法,在此次程序编写中,采用行扫描法,通过在P30P33上循环送出0扫描信号,P34P37输入按键上的高低电平信息给单片机,经处理程序,判断出是哪个按键按下,并送主程序以实现不同功能。S2S3S4S5S6S7S8S9S10S11S12S13P30P31P32P33P34P35P36图29键盘扫描模块电路原理图233数码管显示模块电路原理图数码管显示模块核心是共阳级数码管,通过来自单片机I/O口的电平高低来点亮和熄灭数码管上的发光二极管,通过单片机送来的数码管显示编码可以在数码管上显示数字和字符,使
27、应用人员可以很容易的理解按键按下所对应的音符。ABCDEFGDPCOMCOMVCC图210数码管显示模块电路原理图共页第页234音频处理模块电路原理图由于单片机驱动能力不够,在处理音符信号时,需加功率放大装置,所以本设计采用双9013三极管驱动。R210K90139013SPEAKERVCCSPEAKER图211音频处理模块电路原理图第三章软件设计本软件设计关键是要实现一种由单片机控制的简单音乐发生器,它由8个音节组成的的键盘,用户可以根据乐谱在键盘上进行演奏,音乐发生器会根据用户的弹奏,通过扬声器将音乐播放出来。31音乐相关知识乐音听起来有的高,有的低,这就叫音高,音高是由发音物体振动频率的
28、高低决定的,频率高声音就高,频率低声音就低,不同音商的乐音是用C、D、E、F、G、A、B表示的,这7个字母就是乐音的音名,它们一般依次唱成DO、RE、MI、FA、SO、LA、SI,这是唱曲时乐音的发音,所以叫唱名。一首音乐是由许多不同的音符组成的,而每个音符对应着不同的频率,这样就可以利用不同频率的组合,构成音乐。32如何用单片机产生音频脉冲了解音乐的一些基本知识后可知,产生不同频率的音频脉冲即能产生音乐,对于单片机而言,产生不同频率有脉冲非常方便,可以利用它的定时/计数器来产生这样的方波频率共页第页信号,因此,需要弄清楚音乐中的音符和对应的频率,以及单片机定时计数的关系。在本实验中,单片机工
29、作于12MHZ时钟频率,使用其定时/计数器T0,工作模式为1,改变计数值TH0和TL0可以产生不同频率的脉冲信号。33系统总体功能流程图该程序设计思路比较清晰既从开始到声明变量与函数再到读取按钮开关,判断是否按下,然后就是一个一个按钮的动作。其主程序流程图如下图31主程序流程图第四章系统调试电路调试是整个系统功能否实现的关键步骤,我们将整个调试过程分为两大部分硬件调试和软件调试。41硬件调试硬件调试主要是针对单片机部分进行调试。在上电前,先确保电路中不在断路或短路情况,这一工作是整个调试工作的第一步,也是非常重要的一个步骤。在这部分调试中主要使用的工具是万用表,用来完成检测电路中是否存在断路或
30、者短路情况等。注意焊点之间,确保焊点没有短接在一起,同时注意焊开始初始化定时器模式键按下次数等待音符按下播放单个音符播放内置音乐结束偶奇共页第页点的美观,确保没有开路以及短路的现象出现。在确保硬件电路正常,无异常情况断路或短路方可上电调试,上电调试的目的是检验电路是否接错,同时还要检验原理是否正确,在本次设计中,上电调试主要键盘单片机控制部分、数码管点亮部分、和音频转换电路硬件调试。1、数码管LED电路调试接通电源,随机按下按钮可以看到数码管显示数字。2、键盘单片机控制部分调试上电后,随机按动键盘可以发现各个按键对应的音正确。42软件调试调试主要方法和技巧通常一个调试程序应该具备至少四种性能跟
31、踪、断点、查看变量、更改数值。整个程序是一个主程序调用各个子程序实现功能的过程,要使主程序和整个程序都能平稳运行,各个模块的子程序的正确与平稳运行必不可少,所以在软件调试的最初阶段就是把各个子程序模块进行分别调试。第五章课程设计总结以及心得体会通过这次的单片机课程设计,我学到了不少课本上没有的知识,也锻炼了自己的动手能力,将以前学过的零散的知识串到一起。首先在课程设计刚开始的调研阶段,我学会了怎么通过各种方式查询相关的资料。通过对这些资料的学习,我大致了解了单片机的发展现状以及未来的发展趋势,认识到目前单片机方面的各种各样的发展,和它们之间的竞争。了解了单片机方面的先进技术,这些都为我的未来的
32、学习指明了方向。我的课程设计主要涉及硬件和软件两方面的内容,通过这些我的硬件和软件开发能力都获得了提高。首先硬件方面,基本了解了电子产品的开发流程和所要做的工作。并设计了一个单片机最小系统。通过开发板的设计和硬件搭建的过程,使我对52系单片机的接口有了更深层次的理解,熟悉了一些单片机常用的外围电路引脚和连接方法,如LED数码管,键盘等。在软件方面,通过串行口调试工具的开发,使我加深了封装的理解,熟悉了51系列单片机内部的寄存器和编程规则,以及如何控制外围电路。此外在学习单片机知识的时候对于这个领域有了更新更全面的认识。微型计算机的出现和大量使用将人类社会带入一个新的时代,单片微型计算机简称单片
33、机在其中扮演着十分重要的角色。虽然它没有常见的PC那样大的体积和重量,不会在办公桌或控制台上占据一个显要的位置,但它就像小小的螺丝钉一样,镶嵌在人们工作、生活中需要计算、控制、测量等智能活动的各个角落。自20世纪70年代问世以来,单片机以其体积小、可靠性高、控制功能强、使用方便、性能价格比高、容易产品化等特点,在智能仪表、机电一体化、实时控制、分布式多机系统、家用电器等各个领域得到了广泛应用,对各个行业的技术改造和产品的更新换代起着重要的推动作用,对人们生活质量的提高产生了深刻的影响。作为21世纪的工科大学生,学好单片机,一方面可以加深对计算机原理和结构的认识,另一方面也为自身在专业上的深入发
34、展构筑了一个很好的平台其重要性怎么强调都不为过。共页第页致谢这次毕业论文能够得以顺利完成,是所有曾经指导过我的老师,帮助过我的同学,一直支持着我的家人对我的帮助和鼓励的结果。我要在这里对他们表示深深的谢意首先,要特别感谢我的指导老师吕雪老师。吕老师在我毕业论文的撰写过程中,给我提供了极大的帮助和指导。从开始选题到中期修正,再到最终定稿,吕老师给我提供了许多宝贵建议。老师丰富的专业知识,严谨的治学态度,精益求精的工作作风,诲人不倦的高尚师德,朴实无华、平易近人的人格魅力对我影响深远。不仅使我树立了远大的学术目标、掌握了基本的研究方法,还使我明白了许多待人接物与为人处世的道理。其次,要感谢所有曾经
35、教我们电子信息的任课老师,老师们教会我的不仅仅是专业知识,更多的是对待学习、对待生活的态度。第三,感谢我的父母亲,谢谢你们对我的支持与鼓励再次,感谢我的室友及其他同学,因为有你们的帮助,我的论文得以顺利完成。不会忘记,大学四年里我们一起度过的欢乐时光,那些开心的日子,总是那么令人难以忘怀。最后对老师,同学和家人再次致以我最衷心的感谢正因为有了你们,我的大学才算完整,有了你们我的生活更加精彩。共页第页参考文献【1】黄鑫,马善农,赵永科基于CPLD的电子琴研究与设计J科技广场,2007【2】吴金戌,沈庆阳,郭庭吉,8051单片机实践与应用M清华大学出版社,2001【3】龙威林,杨冠声,胡山单片机应
36、用入门AT89S51和AVRM北京化学工业出版社,2008【4】张毅刚,MCS51单片机应用设计M哈尔滨工业大学出版社,2004【5】李朝青单片机原理及接口技术M北京北京航天航空大学出版色,2001【6】胡汉才单片机原理及其接口技术M北京清华大学出版社,2004【7】陈明荧8051单片机课程设计实训教材M北京清华大学出版社,2003年9月【8】徐新艳单片机原理、应用与实践M北京高等教育出版社,2005年3月【9】杨恢先,黄辉先单片机原理及应用M北京人民邮电出版社,2006【10】张虹单片机原理及应用M北京中国电力出版社,2009【11】赵亮,侯国锐单片机C语言编程与实例M北京人民邮电出版社,2
37、003【12】美ASHISHWILFREDMEETAGUPTAKARTIKBHATNAGAR著,刘永明,贺民译PHP专业项目实例开发J水利水电出版社,2003【13】DATASHEETOFSINGLECHIP433/868/915MHZTRANSCEIVERNRF903,NORDICVLSI,2002【14】FISCHERRA,LAAKONENAS,SCHULZNNAGENERALPOOLINGALGORITHMUSINGAWIRELESSAMRSYSTEMFORRESTORATIONCONFIRMATIONIEEETRANSONPOWERSYSTEMS,2001共页第页附录A电路图EA/VP
38、31X119X218RESET9RD17WR16INT012INT113T014T115P101P112P123P134P145P156P167P178P0039P0138P0237P0336P0435P0534P0633P0732P2021P2122P2223P2324P2425P2526P2627P2728PSEN29ALE/P30TXD11RXD10U1STC89C51R110KR210KC110UFC230PFC330PFY112MHZS1S2S3S4S5S6S7S8S9S10S11S12S13VCCX1X2X1X2RSTRSTP30P31P32P33P34P35P36ABCDEFGD
39、PCOMCOMABCDEFGDPVCCP30P31P32P33P34P35P3690139013SPEAKERVCCSPEAKERSPEAKER共页第页附录B仿真图共页第页附录CC语言源程序INCLUDEDEFINEUCUNSIGNEDCHARDEFINEUIUNSIGNEDINTSBITSPEAKERP12/喇叭UCA,B,M0QUSHU1BITBDATAFLAGUCCODEYINFU0XFB,0XE9,/DO0XFC,0X5C,/RE0XFC,0XC1,/MI0XFC,0XEF,/FA0XFD,0X45,/SO0XFD,0X92,/LA0XFD,0XD0,/SI0XFD,0XEE,/DO0
40、X00,0X00,/间隔UCCODESHENGRI_TONE1,1,2,1,4,3,0,/生日快乐音调1,1,2,1,5,4,0,1,1,8,6,4,3,2,0,共页第页7,7,6,4,5,4,0/0代表不发声,即停顿;数字即为音调UCCODELAOHU_TONE1,2,3,1,0,1,2,3,1,0,3,4,5,0,3,4,5,0,5,6,5,4,3,1,0,5,6,5,4,3,1,0,3,2,1,0,3,2,1,0UCCODEYISHAN_TONE1,1,5,5,0,6,6,5,0,4,4,3,3,0,2,2,1,0,5,5,4,4,0,3,3,2,0,5,5,4,4,0,3,3,2,0,1,1,5,5,0,6,6,5,0,4,4,3,3,0,2,2,1,0UCCODETAB0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X7FVOIDDELAYUIZ共页第页UIX,YFORX0X29CHECK_KEYVOIDMAINTMOD0X01TH0ATL0B共页第页ET01/打开定时器,但是未允许中断TR01P2TAB9WHILE1CHECK_KEYPLAY1VOIDTIME0INTERRUPT1TH0ATL0BSPEAKERSPEAKER