




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目 录基于AT89S52多功能花样LED频闪音乐盒的设计与实现胡 伟渭南师范学院物理与电气工程学院07级电子信息科学与技术1班摘 要:本设计是一个基于AT89S52系列单片机的音乐盒,依据单片机技术原理,通过硬件电路制作以及软件编译,设计制作出一个多功能音乐盒。该音乐盒主要由按键电路、复位电路、时钟电路、显示电路、LED灯电路、蜂鸣器电路成。使用四个按键控制音乐盒,分别用来实现播放/暂停、上一曲、下一曲、复位功能,本音乐盒共有三首歌曲。播放歌曲时,蜂鸣器发出某个音调,与之对应的LED亮起。本设计利用KEIL编程软件对音乐盒源程序进行编程并调试,配合PROTEUS仿真软件对硬件进行仿真调试,节约了设计时间。关键字:音乐盒;AT89S52单片机; LED频闪;音乐21世纪,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。单片机应用的重要意义还在于它从根本上改变了传统的控制系统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。随着科学技术的进步和社会的发展,人类所接触的信息也在不断增加并且日益复杂。面对浩如烟海的信息,人们已经能够利用计算机等工具高效准确地对之进行处理,但要想将处理完的信息及时,清晰地传递给别人,还必须通过寻求更加卓越的显示技术来实现。单片机技术与液晶显示技术的结合,使信息传输交流向着智能可视化方向迅速发展。随着人类社会的发展,人们对视觉、听觉方面的享受提出了越来越高的要求。小小的音乐盒可以给人们带来美好的回忆,提高人们的精神文化享受。传统音乐盒多是机械型的,体积笨重,发音单调,不能实现批量生产。本文设计的音乐盒是以单片机为核心元件的电子式音乐盒,体积小,重量轻,能演奏和旋音乐,功能多,外观效果多彩,使用方便,并具有一定的商业价值。1概述本设计是以AT89S52芯片的最小系统电路为基础,外部加上放音设备和控制设备,以此来实现音乐演奏控制器的硬件电路,通过软件程序来控制单片机内部的定时器使其演奏出优美动听的音乐。用户可以按照自己的喜好选择音乐并将其转化成机器码存入单片机的存储器中。对于不同型号的单片机只需要相应的改变一下地址即可。该软、硬件系统具有很好的通用性,很高的实际使用价值,为广大的单片机和音乐爱好者提供了很好的借鉴。1.1 课题意义音乐盒的起源,可追溯至中世纪欧洲文艺复兴时期。当时为使教会的钟塔报时,而将大小的钟表装上机械装置,被称为“可发出声音的组钟”。音乐盒有着300多年的发展历史,是人类文明发展的历史见证。传统的音乐盒多是机械音乐盒,其工作原理是通过齿轮带动一个带有铁钉的铁桶转动,铁桶上的铁钉撞击铁片制成的琴键,从而发出声音。但是,机械式的音乐盒体积比较大,比较笨重,且发音单调。水、灰尘等外在因素,容易使内部金属发音条变形,从而造成发音跑调。另外,机械音乐盒放音时为了让音色稳定,必须放平不能动摇,而且价格昂贵,不能实现大批量生产。本文设计的音乐盒,是基于单片机设计制作的电子式音乐盒。与传统的机械式音乐盒相比更小巧,音质更优美且能演奏和弦音乐。电子式音乐盒动力来源是电池,制作工艺简单,可进行批量生产,所以价格便宜。基于单片机制作的电子式音乐盒,控制功能强大,可根据需要选歌,使用方便。根据存储容量的大小,可以尽可能多的存储歌曲。另外,可以设计彩灯外观效果,使音乐盒的功能更加丰富。1.2设计方案设计一个基于AT89S52系列单片机的音乐盒,利用按键切换演奏出不同的乐曲。蜂鸣器发出某个音调,与之相对应的LED亮起。使用四个按键,分别用来实现复位、播放/暂停、上一曲、下一曲功能。1.3研究内容1)通过按键控制音乐的播放/暂停、上一曲、下一曲;2)通过数码管显示当前播放音乐的编号。3)播放音乐是8路LED灯随音乐频率闪烁。2 系统总体方案介绍2.1 系统组成框图音乐盒的系统结构以AT89S52单片机位控制核心,加上4个按键、时钟复位电路、蜂鸣器、LED模块组成。单片机负责接收按键的输入,根据输入控制音乐播放/暂停、上一曲、下一曲音乐曲目,及控制蜂鸣器发音。系统组成框图如图2.1所示。蜂鸣器电路LED花样电路数码管显示电路晶振电路复位电路按键电路A T 8 9 S 5 2图2.1 系统组成框图2.2 音乐盒的功能结构图音乐盒共包含了三首歌曲,分别是挥着挥着翅膀的女孩、同一首歌、两只蝴蝶。按键用来控制歌曲的播放、暂停和三首音乐之间的相互切换,数码管用来显示当前所播放歌曲的编号,并随着上一曲、下一曲按键显示当前切换的歌曲的编号,LED灯随着当前播放歌曲的音乐频率闪烁。2.3 主要设计软件介绍本设计利用KEIL编程软件对音乐盒源程序进行编程并调试,配合PROTEUS仿真软件对硬件进行仿真调试,两种软件的简介如下:2.3.1 PROTEUS软件简介Proteus软件是英国Labcenter electronics公司出版的EDA工具软件(该软件中国总代理为广州风标电子技术有限公司)。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年即将增加Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR、Keil和MPLAB等多种编译器。 2.3.2 KEIL简介单片机开发中除必要的硬件外,同样离不开软件,我们写的汇编语言源程序要变为CPU可以执行的机器码有两种方法,一种是手工汇编,另一种是机器汇编,目前已极少使用手工汇编的方法了。机器汇编是通过汇编软件将源程序变为机器码,用于MCS-51单片机的汇编软件有早期的A51,随着单片机开发技术的不断发展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,Keil软件是目前最流行开发MCS-51系列单片机的软件,这从近年来各仿真机厂商纷纷宣布全面支持Keil即可看出。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部份组合在一起。运行Keil软件需要Pentium或以上的CPU,16MB或更多RAM、20M以上空闲的硬盘空间、WIN98、NT、WIN2000、WINXP等操作系统。掌握这一软件的使用对于使用51系列单片机的爱好者来说是十分必要的,如果你使用C语言编程,那么Keil几乎就是你的不二之选(目前在国内你只能买到该软件、而你买的仿真机也很可能只支持该软件),即使不使用C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。3硬件设计3.1 AT89s52简介AT89S52是一种低功耗、高性能CMOS 8位微控制器,具有8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52在众多嵌入式控制应用系统中得到广泛应用。3.1.1AI89S52单片机的主要性能特点: AT89S52兼容MCS-51系列单片机产品,拥有 8K字节在系统可编程Flash存储器,可进行 1000次擦写周期,全静态操作:0Hz-33MHz, 三级加密程序存储器,32个可编程I/O口线; 三个16位定时器/计数器,八个中断源,全双工UART串行通道 ,低功耗空闲和掉电模式,掉电后中断可唤醒,看门狗定时器,双数据指针 ,掉电标识符 。3.1.2引脚说明AT89S52单片机引脚图如图3.1所示:图3.1 AT89S52引脚图 DIP封装P0 口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻 辑电平。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下, P0不具有内部上拉电阻。程序校验 时,需要外部上拉电阻。P1 口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,p1 输出缓冲器能驱动4 个 TTL 逻辑电平。此外,P1口引脚的第二功能。 P2 口:P2 口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动 4 个 TTL 逻辑电平。在使用 8位地址(如MOVX RI)访问外部数据存储器时,P2口输出P2锁存器的内容。 在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。 P3 口:P3 口是一个具有内部上拉电阻的8 位双向I/O 口,p3 输出缓冲器能驱动4 个 TTL 逻辑电平。P3口亦作为AT89S52特殊功能(第二功能)使用时, P3.0 RXD(串行输入口);P3.1 TXD(串行输出口);P3.2 INTO(外中断0) ;P3.3 INT1(外中断1) ;P3.4 TO(定时/计数器0) ;P3.5 T1(定时/计数器1);P3.6 WR(外部数据存储器写选通);P3.7 RD(外部数据存储器读选通);此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。 RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。 EA/VPP:外部访问允许, EA为低电平时(接地),允许访问外部程序存储器,如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。 XTAL2:振荡器反相放大器的输出端。 3.1.3 特殊功能寄存器定时器 0 和定时器1:在AT89S52 中,定时器0 和定时器1 的操作与AT89C51 和AT89C52 一样。定时器 2 :定时器2是一个16位定时/计数器,它既可以做定时器,又可以做事件计数器。其工作方式由特殊寄存器T2CON 和T2MOD定时器2 的控制位和状态位设置(如表1和表2所示),寄存器对RCAP2H和RCAP2L是定时器2的捕捉/自动重载寄存器定时器2有三种工作模式(如表3所示)。表1 T2CON:定时器2的控制位TF2EXF2RLCLKTCLKEXEN2TR2C/T2CP/RL276543210表2 T2MOND:定时器2的状态位符号功 能TF2定时器2 溢出标志位。必须软件清“0”。RCLK=1 或TCLK=1 时,TF2不 用置位。EXF2定时器2 外部标志位。EXEN2=1 时,T2EX 上的负跳变而出现捕捉或重载 时,EXF2 会被硬件置位。EXF2 必须软件清“0”。RLCLK串行口接收数据时钟标志位。若RCLK=1,串行口将使用定时器2 溢出脉冲作为串行口工作模式1 和3 的串口接收时钟;RCLK0,将使用定时器1计数溢出作为串口接收时钟。TCLK串行口发送数据时钟标志位。若TCLK=1,串行口将使用定时器2 溢出脉冲作为串行口工作模式1 和3 的串口发送时钟;TCLK0,将使用定时器1计数溢出作为串口发送时钟。CP/RL2捕捉/重载选择标志位。当EXEN2=1时,CP/RL21,会引起捕捉操作;当定时器2溢出或EXEN2=1时T2EX出现负跳变,都会出现自动重载操作。当RCKL=1或TCKL1时,此标志位无效。TR2开始/停止控制定时器2。TR2=1,定时器2开始工作。C/T2定时器 2 定时/计数选择标志位。C/T2 0,定时; C/T2 1,外部事件计数(下降沿触发)。EXEN2定时器2外部允许标志位。EXEN2=1时,若定时器2没有用作串行时钟,将引起定时器2 捕捉和重载。若EXEN20,定时器2将视T2EX端的信号无效。 表3 定时器2的工作模式RCLK+TCLKCP/RL2TR2MODE00116位自动重载01116位捕捉1x1波特率发生器中断寄存器和断源:AT89S52 有6个中断源,各中断允许位在IE寄存器中,两个外部中断(INT0 和INT1),三个定时中断(定时器0、1、2)和一个串行中断。中断允许控制寄存器位功能如表5所示,止所有中断。中断允许控制位EA1,允许中断;中断允许控制位EA0,禁止中断。 表5 中断允许控制寄存器位功能符号位地址功 能EAIE.7中断总允许控制位。EA=0,中断禁止;EA=1,各中断由各自的控制位设定IE.6预留ET2 IE.5定时器2中断允许控制位ES IE.4串行口中断允许控制位ET1 IE.3定时器1中断允许控制位EX1IE.2外部中断1允许控制位ET0 IE.1定时器0中断允许控制位EX0 IE.0外部中断0允许控制位3.2 控制功能电路原理介绍3.2.1时钟振荡电路 AT89S52中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或者陶瓷谐振器一起构成自然振荡器。外接石英晶体及电容C1、C2接在放大器的反馈回路中构成并联振荡电路。本设计采用英晶体,电容使用30PF10PF,外部时钟的电路如图3.2所示:图3.2 单片机内部、外部振荡电路3.2.2复位电路AT89S5251的复位是由外部的复位电路来实现的。复位引脚RST通过一个施密特发器用来抑制噪声,施密特触发器的输出电平由复位电路采样一次,然后才能得到内部复位操作所需要的信号。本设计采用手动复位,复位电路如图3.3所示。图3.3 复位电路3.2.3 LED显示电路设计与原理LED显示电路是由8个LED发光二极管组成,连接方式为共阳极,LED接到单片机的P2口,若为低电平,可使LED亮起。发光二极管的亮、灭由内部程序控制,8个LED发光二极管分别对应不同的音阶,所以LED会随着音阶的变化按规律亮、灭。LED显示电路如图3.4所示。图3.4 LED显示电路3.2.4 数码管显示电路设计与原理歌曲序号显示部分用数码管来显示,LED显示器件是通过发光二极管显示字段的器件。数码管有共阴、共阳极两种,本设计采用共阳极数码管,公共段接VCC,当某个二极管的阴极电压为低电平时,二极管发光。共阳极数码管的管教配置及内部结构如图3.4和图3.5所示,LED数码管在电路中的连接如图3.6所示。 图3.4LED数码管管教配置图 图3.5共阳极数码光内部结构图图3.6 数码管显示电路3.2.5蜂鸣器部分蜂鸣器的结构原理:压电式蜂鸣器:压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。有的压电式蜂鸣器外壳上还装有发光二极管。本设计采用电磁式蜂鸣器:电磁式蜂鸣器由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场。振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。 3.2.6 硬件电路图及功能总体硬件电路实现功能如下,如图3.6所示1) 电路中用P3.2、P3.3、P3.6、P3.7控制按键。2) P1.0P1.7控制数码管。3) P3.0控制蜂鸣器。4) P2.0P2.7控制8路LED灯5) 电路为12MHZ晶振频率工作,起振电路中C1、C2均为30PF。图3.6硬件整体电路图4软件设计在本程序中主要实现两个功能:一是将歌曲的简谱转换为单片机可识别的程序代码,用十六进制数表示;二是通过单片机控制歌曲的播放,通过三个按键实现歌曲的播放、暂停、上一曲、下一曲功能。4.1音调、节拍以及编码的确定方法一般说来,单片机演奏音乐基本都是单音频率,它不包含相应幅度的谐波频率,也就是说不能像电子琴那样能奏出多种音色的声音。因此单片机奏乐只需弄清楚两个概念即可,也就是“音调”和节拍表示一个音符唱多长的时间。4.1.1 音调的确定不同音高的乐音是用C、D、E、F、G、A、B来表示,这7个字母就是音乐的音名,它们一般依次唱成DO、RE、MI、FA、SO、LA、SI,即唱成简谱的1、2、3、4、5、6、7,相当于汉字“多来米发梭拉西”的读音,这是唱曲时乐音的发音,所以叫“音调”,即Tone。把C、D、E、F、G、A、B这一组音的距离分成12个等份,每一个等份叫一个“半音”。两个音之间的距离有两个“半音”,就叫“全音”。在钢琴等键盘乐器上,CD、DE、FG、GA、AB两音之间隔着一个黑键,他们之间的距离就是全音;EF、BC两音之间没有黑键相隔,它们之间的距离就是半音。通常唱成1、2、3、4、5、6、7的音叫自然音,那些在它们的左上角加上号或者b号的叫变化音。叫升记号,表示把音在原来的基础上升高半音,b叫降记音,表示在原来的基础上降低半音。例如高音DO的频率(1046Hz)刚好是中音DO的频率(523Hz)的一倍,中音DO的频率(523Hz)刚好是低音DO频率(266 Hz)的一倍;同样的,高音RE的频率(1175Hz)刚好是中音RE的频率(587Hz)的一倍,中音RE的频率(587Hz)刚好是低音RE频率(294 Hz)的一倍。要产生音频脉冲,只要算出某一音频的周期(1/频率),然后将此周期除以2,即为半周期的时间。利用定时器计时这半个周期时间,每当计时到后就将输出脉冲的I/O反相,然后重复计时此半周期时间再对I/O反相,就可在I/O脚上得到此频率的脉冲。利用AT89C51的内部定时器使其工作在计数器模式MODE1下,改变计数值TH0及TL0以产生不同频率的方法。此外结束符和休止符可以分别用代码00H和FFH来表示,若查表结果为00H,则表示曲子终了;若查表结果为FFH,则产生相应的停顿效果。例如频率为523Hz,其周期T=1/523=1912us,因此只要令计数器计时956us/1us=956,在每次技术956次时将I/O反相,就可得到中音DO(523Hz)。计数脉冲值与频率的关系公式如下:N=Fi2Fr(N:计算值;Fi:内部计时一次为1us,故其频率为1MHz)其计数值的求法如下:T=65536-N=65536-Fi2Fr例如:设K=65536,F=1000000=Fi=1MHz,球低音DO(261Hz)。中音DO(523Hz)。高音的DO(1046Hz)的计算值:T=65536-N=65536-Fi2Fr=65536-10000002Fr=65536-500000/Fr低音DO的T=65536-500000/262=63627 中音DO的T=65536-500000/523=64580高音DO的T=65536-500000/1047=65059C调各音符频率与计数值T的对照表如表4.1所示。表4.1 C调各音符频率与计数值T的对照表低音频率T参数中音频率T参数高音频率T参数Do2621908229Do523956115Do10465757Do2771805217Do554903108Do11095454Re2941701204Re587852102Re11755151Re3111608193Re62280497Re12454848Mi3301515182Mi65975991Mi13184545Fa3491433172Fa69871686Fa13974343Fa3701351162Fa74067681Fa14804141So3921276153So78463877So15683838La4401136136La88056868La17603434La4641078129La93253664La18653232Si4941012121Si98850661Si197630304.1.2 节拍的确定一首音乐是由许多不同的音符组成的,而每个音符对应着不同频率,这样就可以利用不同的频率的组合,加以与拍数对应的延时,一起构成音乐。了解音乐的一些基础知识,我们可知产生不同频率的音频脉冲即能产生音乐。对于单片机来说,产生不同频率的脉冲是非常方便的,利用单片机的定时/计数器来产生这样的方波频率信号。因此,需要弄清楚音乐中的音符和对应的频率,以及单片机定时计数的关系。表4.2节拍与节拍码对照节拍码节拍数节拍码节拍数11/4拍11/8拍22/4拍21/4拍33/4拍33/8拍41拍42/1拍51又1/4拍55/8拍61又1/2拍63/4拍82拍81拍A2又1/2拍A1又1/4拍C3拍C1又1/2拍F3又3/4拍每个音符使用1个字节,字节的高4位代表音符的高低,低4位代表音符的节拍,图5.2为节拍码的对照。若1拍为0.4秒,1/4拍实0.1秒,只要设定延迟时间就可求得节拍时间。假设1/4拍为1DELAY,则1拍应为4DELAY,以此类推。所以只要求得1/4拍的DELAY时间,其余的节拍就是它的倍数,如图5.3为1/4和1/8节拍的时间设定。表4.3 1/4和1/8节拍的时间设定曲调值DELAY曲调值DELAY调4/4125毫秒调4/462毫秒调3/4187毫秒调3/494毫秒调2/4250毫秒调2/4125毫秒4.1.3 编码do re mi fa so la si分别编码为17,重音do编为8,重音re编为9,停顿编为0。播放长度以十六分音符为单位(在本程序中为165ms),一拍即四分音符等于4个十六分音符,编为4,其它的播放时间以此类推。音调作为编码的高4位,而播放时间作为低4位,如此音调和节拍就构成了一个编码。以0xff作为曲谱的结束标志。歌曲播放的设计。先将歌曲的简谱进行编码,储存在一个数据类型为unsigned char 的数组中。程序从数组中取出一个数,然后分离出高4位得到音调,接着找出相应的值赋给定时器0,使之定时操作蜂鸣器,得出相应的音调;接着分离出该数的低4位,得到延时时间,接着调用软件延时。表4.4 简谱对应的简谱码、T值、节拍数简谱发音简谱码T值节拍码节拍数5低音SO16426011/4拍6低音LA26440022/4拍7低音TI36452433/4拍1中音DO46458041拍2中音RE56468451又1/4拍3中音MI66477761又1/2拍4中音FA76482082拍5中音SO864898A2又1/2拍6中音LA964968C3拍7中音TIA65030F3又3/4拍1高音DOB650582高音REC651103高音MID651574高音FAE651785高音SOF65217YCnt=0;判断歌曲是否播放到最后一首开始初始化Temp=cnt;调用播放子程序并且随时等待相应中断Cnt+;4.2 软件程序设计4.2.1 程序流程图及相应代码块主程序流程图:图4.1主程序流程图4 系统调试调试是一个必不可少的环节,它将会验证你的成果,是否实现了所要完成的功能。系统调试仿真时先要使用Keil C编译器,把所写的程序进行编译,同时在仿真器里设置生成HEX文件,编译无错误时还要进行PROTEUS仿真,查看功能是否能够实现。下面就将仿真将会用到的软件进行简单的介绍,并对仿真过程予以简介。41 常用调试工具411 Keil C 软件Keil C软件是集成调试环境,集成了编缉器、编译器、调试器,支持软件模拟,支持项目管理功能强大的观察窗口,支持所有的数据类型。树状结构显示,一目了然,支持ASM(汇编)、C语言,多语言多模块源程序混合调试,在线直接修改、编译、调试源程序,错误指令定位。功能很强大。用于对程序的调试和编辑。412 PROTEUS软件系统仿真还用到了PROTEUS软件,可通过仿真可以完全显示出所设计系统的功能,对于程序的调试等有很大的帮助。首先要新建一个文档是DNS型的找出需要的器件,可以使用搜索功能。接着把各个器件放到合适的位置都要放到蓝色框内。然后根据自己的设计要求连线。把所有的元件都连接好,做出完整的电路图。42 系统调试及性能分析系统的调试开始是把伟福编译生成的无错误后缀名为HEX的文件加载到AT89C51单片机中,方法是双击单片机弹出一个对话框,在program file后选择要添加文件,文件要求必须是HEX文件。然后可以点击运行观察现象,当出现错误时,大多都是软件出了问题,经过不断的改进调试。对按键检测、加减歌曲序号与按键之间产生的不一致、歌曲调用子程序等软件的修改后,系统基本实现了所要设计的功能。在进行系统的测试过程中。当调节歌曲的序号时,程序是给了一个初始值“1”,假如调节歌曲的序号后,歌曲播放的就是显示屏上显示的歌曲序号的歌曲。如按下复位键后时间会回到初始时间,即从头开始。数码管也跟随显示歌曲的序号为“1”,同时蜂鸣器发出了声响,LED灯随着歌曲花样闪烁。通过调试系统达到设计的任务要求。参考文献1 林立,张俊亮,曹旭东.单片机原理及应用M,北京:电子工业出版社,2009.7,17-130 2 黄智伟.全国大学生电子设计竞赛系统设计M,北京:北京航空航天大学出版社,2006.6.3 李广弟,朱月秀,王秀山.单片机基础M,北京:北京航空航天大学出版社,2001.7.4 阎石. 数字电子技术基础(第五版)M, 高等教育出版社,2005.5 谭浩强.C语言程序设计(第二版)M,北京:清华大学出版社,1991.6 谢维成,杨加国, 单片机原理与应用及C51程序设计M,北京:清华大学出版社, 2006,8.Design Of Multi-function LED Stroboflash Music Box Based On AT89S52 SCMHU Wei(Class1,Grade2007,Electronic Information Science and Technology,Physics and Electrical,Engineering Department,Weinan Teachers University)Abstract: This design is a series based on AT89S52 microcontroller Music Box, based on principles of SCM technology, through the production of hardware and software compilation, designed a multi-function music box. Mainly by the keys of the music box circuit, reset circuit, clock circuit and the buzzer composition. Using four buttons control music box, one to switch play or stop songs, and the other The main process is to achieve by pressing function keys on the first one and the next, and suspension of play, while the digital display the serial number of the currently playing song, the music box has three songs, a total of three kinds of pattern light pattern. Play a song, the buzzer sounded a tone, corresponding LED lights up. This design using KEIL programming software to program the music box and debug source code, with the PROTEUS simulation software to simulate hardware, debugging, saving design time.Key Words: Music Box ;AT89S52 SCM; KEIL; PROTEUS; TONE 附录1 音乐播放器播放效果图附录2 部分程序源代码及注释 main() init_timer2(); InitialSound(); while(1) temp=cnt; while(cnt2 ) cnt=0; temp=cnt; P1=tabletemp; Play(Music_filetemp,0,3,360); Delay1ms(500); void _EX0_() interrupt 0 if(key_add=0) cnt+; Delay1ms(500); if(key_dec=0) cnt-; Delay1ms(500); void _EX0_2() interrupt 2 flag=0; Delay1ms(100);void timer2() interrupt 5 TF2=0; ms50+; if(ms50=Music_filetempi/8) ms50=0; t+; if(t=55) t=Music_filetempi/8; if(t8) lamp_data=lampt; else lamp_data=lamp8-t; 播放歌曲子程序:/*int Play(unsigned char *Sound,unsigned char Signature,unsigned Octachord,unsigned int Speed)unsigned int NewFreTab12;/新的频率表
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 培训房屋销售代表
- 装修管理流程图
- 固定资产会计年终总结
- 江苏省镇江市部分学校2026届九上化学期中经典模拟试题含解析
- 湖北省襄阳市枣阳实验中学2026届化学九上期中质量检测试题含解析
- 2026届山东省滕州市业水平考试数(基础卷)九年级化学第一学期期中达标测试试题含解析
- 商场内员工培训
- 河南省商丘市虞城县2026届九年级英语第一学期期末综合测试模拟试题含解析
- 幼儿园教师年底工作总结
- 年会展部工作总结
- 排水管道工程施工组织设计
- 客服岗位职责培训
- 高一下学期《学生宿舍卫生和内务》主题班会课件
- 露营基地管理制度调查
- 食品防护知识培训
- 格拉斯哥(GCS)昏迷评估量表(详xi操作)
- 2025年北京中考英语阅读考纲外高频词汇(复习必背)
- 电网工程设备材料信息参考价(2024年第四季度)
- 数据中心运维服务投标方案(技术标)
- 公安情报干部培训授课
- GB/T 44988-2024过程工业安全仪表系统在线监视要求
评论
0/150
提交评论