【基于单片机的遥控电子琴的设计与实现(论文)11000字】_第1页
【基于单片机的遥控电子琴的设计与实现(论文)11000字】_第2页
【基于单片机的遥控电子琴的设计与实现(论文)11000字】_第3页
【基于单片机的遥控电子琴的设计与实现(论文)11000字】_第4页
【基于单片机的遥控电子琴的设计与实现(论文)11000字】_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于单片机的遥控电子琴的设计与实现目录TOC\o"1-2"\h\z\u1.引言 11.1选题的背景 11.2研究的意义 22.系统总体方案设计 22.1功能要求 22.2设计思路 22.3总体设计框圖 33系统硬件设计 43.1概述 43.2主控模块设计 43.3键盘模块设计 53.4扬声器模块设计 63.5数碼管显示电路 63.6红外遥控模块设计 63.6.3红外信号接受电路 74.系统软件设计 84.1主程序设计 84.2播放一个音调值的设计 124.3播放一首歌曲的流程圖 124.4接受红外遥控信号的设计 135.系统安装与调试 145.1系统的安装步骤 145.2系统的调试 156.结语 15参考文献 15摘要:本论文较为简单的介绍了遥控电子琴的设计原理,在文中给出来STC89C52作为整个设计中最为重要的地位。以简单电子琴为基础添加了红外遥控,在本文中也详细介绍了如何利用红外发射装着和红外接受装置可以在相隔甚远的地方也可以控制的原理。并且在遙控电子琴上添加了音樂盒的设计,同时可以通过按键来控制音樂的切換和播放或者暫停。关键词:电子琴无线遥控STC89C521.引言伴随着现如今各种技术与社会科学的飞速发展,人们对当下的生活品质有了更为细致化的需求,为了增加人们对生活的体验,以便捷人们的生活,所以对各种电子产品、家用电器的自动化控制的要求也是在逐步提高。随着电子技术的发展,如何提高电子技术在生活中普遍应用以便于提供人们在闲暇时期额外的一点乐趣,现代的电子技术与古典音乐的结合在一直进行着融合,由此而诞生的遥控电子琴系统,因其体积较小,携带较为便利,经济适用较好,是一般的家庭都可以承受的经济支出。而且电子琴操作简单,可以使得人们快速提高电子琴的普及率,并且在电子琴的基础上添加了遥控器的设计。1.1选题的背景伴随着现如今社会的发展和现代人生活水平的提升,在人们生活和工作中,住宅的安全防护、该电子键盘基于STC89C52单片机作为其基本控制芯片。在选择喇叭时,选择了功能强大的LM386放大器,再加上扬声器的组合,最常用的蜂鸣器被丢弃。此选项的目的是因为声音质量比使用简单的蜂鸣器要好得多,T0与51微控制器限时器的结合可以有几个不同的频率脉冲,从而产生许多不同的频率音符。功能键盘使用通用键开关,具有获取I0端口控制器和微控制器的关键状态,以便通过更改和暂停状态来实现歌曲的来回切换。此外在对红外接受系统上采用了红外一体接受头VS1838接受来自红外遥控发出的信号,通过51单片机的外部中断INT0来进行对红外信号的解碼,从而来接受红外遥控进行的远程无线控制。显示设备使用单个共阳极数字通道,51微控制器的P0端口用于提供显示器所需的数字信号,可通过查看数字显示频道上显示的数字来查看当前正在播放的歌曲的信号。在此设计中,最重要的是使用板上的功能键剪切和暂停上一首和下一首歌曲,或者使用红外遥控器上的按钮控制歌曲选择,然后由单片机发送歌曲选择方波频率信号,经由功率芯片放大器到扬声器推到输出不同的频率,在同一时间,正在播放的数碼管显示的歌曲数量。随着当今人类社会的发展,社会越来越重视感知和听觉的感知。掌心大的电子钢琴可以带回过去的美好生活的回忆,沉浸在现在的有趣生活中,并且在演奏时希望将来有更好的生活,从而增强了社会的精神和文化意识。1.2研究的意义首先作为一名电子信息科学与技术专业的学生,制作电子琴和遥控器的组合不为是一个很好的方式去检验我们对所学知识的一种好的检验。在制作的过程中所包含的知识点基本包含了模拟电路,数字电路,电路分析技术,单片机基础及接口技术等专业课的程的基本章节。其次,单个微型计算机是随着大规模集成技术的发展而开发出来衍生的产品。其中包括第四代电子计算机。具有效率较高,体积较小,成本较低,稳定性较强,适用范围较广等特点。这些应用程序可能会导致传统的监控技术从基层转变。因此,基于单片机红外遥控的开发与实现已成为高科技发展的主要课题。接着红外遥控器是一种在如今的家用电气和各种仪表仪器种被大量广泛应用,在了解其发射和接受的编碼脉冲信号之后,结合集成度较高的51单片机,一起组成了体积较小、质量较轻的红外遥控器。用此遥控器控制另一个设备的数碼管显示和声音的输出。最后,电子琴在现代音乐中也发挥着举足轻重的作用,单片机具有更为强大的控制能力和更为流畅的编程操作。一首音乐由各种音阶组成,每个音节以不同的频率印刷。我们可以将音乐的音调和音节转换成可以传输信息的频率,然后通过播放器播放这些频。2.系统总体方案设计为了能准确的实现遥控电子琴的设计,对遥控电子琴设计中所需要的功能与设计思路进行讨论。2.1功能要求设计并制作一个功能相对稳定,外观相对简单的电子琴,基本要求有:功能一:使用TH0和TL0两个定时器,通过控制定时器来发出所需要的音调。功能二:根据对音调和节拍的控制达到输出一首歌曲的目的。功能三:数碼管可以显示当前输出的音调和歌曲。功能四:可以通过控制电子琴模块上面的按键控制下一首音乐,上一首音乐和控制暂停和播放以及电子琴和音乐盒之间的切换。功能五:可以通过红外遥控器控制电子琴发出对应的高中低音,电子琴和音乐盒之间的切换,并控制音乐盒切换到上一首和下一首歌曲,暂停与播放和按下数字按键可以直接跳转到与数字相对应的歌曲。2.2设计思路 基于STC89C51单片机设计远程电子琴。键盘模块上有5个键,分别是复位按键,音乐盒和电子琴切换按键,控制暂停与播放的按键,控制切换上一曲以及下一曲的按键等。同时具备有红外遥控的无线控制功能。扬声器是由功放LM386芯片来驱动并切可以根据从单片机的引脚来发出声音信号来发出声音。数字管则可以显示正在播放歌曲的序列号。 一首音乐是以不同的音阶来组成,不一样的音调以对应于不一样的频率,所以我们可以通过将这些不同频率的音调与节拍对应起来就可以组成我们所需要的音乐。对于51单片机而言产生不同的频率只需要通过控制定时计数器TH0和TL0即可达到所需要的效果。2.2.1电源选择方案方案一:本系统所使用的是5VUSB电源。这种电源具有更为稳定的电流和相对适应的电压输出性能。它可以用手机的充电器,计算机的USB端口,移动电源等来进行支持。方案二:采用比较方便更换的干电池。经过系统变压处理后,将电流供给遥控电子琴并且干电池也存在这便于购买和价格相对便宜等优点。但干电池的电容量较低,还存在这可能会漏液损害整个系统的危险,并且过多的使用会导致环境进一步恶化。在上述两个方案中,方案二不可取,方案一经实验更为便捷、性能好,而且所需原件价格便宜,所以方案一可取。2.2.2显示器选择方案方案一:LED数字管用作系统内容的显示端,并且LED结构设计有共阳极。该组件的串行输入驱动器的公共阴极必须连接到系统微控制器的串行端口移位寄存器。而且控制该组件所需的代碼更少,适合编写显示器。如果在此设计中将此元素用作显示屏,则成本较低且显示内容非常直观。方案二:该设计使用LCD1602LCD屏幕的电子组件,拉伯数字和英文字母都能适当的显示在屏幕上,在科技的推动下半导体技术有了很大的发展。但是也存在着编写较为困难,显示较少的内容所需要编写的代碼较多,使用此元件作为显示模块性价比较低。在两种方案中,数碼管可以显示的内容较多,但是数碼管显示的工作内容简单、功耗大;系统采用LED数碼管,该元器件在电压低、低功耗的条件下,显示较为清晰。在本系统中所需要显示的东西比较少,一位共阳数碼管足够显示。2.2.3控制模块的选择方案方案一:如果采用DSP作为系统控制器。DSP(数字信号处理器)是一种特殊的微处理器,它是一种可以处理大量信号的设备。DSP对元器件值的容差并不敏感感,不受外界温度和环境等外部因素的影响,更便于集成,可以复用时分和共享处理器,并可以轻松调整处理器系数以实现此系统的自适应。可以以非常低的电量来使用信号等优势。然而,DSP硬件电路更复杂并且相对昂贵。数字系统是通过功能强大的有源设备来组成,无源设备是不可信任。方案二:另一种是通过单片来作为系统的主控芯片。单片机具有较高的可靠性,成本效益较低,所需电压较低,功耗较低等优点,并且得到了当今社会迅速发展和广泛推广。并且单片机具有更为强大的算术运算能力,灵活的软件编程和更为广阔的自由度。可与用于通过软件程序实现各种各样的逻辑功能,比如计时器和计数器,可以作用于计时和计数,同时具有功耗较低,体积较小,成人计数和成本更低等多方面的优点。。通过对上述两种方案在实用性,方便性和设计成本等方面的演示和比较,选择了STC89C52单片机作为音乐盒设计的中央处理单元。2.2.4红外接受头的选择方案方案一:采用红外接受管是一个红外接受管,他的作用仅仅只是检测红外信号,他外部只有两个引脚,所以内部不存在集成电路,所以在使用的时候需要自行设计较为适合当前使用的电路。方案二:采用红外接受器1838的内部包含有红外检测二极管,限幅器和积分电路以及放大器还有带通滤波器等一些与放大电路想过的元器件。红外检测二极管不仅仅可以检测各种不同频率的红外信号,还可以将这些信号运送到限制器以及放大器之中,限制器可以使得脉冲的幅度在一个固定的频率之中进行浮动。而交流电进入到了带通滤波器之中,带通滤波器可以使频率在30KHZ到60KHZ之间的负载波通过,在通过解调电路以及积分电路最终进入到了比较器之中,比较器可以通过输出高低电平来还原发射段开始发射的信号波形。通过以上两种方案的比较,因为红外接受1838中自带有放大路等一系列对红外信号进行的各种操作,相比于红外接受管在设计上更为简单。所以选择了1383作为接受头。2.3总体设计框圖单片一共分为6个部分,分别为主要储存代碼的单片机模块,可以与人进行互动的按键模块;远程交互的红外接受模块;提供能量的电源模块;显示信息的数碼管模块;和使得声音放大的功法模块。总体设计框圖如圖1所示。单片机最小系统数碼管模块单片机最小系统数碼管模块按键模块功放模块电源模块红外接收模块圖1总体设计布局3系统硬件设计3.1概述远程遥控电子琴的设计是通过以STC89C51单片机为核心,并连接不同的电阻,电容,晶体振荡器等一系列的元器件共同组成单片机系统。一个12MHZ时钟电路中可以使用51个单片机,使用定时器/计数器T0,在此系统种的工作模式为1,通过更改计数值TH0和TL0的数值,以达到产生所需要的不同频率脉冲信号目的。键盘模块上有5个按钮,分别是:重置按钮,音乐盒和键盘切换按钮,用于控制暂停歌曲和播放歌曲的按钮,用于调节在上一首歌曲和下一首歌曲切换的按键,等等。通过按下重置按钮,可以激活重置电路,从而使远程控制电子键盘再次处于活动状态。此外电子键盘模块还连接到VS1838一体式红外接收器,此接收器是用来接收从红外遥控器传输过来的红外信号,并进一步控制电子键盘模块的输出部分分为两部分。第一部分是声音输出部分,它是从微控制器的I/O端口之一以一定频率输出的声音频率脉冲,但是如果此音频脉冲直接发送到扬声器,则不会达到产生特定声音的目的。是的,因为它并没有提供足够的驱动力。所以为了给予它足够的驱动能力,增加了一个音频放大器电路。在本设计中的电子键盘使用的是LM385美国国家半导体电子音频放大器来获得相对应音频功率,并通过扬声器来产生目标所需要的音调。第二个部分是数字管显示的部分,最后通过选择数字管阳极来显示它现在需要显示的东西。3.2主控模块设计3.2.1STC芯片的简介STC89C51是在市场上使用最为广泛的单片机芯片。STC89C51是一款电压所需电压较低的芯片,系统中具有闪存程序存储器的8位CPU。该芯片具有可读的程序备忘录,有8k闪存响应,并且具有256个随机的数据存储器。这些单片机通常使用的是Atmel易失性和高密度的存储技术,与世界上规范标准的MCS-51指令系统相兼容,并且它具有一个8位的中央处理中心和Flash存储组件。功能更为强大的STC89C52单片机可在许多不同的系统之中,可以在诸多控制系统市场中提供许多不同的服务.STC89C52芯片一共有40个引脚分布在芯片足有两边,32个双向输入/输出(I/O)外部端口主要分为四个部分,在其中包含这2个外部中断和3个16位可编程时间的计数器,以及2个全双工串行通讯端口,此外还有2个读写端口。STC89C52一共具有三种不同的包装形式:PDIP,PQFP/TQFP和PLCC,以此满足各种不同产品的需求。3.2.2STC89C52单片机最小系统最小的单片机系统是单片机中最为简单也是最为常见的系统,所有的最小系统都是需要晶体振荡器电路,单片机和复位电路这三个部分。尽管此结构非常简单,但该软件仍可以实现可行的系统环境。3.2.3单片机的晶振电路与复位电路设计单片机的性能和性价比是当下最适合做硬件系统芯片的核心元器件,在本设计中所使用的单片机芯片是STC89C52。这两个电路可以使芯片正常工作。单芯片STC微型计算机将使刻录程序更加容易,并且不会产生外界噪音。这两个电路的额外工作可以使系统完整和完善。晶振电路如圖2所示 STC89C51的各种性能和性价比都是当下选择硬件系统核心部件最好的选择,此芯片中有相互工作的晶振电路和复位电路,这两个电路相互配合可以使芯片正常工作。51单片机的烧入相比于其他的芯片较为简单,而且正因如此使得此芯片可的抗外界干扰能力更强。复位电路如圖3所示。 圖2晶振电路 圖3复位电路复位电路在51单片机上有非常重要的用处。这就像是重启一台计算机一样。一旦某一计算机在使用过程中突然崩溃了,只要按下自带的重新启动按钮,计算机内部的程序就会由工作状态中重新到了初始状态。这也适用于单片机。当单片机遇到各种内部或外部问题时,可以通过按复位按钮将单片机恢复到初始状态,以重新开始操作。复位电路包括电容器,电阻器和极性按钮。电容器的电压不可以突然发生改变以实现整个系统的正常启动。在激活系统之后,微控制器的RESETPIN将提供高电平,此电路的持续时间是由整个电路的RC值来确定。常规的单片机类型的RESETPIN通过遇到两个以上得发动机周期高电平以此来使整个电路进行复位,这样相对应的RC值的组合用来达到复位控制的目的。在单片机系统中,晶体振荡器电路使系统提供可以正常使用的信号。晶体振荡器的电路类似于普通的振荡电路,可以将正弦波信号提供给微控制器系统。晶体振荡器电路主要为整个系统提供最重要的时钟信号。在这种设计中,可以使用时钟信号发出声音。晶体振荡器电路是由两个相同的电容器和一个常见的晶体振荡器来组成。在此处的电容器作用就是帮助晶体振荡器使得整个电路更容易起振,较为常见的范围在15-33PF之间。3.2.4外部电路设计因为STC89C52P0端口是一个开放通道输出,所以在此设计中将10k排除项添加到P0端口,因此P0端口可以像其他任何I/O端口一样正常使用。3.3键盘模块设计键盘是人与微控制器之间最重要的交互模块。首先,单片机中最常用的键盘是独立键盘和矩阵键盘。独立的键盘硬件设计相对简单,程序设计也不复杂。它通常用于硬件电路不需要很多按键的电路中。在硬件设计和软编程方面,矩阵键盘比其键更麻烦。但是它占用的端口较少,因此矩阵键盘更适合用于多键电路。第二个是小故障现象,无论是单个键还是矩阵键,都应消除。这里使用延迟扫描方法,并且延迟方法的原理非常简单:“毛刺”脉冲的持续时间比被抑制的手指的持续时间短,因此,当单片机检测到脉冲时,它将等待一段时间,然后检查一下状态可以维持,如果原来的状态维持,这关键是真的,否则这是假的。在此设计中,使用的按钮数量很少,只有四个按钮,因此选择了独立按钮模式。3.4扬声器模块设计LM386是一款工具放大器,具有低功耗,大电压范围,可调节的利润和很少的外部组件。为了可以最大程度地减少外部组件的个数,所以内部电压增益为20。可以在1和8引脚之间连接一个可以控制大小的电阻器或电容器,并且可以随意选择所需的增益值。由于可以使用扬声器,因此需要电流较大,但单片机本身的电流是相对较小,所以LM386应加入以增加由I/O。创建在这部分电路中的电流,也被添加的电位计,在此设计中可以通过旋转此电位器来调节声级,以此来使整个设计更加人性化。扬声器模块设计如圖4所示。圖4扬声器模块3.5数碼管显示电路LED数字灯管是相当便宜且容易的组件。通过将相应的电流插入不同的引脚,可以实现显示信息的目的。LED数字管由八个发光二极管组成,二极管分别是由字母a,b,c,d,e,f,g和dp来表示的。当在这个数碼管的相对应得部分上施加适当的电压时,该特定部分将发光并形成可见字。通常,LED数碼管具有静态和动态两种显示模式。静态控制显示器所具有特点是显示的内容稳定,亮度高,不闪烁,并且编程非常容易,但包含来自微控制器的I/O口拥有更多资源;动态控制显示器的特性与静态显示器一样不稳定,并且编程更加复杂,但是与静态显示器相比,它具有更少的I/O资源和更低的功耗。由于在此设计中使用数字管进行显示,因此静态显示更易于选择。3.6红外遥控模块设计红外遥控器广泛用于家庭中的所有类型的电器,并且其外观为市场上的所有类型的电器提供了很多便利。现如今,最为常用的红外遥控系统通常是由两部分组成得:发射和接收。红外接收器最重要的部分是红外接收器管,其是一种类型的光敏二极管构成。在实际应用中,可以通过增加红外二极管的反向偏置电压来使用它,并且只有在电路中使用红外接收二极管时,副作用才能达到相当高的灵敏度。3.6.1红外线原理(1)红外光可以按照波长范围分成近红外光、中红外光和远红外光以及极红外光共四类。(2)红外遥控器使用得是近红外光来发送控制的命令,其波长是在0.76〜1.5um之间。(3)之所以使用近红外光作为远程光源,是因为目前,光与来自红外发射器和红外接收器之间的光之间的波长在0.8〜0.94um之间,可以在此范围内获取。更高的传输效率和更准确的消息传输。3.6.2红外通信标准1993年,成立了红外数据协会(IrDA),参与会议的有因特尔以及惠普等的约20多家公司,它们共同通过了成立协议。在现代化的社会所拥有的通信方式的种类也是多种多样的,在此设计中主要是用红外线进行学习设计,并且他主要传输信息的方式是根据所接受数据的脉冲波形进行处理的,抓哟是让波形进行编碼解碼工作,数据就而可以用这种工作方式来进行传输解碼,然后单片机就可以依据指令进行操作。红外串行的规则日益完整规范,现在有了三个最为基本的协议和规范,这其中就有对物理层链路的规范,还有两个链路的访问以及链路的管理协议。3.6.2红外信号发射设备红外发射器设备主要包括的是红外发射器电路,键盘电路和红外编碼芯片以及电源。通常情况下,为了可以更好地传输信号,基带的二进制信号最后会被调制为突发信号,并且这个信号可以通过红外发送器管来发送到接收设备。通常情况下使用的是两种调制方法:脉冲宽度调制,其取決于实现信号调制的脉冲宽度;以及脉冲定時调制,其取決于實現信號调制的脉冲序列之间的时间间隔。在同一远程控制电路中,通常需要完成不同的远程控制功能或区分不同类型的机器。这样,必须以特定的编碼顺序发送信号,并且将根据芯片或电路编碼来进行编碼。为了使传输数据的效率得到提升和传输的距离得到增强,提高整個系統的抗干扰能力,红外信号会被调制在38KHZ的载波之后才会将其发射。载波的佔空比大概为1/3。红外传输系统的数据包含着引导碼、用户碼和数据碼以及数据反碼,编碼总共占32位。数据反碼使数据碼反相后得到的编碼,当数据传输之后可以用来对数据进行纠错。如圖5所示。圖5红外遥控数据碼3.6.3红外信号接受电路红外接收器电路是在所有红外远程控制系统中检测命令信号的部分。通过1838集成的红外接收器头,可以完成所有工作,从红外接收器到根据TTL电平信号输出。VS1838上直接可以接收,放大和解调接受到的红外信号。之后,接收到的信号可以再次转发给单片机,单片机通过内部存储的程序选择接收到的信号,最后驱动相应的外部设备执行相应的动作。4.系统软件设计4.1主程序设计4.1.1主程序流程圖本系统的软件流程圖为圖6所示,在程序开始运行后首先判断红外遥控器或板子上的“暂停播放”键是否又被按下。若是当前状态是暂停,此按键按下后,就会变为播放,数字管会将显示目前所需要的歌曲序列号同时开始播放所需要的音乐;若是当前状态是播放按下后就变为暂停。接下来判断红外遥控器或板子上的“上一曲”是否被按下,若是被按下则把当前歌曲变为上一首歌曲,立即更新数碼管显示的数字。然后判断红外遥控器或板子上的“下一曲”是否被按下,若是被按下则把当前歌曲变为下一首歌曲,同时更新数碼管。接着判断红外遥控器或者是板子上的“电子琴音乐盒切换”按键,若当前是电子琴模式则切换为音乐盒模式,反正同理。最后是判断红外遥控器是否按下了数字按钮,若是在电子琴模式下就会发出相对应的音调;若是在音乐盒模式下,歌曲将会切换到与编号对应的歌曲,并且更新数碼管显示,然后开始新音乐。最后再一次进入最前面对按键进行判断的部分。

是是是否结束遥控的数字键是否被按下是播放上一曲切换播放状态(开始和暂停)播放下一曲板子或遥控的播放暂停键是否被按下开始定时器初始化否板子或遥控的上一曲键是否被按下否板子或遥控的下一曲键是否被按下播放对应歌曲是圖6程序流程圖4.1.2主程序代碼设计voidmain(){ uchartemp; ExtInit(); //外部中断初始化 TimerInit(); //定时器初始化 gSong=1; //上电默认第一首歌 gPlayStatus=0; //上电默认的状态是暂停状态 while(1) { if(gPlayStatus==1) //如果是处于播放状态,则判断是当前哪一首歌曲需要播放 { switch(gSong) { case1:PlayMusic(Music1,sizeof(Music1)); break; default: break; } } //开始播放 if((Key1_P==0)||(gRedVal==0x43)) { gRedVal=0; //清除红外遥控的按键记录内容 gPlayStatus=1; //播放状态改为1,即播放 DelayMs(10); //消除按键按下的抖动 while(!Key1_P); //等待按键释放 DelayMs(10); //消除按键松开的抖动 } //上一曲 if((Key2_P==0)||(gRedVal==0x44)) { gRedVal=0; //清除红外遥控的按键记录内容 … gSong--; //使目前播第几首歌的变量gSong减1,即切到上一曲 if(gSong==0) //如果gSong为0,说明到前面的尽头了,则转为最后一首 gSong=SONG; gPlayStatus=1; //把播放状态改为1,即播放 } //下一曲 if((Key3_P==0)||(gRedVal==0x40)) { gRedVal=0; //清除红外遥控的按键记录内容 … gSong++; //使目前播第几首歌的变量gSong加1,即切到下一曲 if(gSong>SONG) //如果gSong为SONG,说明到后面的尽头了,则转为第一首 gSong=1; gPlayStatus=1; //把播放状态改为1,即播放 } //切换模式 if((Key4_P==0)||(gRedVal==0x00)) { uintqtone1; … while(Ele) { //数字键调节 qtone1=EleNumKeyScanf(); qtone2=EleToneKeyScanf(); if(temp<8) { qtone=qtone1+qtone2; PlayEleTone(qtone); } if((Key4_P==0)||(gRedVal==0x00)) { gRedVal=0; DelayMs(10); while(!Key4_P0); DelayMs(10); gPlayStatus=0; Ele=0; } } }}4.2播放一个音调值的设计4.2.1播放一个音调值的流程圖播放一个音调的流程圖如圖7所示。首先,根据要播放的音调值在微控制器计时器上设置初始值,然后启动计时器。计时器启动后,它将开始播放需要播放的相应音调,然后延迟声音。延迟时间到期后,计时器将停止并且播放将结束。开始开始关闭定时器延时该音调对应的节拍时间启动定时器根据该音调值给单片机定时器赋初值结束圖7播放一个音调值的流程圖4.2.2播放一个音调值的程序设计TH0=ArrTH0[tone]; //装入定时器TH0的初值TL0=ArrTL0[tone]; //装入定时器TL0的初值4.3播放一首歌曲的流程圖4.3.1播放一首歌曲的流程圖播放一首歌曲的流程圖如圖8所示。首先,数字管将根据歌曲标签显示编号,然后确定是否播放了歌曲,否则,将播放下一个音调,并在播放完所有乐曲后关闭数字管显示。。

结束结束歌曲播放完成?是否关闭数碼管显示播放下一个音调数碼管显示歌曲编号开始圖8播放一首歌曲的流程圖4.3.2播放一个音调值的流程圖inti; gTone=tone; //将音调值赋给全局变量gTone TH0=ArrTH0[tone]; //装入定时器TH0的初值 TL0=ArrTL0[tone]; //装入定时器TL0的初值 TR0=1; //启动定时器 for(i=0;i<beat;i++) { DelayMs(200); } TR0=0; 4.4接受红外遥控信号的设计4.4.1接受红外遥控信号的流程圖接收红外遥控信号的流程圖如圖9所示。红外遥控器每发送一次按键的数据,首先,我们需要发送9ms的导频级和4.5ms的高级导频碼,红外遥控器的接收头先把低电平的信号传递到单片机上,然后切换到微控制器的内部中断0,然后微控制器进入中断服务功能。在这之后关闭中断功能,避免后面接受数据的过程中再一次触发中断函数。接着是等待引导碼的结束,然后是接收四个字节的数据,其中的字节1和2都是用户碼,字节3是数据碼,字节4是数据反碼。在四个字节数据当中,字节3的数据碼才是我们真正所需要的,根据不同的按键会从红外发射头发送不同的数据碼在被红外接受头发送到单片机,于是需要将字节3的数据碼保存起来,方便之后程序对不同的按键做出不同处理。这样就已经完成了一个对红外遥控器按键接收处理,单片机可以重新开始绘圖过程,随时准备再一次接收按键数据。开始开始结束读取用户碼1等待引导碼结束关闭中断功能,避免接收数据过程被打断读取数据碼触发外部中断0读取用户碼2读取数据反碼恢复中断功能圖9接收红外遥控信号的流程圖4.4.3接受红外遥控信号的代碼ucharNumKeyScanf(){ if(gRedVal==0x0C) //数字键1 return1; … return0;}5.系统安装与调试5.1系统的安装步骤(1)检查元器件在进行焊接元器件的时候,首先要核对元器件的种类和筛选。在本设计中主要用到的元器件主要有:STC89C52微机单元,开关,电源,电阻器,玻璃振荡器,电容器,开关,扬声器,红外遥控器,数字管,功率放大器芯片等。之后再根据实验所需进行性能的筛选。根据设计原理圖在电路板上对各个元器件进行有规律的放置,放置后进行检查,确保正确后方可使用零件和焊件,从而避免了焊错。(2)元器件的放置与焊接各个元器件的摆放应

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论