版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、大连东软信息学院本科毕业设计(论文)论文题目论文题目:基于单片机的旋转八音盒设计与实现系 所: 电子工程系 专 业: 电子信息工程(嵌入式系统工程方向) 学生姓名: 学生学号: 指导教师: 导师职称: 讲师 完成日期: 2014年 5月 2日 大连东软信息学院Dalian Neusoft University of Information大连东软信息学院毕业设计(论文) 摘要 IV基于单片机的旋转八音盒设计与实现摘 要在信息技术革命不断的深入过程中以及在计算机技术快速发展的情况下,单片机得到了越来越广泛的应用,而且已经逐渐地发展成为了一门比较关键的技术学科。本论文所介绍的是一种比较简易的基于单
2、片机的旋转八音盒的设计以及相关的实现方案。此设计是以STC89C52单片机为核心的。依据单片机的技术原理,通过硬件电路的制作以及软件的编译,设计制作出了一个旋转的八音盒。该音乐盒主要是由步进电机、音乐播放电路、彩灯电路、按键电路以及功率放大电路组成的。音乐在演奏的过程中可以按键中断,停止播放;在播放音乐时,步进电机驱动旋转,蜂鸣器发出某个音调,与之对应的LED灯亮起。本论文软件部分采用的是单片机C语言,对各个模块进行了编程,其中包括:步进电机的驱动、彩灯电路的设计、音乐的播放。利用KEIL编程软件对程序进行编程且调试,配合PROTEUS仿真软件对硬件进行仿真调试,节约了设计时间。关键词:单片机
3、,旋转八音盒,PROTEUS,KEIL大连东软信息学院毕业设计(论文) AbstractDesign and Implementation of Rotary Music Box Based on MCUAbstractIn the process of continuous deep revolution of information technology and the rapid development in computer technology, MCU has been used more and more widely, and has gradually become a ke
4、y technical subject.This paper presents a relatively simple design of rotating the music box of MCU and the realization scheme based on the correlation. This design is based on STC89C52 micro-controller as the core. According to the technology principle of SCM, through the production of the hardware
5、 circuits and software compilation designed to produce a rotation of the music box. The music box is mainly composed of stepping motor, music playing circuit, lamp circuit, key circuit and a power amplification circuit. Music can interrupt button, stop playing in the performance process; when playin
6、g music, stepper motor rotation, the buzzer sounded a tone, and the corresponding LED lamp lights up.In this paper, the software part adopts the MCU C language, of the various modules of the program, including: stepper motor drive circuit design, lights, music playback. Programming and debugging the
7、 program using KELL programming software, the hardware simulation debugging of PROTEUS simulation software, to save the design time.Key words: MCU, Rotating music box, PROTEUS, KEIL大连东软信息学院毕业设计(论文) 目录目 录 TOC o 1-3 u 摘 要 PAGEREF _Toc386651344 h IAbstract PAGEREF _Toc386651345 h II第1章绪 论 PAGEREF _Toc3
8、86651346 h 11.1 课题研究背景与意义 PAGEREF _Toc386651347 h 11.2 课题研究内容与方法 PAGEREF _Toc386651348 h 21.3 课题研究现状 PAGEREF _Toc386651349 h 2第2章关键技术介绍 PAGEREF _Toc386651350 h 32.1 单片机选型 PAGEREF _Toc386651351 h 32.2 步进电机选型 PAGEREF _Toc386651352 h 32.3 功率放大器选型 PAGEREF _Toc386651353 h 3第3章系统需求分析 PAGEREF _Toc386651354
9、 h 53.1 系统设计目标 PAGEREF _Toc386651355 h 53.2 系统功能需求 PAGEREF _Toc386651356 h 53.2.1 单片机最小系统 PAGEREF _Toc386651357 h 53.2.2 LM386M1功放模块 PAGEREF _Toc386651358 h 63.2.3 步进电机驱动模块 PAGEREF _Toc386651359 h 63.2.4 LED灯显示模块 PAGEREF _Toc386651360 h 63.3 系统开发环境 PAGEREF _Toc386651361 h 63.4 系统任务的可行性分析 PAGEREF _To
10、c386651362 h 63.4.1 技术可行性 PAGEREF _Toc386651363 h 63.4.2 系统安全性分析 PAGEREF _Toc386651364 h 7第4章系统设计 PAGEREF _Toc386651365 h 84.1 系统设计指导原则 PAGEREF _Toc386651366 h 84.1.1 指导思想 PAGEREF _Toc386651367 h 84.1.2 软件设计原则 PAGEREF _Toc386651368 h 84.2 体系结构设计 PAGEREF _Toc386651369 h 94.3 硬件设计 PAGEREF _Toc38665137
11、0 h 94.3.1 单片机最小系统设计 PAGEREF _Toc386651371 h 94.3.2 功率放大器电路功能设计 PAGEREF _Toc386651372 h 104.3.3 步进电机驱动电路功能设计 PAGEREF _Toc386651373 h 104.3.4 LED显示电路功能设计 PAGEREF _Toc386651374 h 104.4 软件设计 PAGEREF _Toc386651375 h 11第5章系统实现 PAGEREF _Toc386651376 h 125.1 软件实现 PAGEREF _Toc386651377 h 125.1.1 主函数模块功能实现 P
12、AGEREF _Toc386651378 h 125.1.2 音乐函数程序实现 PAGEREF _Toc386651379 h 135.1.3 步进电机驱动函数程序实现 PAGEREF _Toc386651380 h 145.2 硬件实现 PAGEREF _Toc386651381 h 145.2.1 单片机最小系统实现 PAGEREF _Toc386651382 h 145.2.2 功率放大器电路功能实现 PAGEREF _Toc386651383 h 155.2.3 步进电机驱动电路功能实现 PAGEREF _Toc386651384 h 165.2.4 LED显示电路实现 PAGEREF
13、 _Toc386651385 h 17第6章系统测试 PAGEREF _Toc386651386 h 186.1 硬件电路测试 PAGEREF _Toc386651387 h 186.2 软件系统测试 PAGEREF _Toc386651388 h 19第7章结论 PAGEREF _Toc386651389 h 21参考文献 PAGEREF _Toc386651390 h 22致 谢 PAGEREF _Toc386651391 h 23大连东软信息学院毕业设计(论文)- 第1章绪 论在当今社会,电子技术得到了快速的发展,在它的推动作用下,现代的电子产品也几乎渗透了社会的各个领域中,而且极其有力
14、地推动了社会生产力的发展以及社会信息化程度的提高,同时也让现代电子产品性能得到了进一步提高,产品更新换代的速度也变得越来越快。目前,单片机正朝着高性能和多品种的方向发展。单片机应用的重要意义在于它从根本上改变了传统的控制系统设计思想和设计方法。随着社会的不断发展变化,人们对于视觉以及听觉方面的享受也提出了越来越高的要求。小小的音乐盒给人们带来美好的回忆,提高了人们的精神文化享受。传统音乐盒大多数是机械型的,不仅体积笨重,而且发音单调,且不能实现大批量的生产。本文所设计的八音盒是以STC89C52单片机为核心元件的电子式八音盒,此八音盒不仅体积小,重量轻,而且能够演奏和旋音乐,功能重多,外观效果
15、多彩多样,使用起来大方简单,并具有一定的商业价值。本论文的主要内容有:当接通电源时,播放音乐,步进电机驱动旋转,LED灯闪烁;在音乐播放过程中,可以随时中断音乐;当在接通电源的时候,播放下一首音乐,如此反复操作,就可以循环播放单片机中存储的音乐。1.1 课题研究背景与意义传统的音乐盒大多数是机械式音乐盒,它的工作原理是通过齿轮来带动一个具有铁钉的铁桶进行转动,然后在铁桶上的铁钉撞击铁片因而制成琴键,从而发出声音。但由于机械式的音乐盒体积大,笨重,且发音单调。因为外在因素,容易导致音乐盒内部金属发音条变形,从而造成音乐的发音跑调等问题,且不易大批量生产。本论文所设计的音乐盒,是基于单片机设计制作
16、的电子式音乐盒。与传统的机械式音乐盒相比更加小巧美观,音质更优美。携带方便,且能大批量的生产。因为是基于单片机设计的,所以其控制功能强大,可根据需要进行选歌,使用方便。根据内部存储容量的大小,可尽可能多的存储歌曲。通过设计本次电子音乐盒系统,可以进一步的巩固单片机的知识,将自己所学知识综合的运用在实际当中,而且有利于提高自身的设计能力,动手操作能力等各种综合能力。1.2 课题研究内容与方法本论文应用STC89C52单片机作为系统的核心部分,和其他模块相互配合完成旋转八音盒系统的设计。本设计中主要是由单片机最小系统、LED灯显示系统、功率放大系统、以及步进电机驱动系统组成的。其中步进电机驱动是由
17、8051芯片连接,实现步进电机驱动,完成旋转的功能。功率放大系统是芯片LM386M1连接喇叭实现的。基于这些元器件的应用连接,设计出完备而可靠的硬件电路,另外利用一套完整的软件编程,实现了毕业设计中旋转八音盒的功能。1.3 课题研究现状音乐盒的起源,是可以追溯到中世纪欧洲文艺复兴时期。当时是为了让教会的钟塔报时,从而将大小的钟表装上机械装置,因此也可被称为“可发出声音的组钟”。音乐盒也有着300多年的发展历史,也是人类文明发展的历史见证。每个不同时期的音乐盒的造型,都能折射出当今不同的社会心态和文明发展现状,它也成了时代的一面镜子。现今,音乐盒更是得到了众多品味人士的追求,现在的音乐盒体积小,
18、轻巧易携带,功能多,音质好。本文所设计的音乐盒,是基于单片机的。与传统的相比,小巧,音质优美。基于单片机制作的音乐盒,控制功能大,使用方便。根据存储容量的大小,可以尽可能多的存储歌曲。大连东软信息学院毕业设计(论文)第2章关键技术介绍2.1 单片机选型早期Single Chip Microcomputer的直译成单片机,它反映了早期单片机的形态和本质。国外已普遍称之为微控制器MCU(Micro-controller Unit)。其主要特点是按照面向对象,突出控制功能。单片机内部集成了外围电路、接口和存储器的CPU芯片,单片机已经图片了计算机结构,针对他的结构特点,其还可以成为嵌入式微控制器。单
19、片机采用哈佛体系结构,即是存储空间与程序之间互相独立的体系。单片微控制器简称单片机,是在一块集成了CPU中央处理器的芯片、ROM程序存储器、定时器/计数器、RAM数据存储器和多种功能的I/O输入/输出接口等一台微型计算机。单片机以体积小、功能全、性价比高等诸多优点而被广泛应用,在工业控制、通信设备、家用电器等众多嵌入式应用领域中独占鳌头。如果说C语言程序设计课程是软件设计的基础课,那么单片机以其系统硬件构架完整、价格低廉、学生能动手操作等特点,成为工科学生硬件设计的基础课。2.2 步进电机选型步进电机是一种 HYPERLINK /view/356524.htm t _blank 感应电机,其工
20、作原理是利用电子电路,将直流电转换成分时供电的,多相时序控制电流,采用此种电流为步进电机供电,步进电机才可以正常的工作,驱动器就是为步进电机分时供电的,多相时序控制器。同一步进电机可配不同细分的驱动器以改变精度和效果。2.3 功率放大器选型我们把能够把微弱的信号放大的电路叫做放大电路或放大器,因此功率放大器的定义是能把输入信号放大并且能向负载提供足够大的功率的放大器。功率放大器的种类有三种分别是:(1)甲类单管功率放大器此类功率放大器不管有没有输入信号,晶体管将始终处于导通的状态,静态电流相对较大,所以集电极损耗大,且效率也不高。因此这种工作状态称之为甲类工作状态。这种放大器一般是用在功率不太
21、大的场合。(2)乙类推挽功率放大器它的输出功率较大,失真也相对较小,效率也较高,一般可以达到60。(3)OTL功率放大器目前被广泛应用的无变压器乙类推挽放大器,简称OTL电路,是一种性能非常好的功率放大器。大连东软信息学院毕业设计(论文)第3章系统需求分析3.1 系统设计目标硬件电路主要负责的是电气性能的连接,在设计的开题报告中明确了系统的功能。系统在实现功能过程中需要进行选择器件,器件确定之后,进一步决定系统功能。在确定器件后将相应的器件按照一定的电气性能连接起来,即形成了所需要的硬件电路。本系统在硬件设计主要旋转八音盒系统进行设计的,针对旋转八音盒系统的功能和控制方法进行设计。硬件系统主要
22、分为单片机最小系统、扬声器、步进电机、音频放大器和电源电路。各个电路之间相互协同相互配合,主要是依靠单片机的协调。硬件电路的功能就是播放单片机内部存储的音乐。软件是系统功能实现的基础,硬件电路将其相应功能的电路搭建完成之后,单片机对各个电路的控制核心就是软件程序。如果将硬件电路比作是人体的四肢和身体,那么软件就是人的思维活动。只不过它的思维方式已经被设定完成,会根据人的思维进行动作。软件主要的功能是对各个模块进行编写相应的应用程序,使其达到预期的结果。在启动单片机时,调用单片机内部存储的音乐,然后通过硬件电路进行播放;通过程序控制LED灯的显示。3.2 系统功能需求3.2.1 单片机最小系统本
23、系统采用Atmel公司的STC89C52单片机,采用双列直插封装(DIP),有40个引脚。该单片机采用Atmel公司的高密度非易失性存储技术制造,与美国Intel公司生产的MCS51系列单片机的指令和引脚设置兼容。其主要特征如下:STC89C52单片机是一个8位CPU,其内置4K字节Flash可重复编程Flash,擦写次数可重复1000次。可以完全静态操作:操作频率在0Hz24Hz之间,可输出时钟信号。程序存储器可以进行三级加密,保证系统安全。片内有128B8的数据存储器(RAM)。在所有引脚中有32根是可编程I/O线。系统内部集成了2个16位定时/计数器,并且包括有6个中断源的中断系统,可编
24、为两个优先级。一个全双工可编程串行通道。可编程串行UART通道。具有闲置模式和掉电模式两种节能模式。单片机的最小系统是系统控制的核心部分,它主要责任是控制系统的运行,它的作用是存储程序。单片机上电之后,程序会开始运行,各个部件在此时进行初始化,完成初始化后,单片机控制其他电路进行协同作业,完成设计。此设计运用了单片机中的复位电路和振荡电路。3.2.2 LM386M1功放模块功率放大器是将输入信号放大并且能向负载提供足够大的功率的。本次论文采用LM386M1芯片驱动功率的放大。LM386M1是一种音频集成的 HYPERLINK /view/8523.htm t _blank 功放,具有功耗低、电
25、源电压范围大以及外接元器件少等优点的功率放大器。它是美国某公司生产的 HYPERLINK /view/8599023.htm t _blank 音频功率放大器,其主要应用于低电压消费类的产品。为了让外围元件最少,将 HYPERLINK /view/172144.htm t _blank 电压增益内置为20。但是可以在1脚和8脚之间增加外接的电阻和电容,那么就可以将电压增益调为任意值,直到200为止。3.2.3 步进电机驱动模块步进电机是不能直接接到工频交流或者直流电源上工作,而必须使用专用的驱动器。本设计利用的是ULN2003A芯片进行驱动的。ULN2003A是一个7路反向器的电路,其意思就是
26、当输入端是高电平时ULN2003A输出端为低电平,当输入端是低电平时ULN2003A输出端为高电平。它还具有高耐压、大电流、高电压输出等特性,它可以直接驱动步进电机,使其进行工作。3.2.4 LED灯显示模块随着科技的不断发展,显示电路逐渐已经成为了最小系统的一部分,虽然单片机最小系统并不包含显示电路,可是现有的单片机电路没有了显示电路已经不能称为合格的单片机系统。LED显示更是更加先进和美观的电路,保证再输入是LED显示电路会有相应的显示。LED显示电路在设置完成后,需要实时显示单片机的运行状态和时间。保证了系统的人性化和科学化。使其更加美观。旋转八音盒的设计运用了发光二极管。它的作用就是当
27、音乐在播放的时候,它会进行发光,每个音符对应着不同的发光现象。这种显示方式是通过软件的编译来实现的。3.3 系统开发环境 硬件配置:硬盘:25GB,内存:256MB,操作系统:Windows XP开发工具:keil uVision2/Protel 99SE/Proteus7.43.4 系统任务的可行性分析3.4.1 技术可行性本系统采用双控制模块化结构,分两部分进行控制。两部分又各自的单片机进行控制各自独立运行,互不影响。这样对于系统的安全更加有保障。在某个模块的出现问题的时候不会影响到整个系统的正常运行。本系统使用的单片式是采用双列直插封装。共有40个引脚。该单片机采用高密度非易失性存储技术
28、制造。其主要特点是STC89C52是一个8位的CPU,其内置4K字节Flash,可查写次数1千次,可以完全静态操作,操作频率在0Hz24Hz之间,可以输出时钟信号。存储器可以进行三级加密,保证系统安全。片内有120bX8的数据存储器(RAM)。40个引脚中有32个事I/O口。系统内部机车了2个16为定时/计数器,并且包括有6个中断源的终端系统。可以编为两个优先级。一个全双工串行通信通道。有可编程串行UART通道。并且闲置模式和掉电模式两种节能模式。STC89C52单片机的时钟电路可以由三种方式构成,即内部时钟方式、有源晶振方式和外部时钟信号方式。本自动报站系统为内部时钟方式,即采用外接晶振和电
29、容组成的并联谐振电路,STC89C52可以工作在20MHz频率下。本系统不仅考虑周全,功能全面,而且能够充分的考虑实际的使用情况,方便了人们的使用,并且实现了预期中的全部功能。采用STC89C52单片机,它的功能非常的强大,不仅仅性能优良,而且它的稳定性也很高。这种稳定性对于系统的运行有着非常大的保证。系统的功能全面,其中包括音乐播放、播放下一曲、LED灯根据节奏闪烁、步进电机驱动旋转等功能。这让使得系统的人机交互界面更加人性化,设计更加美观大方,增加了它对市场的影响力。3.4.2 系统安全性分析本系统的安全性主要是依靠合理的系统模块划分,各个模块不仅分工明确,而且功能也很明确,对于系统的问题
30、检查和系统的维护带来了非常好的便利。能够有效地提高系统的运行效率。保证系统不会在运行过程中出现问题后需要长时间去查找问题,或者是根本无法找到问题。安全性的问题在软件方面也是有体现,程序在编写过程中也是按照模块化的方式进行编程。在系统程序调用的过程中会更加一目了然的看到问题所在,也会增强了系统的可维护性。单片机最小系统中的复位电路也是系统运行安全的保证。由于单片机的运行环境并不能保证在稳定不变,难免单片机会死机或程序无法运行,软复位无法重新启动系统以后复位电路在此时就起到非常关键的作用。保证系统的正常启动,恢复系统功能。第4章系统设计4.1 系统设计指导原则4.1.1 指导思想学习软件设计课程不
31、是只要能满足于“懂得了”就可以的,也不是只满足于能看懂书上的程序就可以的,而是需要相当熟练地掌握程序设计的全部过程,包括(1)独立的编写出正确的源程序;(2)独立上机进行调试程序;(3)独立运行程序以及分析结果。程序设计是需要很强的实践性的,因此必须十分重视编写程序的实践环节。对系统需求进行分析整理,将系统进行模块化进行开发、运行,以便提高维护效率。以实现预期的功能为目标,以降低成本为理念,以最简洁的电路实现为根本。设计旋转八音盒,将硬件和软件都进行模块化的设计。通过模块化的设计将系统分解,先实现各个模块功能后,再集成为系统来实现系统的功能。4.1.2 软件设计原则(1)可靠性软件的可靠性顾明
32、其意,就是在软件测试运行的过程中错误发生的概率。其错误发生率越低,其稳定性就越高。一旦软件发生故障的时候,其本身具有一定的排除故障和解脱死锁的能力。软件和硬件的可靠性有着本质上的区别,主要表现在:硬件的可靠性是物理机理导致的衰变和老化,而软件是由于设计和实现的过程中的错误所致。因此软件的可靠性必须在设计阶段得以保证,而在生产和测试阶段是无法检测的。(2)可修改性要求以科学的方法设计 HYPERLINK /view/37.htm t _blank 软件,使之有良好的结构和完备的文档,系统性能易于调整。(3)健壮性健壮性是指软件的接口接受到了软件规范以外的符号,是否能够判断出这个输入不符合规范要求
33、,并且具有相应的对策来处理这样的突发情况。 HYPERLINK /view/37.htm t _blank 软件 HYPERLINK /view/963152.htm t _blank 健壮性这个概念非常模糊无法进行明确的定义,但是却是衡量软件外部量度标准。 HYPERLINK /view/37.htm t _blank 软件设计的健壮直接反应了设计和编码人员的水平。反映了其对问题的分析能力和解决问题的能力。(4)容易理解软件设计必须秉持可理解性,在保证了软件的可靠性和可修改性的前提下必须让容易理解,保证系统的重用率。容易理解并不仅仅就是文档清晰可读,而是 HYPERLINK /view/37
34、.htm t _blank 软件本身的设计架构和代码结构简单明易于理解。这个主要取决于设计者本身的洞察力和创造性,以及对设计对象需求和掌握得透彻程度,它不依赖于任何软件而是设计师在设计过程中就对细节性的把握和操作。 (5)可测试性系统的可测试性就是在系统中设计一个适当的接口,并建立测试系统,使系统在使用前,使得到系统得到全面的检验。测试是软件使用前必须使用的流程,也是保证系统稳定性的基础。(6)可扩展性 HYPERLINK /view/37.htm t _blank 软件设计并非是以有效,而是要尽量留有后续升级的升级接口和升级的空间。一个完美的系统并不是设计出了非常强大的功能,而是代码尽可能少
35、的情况下实现了功能,而且在后续的升级的过程中有充分的接口和资源使系统在原有的基础上即可升级或增加功能。4.2 体系结构设计根据需求调研结果确定本系统主要包括以下功能模块,如图4.1所示。图4.1 系统体系结构4.3 硬件设计4.3.1 单片机最小系统设计单片机最小系统就是单片机运行的最基本电路。最小系统主要是有三部分组成,其中包括单片机、复位电路、时钟电路等几部分组成。最小系统是在硬件电路设计中必不可少的系统。本文所采用的单片机STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,
36、拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超级有效的解决方案。STC89C52具有以下标准功能:8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,STC89C52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。STC89C52采用40
37、引脚的双列直插封装(DIP方式)。STC89C52具有丰富的资源,而且性价比很高,对于一个有市场意义的项目来说成本的控制是非常重要的。4.3.2 功率放大器电路功能设计功率放大器是将输入信号放大并且能向负载提供足够大的功率的一种电路。本文采用了LM386M1芯片作为旋转八音盒的功率放大器电路的核心,然后连接相应的元器件形成功率放大电路,最后通过一个喇叭播放出被放大的音频。进而达到功率放大的目的。LM386M1是一款音频集成的 HYPERLINK /view/8523.htm t _blank 功率放大芯片。它是具有自身功耗低、更新内链增益可调整、电源电压范围大、外接元件少和总谐波失真小等优点的
38、功率放大器。现在被广泛的应用在功率放大的各个领域中。4.3.3 步进电机驱动电路功能设计步进电机的驱动在本论文中的旋转部分起到了至关重要的作用,因为步进电机的驱动,才能完成实物的旋转动作,才能实现旋转八音盒的设计。芯片ULN2003A是一个7路的反向器电路,它可以作为一些器件进行应用,比如说作为步进电机的驱动电路。因此本次设计中的步进电机驱动采用了单片机以及芯片ULN2003A共同进行驱动的。然后在加以软件程序的帮助,使八音盒达到了旋转的目的,此部分也是论文中重要的组成部分。4.3.4 LED显示电路功能设计显示电路是系统中非常重要的一部分,随着技术不断发展,显示电路逐渐已经成为了最小系统的一
39、部分,虽然单片机最小系统并不包含显示电路,可一个合格的、优等的电路中显示电路是其重要标志之一。LED显示电路是8个LED发光二极管组成的,它的连接方式是共阳极的,LED接到单片机的P0口,若为低电平,则可以让LED发光。发光二极管的亮、灭是由内部程序进行控制的,8个LED发光二极管分别对应不同的音阶,所以LED会随着音阶的变化按规律亮、灭的。4.4 软件设计系统软件控制流程图如图4.2所示。图4.2 系统流程图大连东软信息学院毕业设计(论文)第5章系统实现5.1 软件实现5.1.1 主函数模块功能实现一个程序,无论复杂或简单,总体上都是一个“函数”;这个函数就称为“main函数”,也就是“主函
40、数”。main函数在程序中大多数是必须存在的。主函数是系统的开始,软件系统的入口就是主函数。主函数中定义了再后续使用的函数,其是程序的核心,主要是在运行过程中,控制各个软件模块的运行。主函数中定义了各个函数后,将调用的函数名进行定义后,就可以在主函数中进行调用。在本系统的设计中,主函数调用了音乐函数以及步进电机驱动函数。void main()EEPROM_Init(); /EEPROM初始化InitialSound();sv_num.dat=temp; /存储Sector_Erase(sv_num.add);Byte_Program(sv_num.add,sv_num.dat);while(1
41、)if(music_num=1)P0=0Xf8;Play(Music_Code1,2,3,500);if(music_num=2)P0=0Xf8;Play(Music_Code2,2,3,350);if(music_num=3)P0=0Xf8;Play(Music_Code3,2,3,500);if(music_num=4)P0=0Xf8;Play(Music_Code4,2,3,350);5.1.2 音乐函数程序实现uchar Byte_Read(uint add) /读取字节 IAP_DATA = 0 x00; IAP_CONTR = ENABLE_ISP; /打开IAP 功能, 设置Fl
42、ash 操作等待时间 IAP_CMD = 0 x01; /IAP/ISP/EEPROM 字节读命令 IAP_ADDRH = (uchar)(add8); /设置目标单元地址的高8 位地址 IAP_ADDRL = (uchar)(add&0 xff); /设置目标单元地址的低8 位地址 EA = 0; IAP_TRIG = 0 x46; /先送 46h,再送B9h 到ISP/IAP 触发寄存器,每次都需如此 IAP_TRIG = 0 xB9; /送完 B9h 后,ISP/IAP 命令立即被触发起动 _nop_(); EA = 1; IAP_Disable(); return (IAP_DATA)
43、;void Sector_Erase(uint add) IAP_CONTR = ENABLE_ISP; /打开IAP 功能, 设置Flash 操作等待时间 IAP_CMD = 0 x03; /IAP/ISP/EEPROM 扇区擦除命令 IAP_ADDRH = (uchar)(add8); /设置目标单元地址的高8 位地址 IAP_ADDRL = (uchar)(add&0 xff); /设置目标单元地址的低8 位地址 EA = 0; IAP_TRIG = 0 x46; /先送 46h,再送B9h 到ISP/IAP 触发寄存器,每次都需如此 IAP_TRIG = 0 xB9; /送完 B9h
44、后,ISP/IAP 命令立即被触发起动 _nop_(); EA = 1; IAP_Disable(); /关闭IAP 功能, 清相关的特殊功能寄存器,使CPU 处于安全状态, /一次连续的IAP 操作完成之后建议关闭IAP 功能,不需要每次都关5.1.3 步进电机驱动函数程序实现unsigned char code F_Rotation4=0 x03,0 x06,0 x0c,0 x09;/正转表格unsigned char code B_Rotation4=0 x09,0 x0c,0 x06,0 x03;/反转表格void Delay(unsigned int A)/延时 while(-A);
45、 void main(void)while(1) for(i=0;i4;i+) /4相步进电机 P0=B_Rotationi; /输出对应的相 可以自行换成反转表格 Delay(500); /改变这个参数可以调整电机转速 5.2 硬件实现5.2.1 单片机最小系统实现单片机就是简化的微型计算机。CPU中本身自带存储器ROM和RAM。CPU片内也有总线。单片机最小系统是系统的核心控制部分,主要有复位电路和时钟电路组成。单片机最小系统主要是控制和收集相应的数据信息。单片机是系统代码的存放位置,单片机运行程序,通过程序进行判断相应条件,控制相应的模块进行动作。STC89C52是一种低功耗、高性能CM
46、OS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。STC89C52具有以下标准功能:8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,STC89C52可降至0Hz静态逻辑操作,支持2种软件
47、可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。STC89C52采用40引脚的双列直插封装(DIP方式)。本系统中运用到了单片机中的时钟电路以及复位电路,确定系统的正常运行。其具体实现电路图如图5.1所示。图5.1 单片机最小系统原理图5.2.2 功率放大器电路功能实现功率放大器是将输入信号放大并且能向负载提供足够大的功率的一种电路。采用功率放大器是为了使音乐播放的声音扩大。本文采用了LM386M1芯片作为旋转八音盒的功率放大器电路的核心,然后连接相应的
48、元器件形成功率放大电路,最后通过一个喇叭播放出被放大的音频。进而达到功率放大的目的。其具体实现电路图如图5.2所示。图5.2 功率放大电路原理图5.2.3 步进电机驱动电路功能实现步进电机的驱动在本论文中的旋转部分起到了至关重要的作用,因为步进电机的驱动,才能完成实物的旋转动作,才能实现旋转八音盒的设计。步进电机是一种感应电机,是一种将电脉冲转化为角位移或线位移的执行机构。它的工作原理是利用电子电路,将直流电变成分时供电的,多相时序控制电流,用这种电流为步进电机供电,步进电机才能正常工作,在正常情况下,电机的转速、停止的位置是根据单片机控制发送的脉冲信号的频率和脉冲的数量。不受负载变化的影响。
49、每个脉冲是电机转过一个步距角。有这样的线性关系存在,步进电机的精度可以达到不进角的35%,并且无累积误差的优点。使得在速度、位置控制都变得非常简单。由于步进电机的驱动电流较大,单片机不能直接驱动,一般都是使用ULN2003A达林顿大电流阵列驱动,当然,使用下拉电阻或三极管也是可以驱动的,只不过效果不是那么好,产生的扭力比较小。ULN2003A芯片是高耐压、大电流复合晶体管阵列,由七个硅NPN复合晶体管组成。本次设计中步进电机的驱动采用了单片机8051以及芯片ULN2003A进行驱动的。在驱动电路中单片机8051同样用到了单片机最小系统中的复位电路以及其中的晶振电路,来帮助驱动系统的正常运行。然
50、后在加以软件程序的帮助,使八音盒达到了旋转的目的,此部分也是论文中重要的组成部分之一。其具体电路图的实现如图5.3所示。图5.3 步进电机驱动电路原理图5.2.4 LED显示电路实现LED显示电路是8个LED发光二极管组成的,LED接到单片机的P0口,若为低电平,则可以让LED发光。8个LED发光二极管分别对应不同的音阶,所以LED会随着音阶的变化按规律亮、灭的。其具体实现原理图如图5.4所示。图5.4 LED显示电路原理图大连东软信息学院毕业设计(论文)第6章系统测试6.1 硬件电路测试电路的设计没有任何问题的时候,按照电路所设计的电路图进行焊接电路板。在焊接电路板的过程中,要注意元器件的属
51、性连接,避免犯下不可弥补的错误。焊接完电路板之后,要检查电路板的焊接点是否焊接牢固,有无虚焊;在相邻近的焊接点中有无相互通电的可能性,是否有短路现象的发生,在必要的时候要采用万用表进行测试,避免不必要的错误发生,使得硬件电路不能正确的运行。使用伟福仿真器对单片机进行仿真,首先进行单步运行,可以观察查看相应寄存器中的数据变化,根据观察寄存器中的数据变化与预想的相同。系统运行正常,可以实现预期设计的各项功能。系统运行结果如图6.1、6.2所示。图6.1 系统运行图 图6.2 系统运行图由两个图比较得出,彩灯随着音节的变化发生变化,旋转木偶也能正常旋转,因此系统正常。6.2 软件系统测试软件测试是一
52、项非常重要而且复杂化的步骤。软件测试在软件的整个生存期中起着重要的作用,能够验证软件的存在的不足和问题,对于软件的质量保证是不可缺少的一部分。操作步骤如下:1根据系统的原理结构检查各流程图是否正确,再根据流程图来检查程序是否也正确。2将所有程序组织起来,在软件环境下运行,检查程序是否正确。通过对硬件和软件系统的认真检查,反复测试。如果没有出现问题即可把源程序编译成HEX文件装载到单片机中,对硬件进行仿真。仿真软件Proteus是英国Labcenter electronics公司研发的EDA仿真软件。它以强大的功能和良好的仿真效果而闻名。因此EDA仿真软件采用Proteus进行仿真。Proteu
53、s仿真基本步骤:第一步是将电路图的硬件及连线布置在Proteus中,Proteus的数据库非常丰富。基本的电子器件都包含在内,所以电路布置简单。而且电路布置没有特殊的参数要求。第二步将代码和电路连接起来。即将代码和硬件电路进行连接,以实现控制。点击开始,即可仿真。仿真结果基本完成了显示系统的基本功能,可以对通信的数据及时准确的显示。大连东软信息学院毕业设计(论文)第7章结论当然在这次宝贵的毕业设计活动中,经验才是对于我们最大的收获,而且还增强了自身对未知问题以及对知识的深化认识的能力,用受益匪浅这个词语来概括这次难忘的活动我觉得再合适不过了。但是,光是完成了作品还是不可以自我满足的,在从一开始
54、的时候就怀着将作品制作得更加人性化,更加令人满意,更加地使功能完美又方便地被应用领域这个最终目的下,随着对单片机这门学科的认识加深,到达了拓展的程度,我想这个目的将在不远的时期内被实现。总之,这次设计从软件编写、调试到软硬件联机调试,我倾注了大量的时间和心血。真是曾经为程序的编写而冥思查找过,曾经为无法找出错误而郁闷苦恼过,也曾经为某一功能不能实现而犹豫彷徨过,但最终我成功了。我不仅品味到了结果的喜悦,更明白了过程的弥足珍贵。通过这几个月的学习研究,终于完成了基于51系列单片机的旋转八音盒的软硬件设计。系统的功能基本上达到了预期效果。在这次设计过程中,我学习到了以前在理论中没有学到的东西,毕业
55、设计就是理论结合实际的实战。单片机的设计至今为止已经进入了令人鼓舞的阶段,通过对旋转八音盒系统的设计,使我不仅仅是对于单片机入门软件与硬件的常用设计与功能,还使我对于一项设计研究的制作过程所需要的详细步骤和具体的实现方法的力度的掌握。通过系统的设计,对STC89C52单片机有了充分的了解。对于单片机的资源利用和控制都有了更加深刻的认识,也有让系统实现有了更加深刻的了解。通过软件的设计,对于C语言的使用熟练了很多,使用C语言对单片机进行控制,并对单片机的外围电路进行控制,通过各个不同模块功能的实现以实现整个系统的功能。在完成设计的过程中锻炼了我独立发现问题和解决问题的能力。在毕业设计中提高了我的
56、设计能力,让我的设计更加规范,设计经验更加丰富。让我在各个方面都得到了进步。毕业设计终于在的悉心指导下完成了。作为一名即将离开大学校门的学生,我把本次设计看作是大学中的最后一门功课,投入了巨大的时间和精力。由于在大学中重点学习的是强电方面的知识,仅靠自己的力量完成设计任务的难度是相当大的。在制作设计的过程中,我确实遇到了许多非常麻烦的问题,碰到了很多的困难。但是,这些问题和困难在和同学们的帮助下都被一一解决。参考文献1 李建忠单片机原理及应用M,西安电子科技大学出版社,20082 黄智伟全国大学生电子设计竞赛系统设计M,北京航空航天大学出版社,20063 黄智伟凌阳单片机课程设计指导M,北京航空航天大学出版社,20064 李广弟,朱月秀,王秀山单片机基础M,北京航空航天大学出版社,20015 赵曙光,郭万有可编程逻辑器件原理开发与应用M,西安电子科技大学,20006 张迎新,雷文C8051F系列SOC单片机原理及应用M
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年茶叶品牌区域销售代理协议
- 2024秋季农产品销售代理合同
- 2024年度特色车位买卖协议(儿童乐园配套)3篇
- 《煤矿运输提升系统的安全检查》培训课件2025
- 2024政府采购保密协议范本(体育场馆建设)3篇
- 2024新校区建设项目沉降数据收集与分析及基础施工合同3篇
- 2024无线网络覆盖系统弱电装修合同
- 2024政工程有限公承建的绿色环保智慧校园合同3篇
- 2024年精装室内实木门采购合同版
- 2024手绘墙绘艺术装置设计与制作合同3篇
- 高中物理 选修1 第二章 机械振动(2024人教版)
- 中药饮片行业研究报告(2024年)
- 2024年国家电投五凌电力限公司招聘历年高频考题难、易错点模拟试题(共500题)附带答案详解
- 进修人员培养考核鉴定簿
- 人教版四年级上册竖式计算300题及答案
- 2024年山东省春季高考技能考试汽车专业试题库-上(单选题汇总)
- 乡镇权责清单
- 湖北省部分学校2023-2024学年高一上学期期末数学试题(解析版)
- 《活着》读书分享课件
- 医院医疗纠纷防范与处理实施办法(试行)
- 前程无忧IQ测评题库
评论
0/150
提交评论