




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、大连东软信息学院本科毕业设计(论文)论文题目论文题目:歌曲比赛抢答系统设计与实现系 所: 电子工程系 专 业: 电子信息工程(嵌入式系统工程方向) 学生姓名: 学生学号: 指导教师: 导师职称: 讲师 完成日期: 2014年5月2日 大连东软信息学院Dalian Neusoft University of Information大连东软信息学院毕业设计(论文) 摘要 IV歌曲比赛抢答系统设计与实现摘 要随近几年,各个电视频道播出娱乐节目,如我爱记歌词、非诚勿扰、中国梦想秀等节目。其中有音乐播放、数字显示、亮灯提示和按键事件,这些事件都与电子工程和计算机行业息息相关。为此,我以单片机为核心元件设
2、计一个歌曲比赛抢答系统。并在本系统中实现音乐播放,数字显示,亮灯提示和按键事件等。歌曲比赛抢答系统适于多人游戏和比赛。通过播放歌曲,考察抢答者对歌曲的认知,甚至考察抢答者反应能力和记忆力。本文将介绍本系统的三个重要部分,既编程语言、硬件和软件部分。其中编程语言采用C语言;硬件电路有5个部分,既单片机时钟电路、复位电路、Speaker电路、按键的输入电路和一位数码管电路。而Speaker电路能播放音乐和LED显示选手抢答时的提示。数码管提示音乐的选择。按键输入电路提供选手的抢答信号和主持人的控制信号。而时钟和复位电路能使单片机正常工作;软件主要有KEIL,PROTEUS。通过前期的工作,可得到设
3、计本系统的流程图或框图;可得到PROTEUS软件对硬件电路图的仿真图和KEIL软件对本系统实现各个功能模块的代码。通过软件对代码和电路图的仿真和硬件对各个功能模块的实现,进而得到歌曲比赛抢答系统。关键词:单片机,按键,一位数码管,蜂鸣器,C语言,PROTEUS大连东软信息学院毕业设计(论文) AbstractThe Design and Implementation of the Songs Game Responder SystemAbstractIn recent years, various television channels broadcast entertainment prog
4、rams, such as I love the lyrics in mind, if you are the one, Chinese dream show program. The music player, digital display, lighting tips and key events, these events are closely connected with the electronic engineering and computer industry. Therefore, I design a songs game responder system with u
5、sing Microcontroller as the core components. And the system can play music, display digital, point out lighting and press the key events. Songs game responder system is fit for multiplayer games. By playing songs and investigating the responder cognition to the song, even the responders reaction abi
6、lity and memory.This essay will introduce three important part of the system, both hardware and software, programming language. The programming language using C language; hardware circuit has 5 parts, Microcontroller Clock circuit, Reset circuit, Speaker circuit, Keyboard input circuit, and a four b
7、it digital tube circuit. The Speaker circuit can play music, LED can alarm and answer the first. Digital can display the music selection. The Keyboard input circuit which can provide the responder signal and the host signal. The Clock and Reset circuit can make the computer work; software mainly inc
8、ludes KEIL and PROTEUS.In previous work, we can get the design of the system flow chart or diagram; available PROTEUS software on the hardware circuit diagram and KEIL software simulation of the system realization of each function module code. Through the simulation and hardware of the code and the
9、circuit diagram of the software of each function module, then get the song contest Responder system.Key words: Microcontroller, Key, Digital tube, Buzzer, C Language, PROTEUS大连东软信息学院毕业设计(论文) 目录目 录 TOC o 1-3 u 摘 要 PAGEREF _Toc387741587 h IAbstract PAGEREF _Toc387741588 h II第1章绪 论 PAGEREF _Toc38774158
10、9 h 11.1 课题研究背景与意义 PAGEREF _Toc387741590 h 11.2 课题研究内容与方法 PAGEREF _Toc387741591 h 1第2章硬件和软件的选择 PAGEREF _Toc387741592 h 22.1 单片机的型号的选择 PAGEREF _Toc387741593 h 22.2 数码管和LCD的选择 PAGEREF _Toc387741594 h 22.3 数码管电路的设计 PAGEREF _Toc387741595 h 22.4 按键电路的设计 PAGEREF _Toc387741596 h 32.5 软件的选择 PAGEREF _Toc3877
11、41597 h 32.6 编程语言的选择 PAGEREF _Toc387741598 h 3第3章系统需求分析 PAGEREF _Toc387741599 h 43.1 系统设计目标 PAGEREF _Toc387741600 h 43.2 系统功能需求 PAGEREF _Toc387741601 h 43.3 单片机引脚特殊功能 PAGEREF _Toc387741602 h 53.4 歌曲比赛抢答器的工作流程 PAGEREF _Toc387741603 h 63.5 集成开发环境 PAGEREF _Toc387741604 h 73.6 系统非功能需求 PAGEREF _Toc387741
12、605 h 83.6.1 元器件的性能 PAGEREF _Toc387741606 h 83.6.2 系统的成本 PAGEREF _Toc387741607 h 83.7 系统技术可行性分析 PAGEREF _Toc387741608 h 9第4章系统硬件电路实现 PAGEREF _Toc387741609 h 104.1 复位电路设计 PAGEREF _Toc387741610 h 104.2 LED显示模块与按键模块 PAGEREF _Toc387741611 h 104.3 数码管显示模块 PAGEREF _Toc387741612 h 114.4 蜂鸣器播放音乐模块 PAGEREF _
13、Toc387741613 h 134.5 系统功能框图 PAGEREF _Toc387741614 h 14第5章软件配置环境 PAGEREF _Toc387741615 h 165.1 KEIL软件环境配置 PAGEREF _Toc387741616 h 165.2 PROTEUS软件环境配置 PAGEREF _Toc387741617 h 175.3 PROTEUS与KEIL联合调试软件配置 PAGEREF _Toc387741618 h 17第6章系统测试 PAGEREF _Toc387741619 h 196.1 测试概述 PAGEREF _Toc387741620 h 196.2 测
14、试用例 PAGEREF _Toc387741621 h 196.2.1 数据发送 PAGEREF _Toc387741622 h 196.2.2 模块最终的测试 PAGEREF _Toc387741623 h 19第7章结论 PAGEREF _Toc387741624 h 20参考文献 PAGEREF _Toc387741625 h 22致 谢 PAGEREF _Toc387741626 h 23大连东软信息学院毕业设计(论文)- 第1章绪 论电子产品给生活带来诸多方便与利益,以至于它能迅速发展。关联所学专业知识,以单片机为核心元件,设计一个歌曲比赛抢答系统。可播放若干首歌曲,该歌曲抢答器提供
15、8个选手按键和两个主持人按键。数码管显示歌曲曲目,LED作为选手抢答提示。主持人控制该系统的使用。开发本系统具有教育的正面影响。在开发过程中,正面促进开发人员对专业知识的理解和掌握,利用所学知识应用到现实生活中。系统在应用过程中,还可以提高人们的反应能力和记忆力,以及人们对新事物的认知能力。考虑到它的安全性,设计的硬件电路不会发生强烈爆炸事件,电压稳定且较小,避免触电造成极大的伤害。1.1 课题研究背景与意义一直以来,电子系统不断更新且无处不在,而电子系统最常见的几种模块功能有按键、LED显示、数码管和蜂鸣器等。为此,我设计一个歌曲比赛抢答系统,将其命名为歌曲比赛抢答系统设计与实现。并在本系统
16、中实现音乐播放、数字显示、亮灯提示和按键事件等。歌曲比赛抢答系统类似模拟我爱记歌词现场活动。会吸引从多爱唱歌的人,爱记歌词的选手。生活中,我们除了要学习和劳动以外。在业余时间里,我们可通过游戏或活动来改变心情。歌曲比赛抢答系统适于多人游戏和比赛。通过播放歌曲,考察抢答者对歌曲的认知,甚至考察抢答者反应能力和记忆力。在娱乐中认识新曲子,在比赛中彼此竞争。1.2 课题研究内容与方法本系统设计主要研究硬件电路设计和硬件电路的功能代码。硬件电路有4个部分组成,既单片机的Speaker电路、按键的输入电路、数码管驱动电路和一位数码管电路。其中单片机时钟电路、复位电路:单片机正常工作需要。Speaker(
17、蜂鸣器)电路:用于音乐播放。按键的输入电路:包括8位选手按键、播放和停止按键、音乐选段键。这些按键主要提示选手的抢答信息和主持人的控制信息。歌曲曲目的显示是通过数码管驱动电路和一位数码管电路实现。大连东软信息学院毕业设计(论文)第2章硬件和软件的选择为了实现歌曲比赛抢答系统,首要考虑到系统所需的硬件和软件,对于所需的软件和硬件可有不同选择。如单片机型号的选择、LCD或是数码管输出显示的选择,按键电路的设计,硬件电路的设计的选择、软件的选择和编程语言的选择等。以下是本章对比硬件和软件的选择,通过对比,选择与本系统匹配且简易的方案,我们将会采纳。2.1 单片机的型号的选择本系统核心元件是单片机。方
18、案一:51系列单片机由Intel公司推出,主要有8031系列和8051系列。方案二:Atmel公司以8051的内核为基础推出了AT89系列单片机。其中AT89C51、AT89C52、AT89S51、AT89S52、AT89S8252等单片机完全兼容8051系列单片机,所有的指令功能也是一样的。就是功能上做了一系列的扩展,比如说AT89S系列都支持ISP功能,AT89S52和AT89S8252单片机增加了内部WDT功能,增加了一个定时器等功能,但此型号的单片机在市场上很少出现且其价格高。方案三:STC89C51系列单片机具有完全的兼容8051系列单片机,且广泛推出市场,价格低,适合小企业和学校开
19、发简单的系统。如上所述,我们将采取方案三。2.2 数码管和LCD的选择方案一:采用LCD显示组别号码,LCD具有低功耗,画面效果好,分辨率高的特点,但是由于需要显示组别数字,信息量较少,且由于LCD显示屏是以点阵的模式显示各个符号,编程工作量大,成本高。方案二:使用数码管显示,数码管具有耐老化,防晒的特点,外接环境要求低,易于维护,同时精确度高,操作简单,采用BCD编码显示数字,程序编译容易,价格便宜的特点,广泛应用于小型企业和教育领域中。本设计只需要显示组别,显示简单,通过对比,我们最后采纳方案二。2.3 数码管电路的设计数码管显示电路可以使用共阴极的数码管和共阳极的数码管进行设计。 方案一
20、:采用共阴极的数码管设计显示电路。如果使用共阴极的数码管设计显示电路,需要用到三极管且改变硬件电路和代码。此方案的硬件电路过于复杂,我们不会优先考虑这个方案。方案二:采用共阳极的数码管设计显示电路。只需要一个共阳极数码管就能实现数码管显示电路。硬件电路简洁明了,程序代码简单易懂。这也是程序员通常采纳的方案。如上所述,我们将会采纳方案二。2.4 按键电路的设计键盘是单片机系统中通过的输入设备,用于向系统输入数据或控制信息。常用的键盘有两种,分别是独立键盘和矩阵式键盘。方案一:采用矩阵键盘矩阵式键盘相对其更加灵敏,并且可扩展更多按键,适用于按键数量较多的场合。方案二:采用独立式按键独立式键盘接口电
21、路,它的硬件电路和软件编程都比较简单,但是每个按键必须占一根I/O口线,在按键个数较多的时候,I/O口线的资源浪费较大,故只在按键数量不多时采用该电路。本设计所需要的抢答键只需要8个和音乐播放按键一个,按键的个数不算多,虽然矩阵式键盘有其较高的灵敏性,但是,从编程角度出发,最终还是选择独立式键盘。如上所述,我们将会采纳方案二。2.5 软件的选择专业课程的学习中,KEIL、PROTEUS和STC_ISP.EXE等软件是嵌入式开发时常用软件。嵌入式系统开发程序,我们通常使用KEIL、PROTEUS和STC_ISP.EXE软件开发基于单片机的系统。KEIL软件是进行代码的编写软件,且可以检测代码编辑
22、是否出现错误和警告。PROTEUS软件是对硬件电路的仿真软件。STC_ISP.EXE软件是给STC单片机下载程序的软件。这三个软件对开发单片机系统具有高效的作用力。如上所述,三个软件我们都采纳。2.6 编程语言的选择基于单片机开发系统的编程语言,常见C语言和汇编两种。方案一:汇编的特点是效率高,对硬件的可操控性更强,体积小,不易维护,可移植性很差。方案二:C语言简洁紧凑、灵活方便、运算符丰富、数据类型丰富。C语言是结构式语言。它的语法限制不太严格,程序设计自由度大、生成目标代码质量高,程序执行效率高、适用范围大,可移植性好。如上所述,我们采取方案二。第3章系统需求分析本章介绍歌曲比赛抢答系统,
23、该系统可用于8组的智力竞赛。比赛前,我们将8个LED全部表示熄灭,K3-K10按键表示参赛选手,K1是主持人操作音乐的播放和停止操作,K2是主持人对歌曲曲目选择的操作。蜂鸣器是播放音乐。主持人按下K1键既播放音乐并等待音乐段播放停止后,选手开始抢答。而抢答选手首位抢答的信息将会在相对应的LED上发亮。之后,按下任何一路抢答按钮均不起反应。只有主持人再次启动系统或按下复位键后,才能进行下一次抢答。系统具有电路简单、成本较低、操作方便、灵敏可靠等优点,使用效果良好,具有较高的推广价值。3.1 系统设计目标歌曲比赛抢答器系统的主要功能包LED显示模块、按键模块、数码管显示模块和蜂鸣器播放音乐模块等4
24、个模块。这些模块主要由STC8951单片机的I/O端口、定时器和外部中断扩展功能来控制。其功能控制分别控制按键的操作、蜂鸣器的响应、LED和数码管的显示等。此次设计的主要目标是:1)实现8路选手的抢答。2)三首歌曲的播放或停止。3)供三段音乐切换并将歌曲曲目显示在数码管上。4)选手首位抢答成功,对应的LED闪亮。以此同时本系统将结束工作。3.2 系统功能需求根据需求调研结果确定本系统主要包括以下功能模块。本系统包括4个功能模块,LED显示功能模块、按键功能模块、数码管显示功能模块和蜂鸣器播放/停止歌曲功能模块。输入设备:此模块主要是按键的输入,采用独立式按键实现,每个按键代表着歌曲比赛抢答系统
25、中的参赛选手。参赛过程,每位参赛选手的机会是公平的。我们采用首位优先抢答模式,参赛选手能够在音乐播放停止后,以最快的速度抢答并且能答对播放的歌名,则表示该选手在这一次比赛中获得胜利。输出设备:本系统中有三个输出设备,分别是LED和数码管和蜂鸣器的输出。其中LED的输出与按键输入操作是相对应的,既8个LED灯D1-D8分别对应按键的是K3-K10,当K3首次按下时,则D1灯将会发亮。以此类推,按键的操作影响着LED的输出显示。其次,数码管是由K2按键控制,初始化时,数码管输出数字是“0”,首次按下K2键,则数码管将显示“1”的数字。本系统设计3段歌曲,故数码管输出的数字有“0”“1”“2”,每次
26、按键的按下的次数将进行累计,累计至3次就返回重新计数。最后,蜂鸣器的输出,单片机开发板上的K1键是控制歌曲的播放和停止的输出操作,首次按下K1时,则蜂鸣器输出对应的歌曲,在此操作下,我们再次按下K1,则蜂鸣器将停止播放该歌曲。控制设备:复位电路,复位是计算机的一个重要工作状态。在单片机工作时,接电之前要复位,断电后也要复位,发生故障也要复位,在抢答器中复位则是为定时做铺垫的,在抢答之前要复位,抢答完毕业要复位,按了复位键之后,LED的显示的是0。单片机的复位引脚RST(全称RESET)出现2个机器周期以上的高电平时,单片机就执行复位操作。整个复位电路包括芯片内外二部分。外部电路产生的复位信号通
27、过复位引脚RST进入片内的触发器(抑制噪声作用)再与片内复位电路相连。复位电路每个机器周期对触发器的输出采样一次。当RST引脚保持两个机器周期(24个时钟周期)以上的高电平时,STC89C51进入复位状态。控制接口其它业务模块的描述如表3.1所示。表3.1 控制接口其它业务功能功能编号功能名称功能描述优先级1音乐播放/停止按键接口主持人可操作音乐的播放和停止操作低210个按键接口10个按键表示参赛的选手高3数码管接口显示主持选择的音乐段低4蜂鸣器接口播放音乐低3.3 单片机引脚特殊功能特殊功能寄存器是80C51单片机中各功能部件对应的寄存器,用于存放相应功能部件的控制命令,状态或数据。它是80
28、C51单片机中最具有特色的部分,现在几乎所有80C51系列功能的增加和扩展都是通过增加特殊功能寄存器来达到目的的。英文缩写为SFR,是Special Function Register(特殊功能寄存器)的缩写。STC89C51特殊功能寄存器如下表3.2所示:表3.2 AT89C51特殊功能寄存器列表符号地址注释ACCE0H累加器BF0H乘法寄存器PSWD0H程序状态字SP81H堆栈指针DPL82H数据寄存器指针低8位DPH83H数据寄存器指针高8位IEA8H中断允许控制器IPD8H中断优先控制器P080H端口0P190H端口1P2A0H端口2P3B0H端口3PCON87H电源控制及波特率选择S
29、CON98H串行口控制器SBUF99H串行数据缓冲器TCON88H定时器控制TMOD89H定时器方式选择TL08AH定时器0低8位TL18BH定时器1低8位TH08CH定时器0高8位TH18DH定时器1高8位对于80C51系列中的80C51,共定义了21个特殊功能寄存器。在80C52中,除了80C51的21个特殊功能寄存器,还增加了5个,共计26个。表中带*号仅在52子系列单片机存在。SFR也是一种扩充数据类型,占用一个内存单元,值域为0255。利用它可以访问51单片机内部的所有特殊功能寄存器。如用sfr P1 = 0 x90定P1为P1端口在片内的寄存器,在后面的语句中我们可以用P1 = 2
30、55(对P1端口的所有引脚置高电平)之类的语句来操作特殊功能寄存器。SFR的地址空间为80HFFH,但是仅有21个(80C51子系列)或26个(80C52子系列)字节作为特殊功能寄存器离散分布在这128个字节范围内,其余字节无定义,用户也不能对这些单元进行读/写操作。3.4 歌曲比赛抢答器的工作流程硬件环境歌曲比赛抢答器的基本工作原理:在程序加载运行时,初始化数码管、K1键和K2键。在抢答的过程中,数码管显示电路、蜂鸣器播放音乐电路和LED显示电路等还要根据现场的实际情况向外部电路输出响应信号。抢答的工作流程分为系统复位和正常流程两部分。歌曲比赛抢答器的工作流程如下图3.1所示:图3.1 歌曲
31、比赛抢答器的工作流程3.5 集成开发环境系统:Windows7开发环境:KEIL uVison3 PROTEUS编程语言:C51硬件环境:单片机开发板3.6 系统非功能需求3.6.1 元器件的性能1)LED数码管的结构与主要特性LED数码管是由发光二极管构成的,亦称半导体数码管。若按规定使某些笔段上的发光二极管,就能显示从09的一系列数字。它具有体积小、功耗低、奶震动、寿命长、亮度高、单色性好、发光响应的时间短,现已广泛用作数字化仪表、数控装置、家用电器中的数显器件。工作电压1.55V,一般为1.52.5V,工作电流510mA,单色性好,高亮度、高频特性优良,工作温度范围为-30+80摄氏度,
32、高亮度管可在低电压和小电流(1mA左右)条件下工作。2)蜂鸣器的结构与主要特性本系统采用的蜂鸣器是有源蜂鸣器,也称压电式蜂鸣器。它是通过压电陶瓷片的压电效应使金属片振动而发出声响,直流电阻无限大,交流阻抗也很大。工作时需要较大的电压来驱动,但是电流只需要几毫安。功率也很小。频率特性比不上喇叭,能听出曲子的音质,作为曲子的响应即可。3)独立式按键结构与主要特性消抖,由于按键按下时的机械动作,在按键被按下或松开的瞬间,其输出电压会产生波动,称为键的抖动。为确保每一次键,单片机只进行一次处理,使键盘可靠地工作,必须消除按键抖动。消除方法有硬件消抖法和软件延时法两种。每个按键占用一条I/O线,当按键数
33、量较多时,I/O口利用率不高,但是程序编制简单,适用于所需按键较少的场合。3.6.2 系统的成本器件选型方案详细清单本系统选用的器件总成本比较低也方便实现。如选用微控制器STC89C51单片机、LED、一位共阳极数码管、按键,货源充足,并且价格也比较低。如表3.3所示。表3.3 系统的成本器件名称规格型号数量单价(元)微处理器STC89C5114电阻3WTT10K11电容20PF11晶振12MHZ10.5按键1027段数码管7SEG-MPX4-CA11蜂鸣器13LED823.7 系统技术可行性分析硬件电路的功能代码采用C语言编辑,C语言简洁紧凑、灵活方便、运算符丰富、数据类型丰富。C语言是结构
34、式语言。它的语法限制不太严格,程序设计自由度大、生成目标代码质量高,程序执行效率高、适用范围大,可移植性好。通过研究并在设计验证后发现,采用单片机技术设计的抢答器与目前常用的抢答器相比,首先,电路连接简单,因为大多数功能单元都通过程序设计在单片机内部,第二,工作性能可靠,抗干扰能力优于目前抢答器。所以本研究是一个实用的工程设计,具有创新性。第4章系统硬件电路实现4.1 复位电路设计单片机的第9脚RST为硬件复位端只需要该端持续4个机器周期的高电平即可实现复位后单片机的各状态都恢复到初始化状态,其电路图如图4.1所示图4.1 复位电路4.2 LED显示功能模块与按键功能模块LED模块就是把LED
35、(发光二极管)按一定规则排列在一起再封装起来,加上一些防水处理组成的产品,就是LED模组。所述的四边形模块的主视面上可带有用于模糊模块拼接界限的装饰结构。本着实用性和新型性从视觉和光学的角度出发,让直线形成错位短线条,利用视觉的直线性,人眼视觉从上往下(或左右方向移动)扫描时不能同时兼顾错位两条,势必形成无数个错位不连续短线段,从而彻底消除了因模块间的缝隙而形成的LED显示屏马赛克现象。LED模块是LED产品中应用比较广的产品,在结构方面和电子方面也存在很大的差异,简单的就是用一个装有LED的线路板和外壳就成了一个LED模组,复杂的就加上一些控制,恒流源和相关的散热处理使LED寿命和发光强度更
36、好。外围电路主要有输入设备和输出设备。输入设备主要由8个独立按键构成。输出设备由8个二极管构成。其中二极管保护电阻的取值范围为220-880欧姆之间。K3-K10按键是人与系统接触的主要设备,本次采用的独立式按键,独立式键盘的硬件电路简答,而且在程序设计上容易操作,一般用在硬件电路要求不高的简单电路中。按键流程图,如下图所示:图4.2 按键控制LED流程4.3 数码管显示功能模块数码管显示的原理现实生活中,我们经常使用的数码管是七段式和8段式LED数码管,8段式数码管比七段式数码管多加一个小数点。8段式数码管内部有8个LED发光二极管,通过输入二进制“0”和“1”的信息控制这8个LED发光二极
37、管的亮灭,根据数码管内部的8个LED的亮灭情况,显示出不同的数字与字母。数码管有共阴极和共阳极两种类型之分,区别在于公共端的连接。本系统采用的是共阳极数码管,共阳极数码管就是将8个LED的阳极与电源连接在一起,只需要向数码管内部的8个LED的公共端输入低电平就可以使共阳极的数码管发亮。其原理图如下图4.3、4.4、4.5所示。图4.3 引脚图图4.4 共阳极连接图其中引脚图的两个COM端连在一起,是公共端,共阴极的数码管要将公共端接地,而共阳极的数码管将公共端接在正5V电源上。一个8段数码管被称为一位数码管,多个数码管并列在一起可构成多位数码管,它们的段选线(即a、b、c、d、e、f、g、dp
38、)连在一起,而各自的公共端都被称是位选线。显示时,都从段选线送入字符编码,而选中哪个位选线,那个数码管便会被点亮。数码管的8段,对应一个字节的8位,a对应最低位,dp对应最高位。如果数码管要显示数字“0”,那么共阴极数码管的字符编码为00111111,即0 x3f;共阳极数码管的字符编码为11000000,即0 xc0。可以看出两个编码的各位正好相反。如下图。图4.5 共阳极共阳极的数码管0f的段编码是:unsigned char code table= /共阳极0f数码管编码0 xc0,0 xf9,0 xa4,0 xb0,/030 x99,0 x92,0 x82,0 xf8,/470 x80
39、,0 x90,0 x88,0 x83,/8b0 xc6,0 xa1,0 x86,0 x8e /cf;4.4 蜂鸣器歌曲播放功能模块蜂鸣器歌曲产生原理。音调的高低用音阶表示,不同的音阶对应不同的频率。因此,不同频率的方波就可以产生音阶,音阶与频率的关系见表4.1。表4.1 音阶与频率的关系及方式1定时器的初值音阶频率(Hz)定时器初值音阶频率(Hz)定时器初值音阶频率(Hz)定时器初值11310F85EH1262OFC2FH15230FE17H21470F933H2294OFC99H25870FE4CH31650F9F0H33300FCF8H36590FE7CH41750FA49H43490FD
40、22H46980FE91H51960FAE6H53920FD73H57840FEB9H62200FB74H64400FDBAH68800FEDDH72470FBF4H74940FDFAH79880FEFDH000100H000100H000100H低8度音中音高8度音注:0表示简谱中的空拍。由于频率的倒数是周期,因此可由单片机中的定时控制方波周期,当定时器计数溢出时产生中断。将与扬声器连接的P3.7,取反之后就可得到方波的周期,从而达到了控制频率,即音阶的目的。播放模块是由8550NPN三极管和电磁蜂鸣器组成。STC89S51输出高电平控制信号,启动8550NPN三极管使信号放大,从而启动电磁
41、蜂鸣器。当晶体振荡频率为6.144MHz,定时器工作在方式1下时,若各音阶相对应的定时器计数初值为X,则可根据下式计算X:1/ (f*2) = (216-X)*12/(6*106)音调的长短用节拍数表示(例如1/4拍、2/4拍、),不同节拍数的不同音符的组合形成乐谱。程序中,音的节拍可由延时子程序实现。延时子程序设定为四分之一拍,节拍值只能是它的整数倍数。程序由主程序开始,进入主程序之后,初始化单片机和外设。首先是进入歌曲序号的判断,数码管并从“0”序号显示开始。通过对K1和K2按键的中断使歌曲序号的改变和音乐的播放与停止。如未有K3-K10按键的中断进入,此程序可反复运行。图4.4为音乐播放
42、流程图,如下所示:图4.4 音乐播放流程图键控子程序主要由播放/暂停子程序、上一曲子程序、下一曲子程序组成,分别由一个计数器中断和两个外部中断实现。播放/暂停子程序播放/暂停在程序利用内部中断T0口。将T0口设为计数中断并工作在方式。4.5 系统功能框图歌曲比赛抢答系统主要功能模块由数码管显示功能模块、LED显示电路功能模块、蜂鸣器功能模块和按键功能模块组成。歌曲比赛抢答系统功能框图如下图4.5所示。图4.5 系统功能框图大连东软信息学院毕业设计(论文)第5章软件配置环境5.1 KEIL软件环境配置KEIL编程软件环境配置。“新建(New)”菜单,在集成开发环境中执行菜单命令“File”“Ne
43、w”。打开文本编辑窗口,单击“New”命令出现Text1文本编辑窗口。此时,可在Text1中编写C语言程序。保存文件,执行菜单命令“File”“Save As”,弹出“Save As”对话框。输入文件名并保存在设定的目录中。建立工程项目文件。建立工程项目需要4步:(1)填写新工程项目名称;(2)选择单片机型号(3)设置输出选项;(4)向项目工程里添加源程序。填写新工程项目名称。执行菜单命令“Project”(工程)“New Project”(新工程)。之后弹出保存工程项目对话框。在文件名文本框中输入新工程名,然后单击“保存”按钮。选择单片机型号,单击“保存”按钮后,弹出选择单片机型号对话框。在
44、对话框的列表中选择“Atmel”(厂商名),单击Atmel前边的“+”符号后,会展是该公司生产的所有单片机型号,从中选择“AT89C51”。设置输出选项。用鼠标右键单击窗口左边的“Target 1”,并在弹出的快捷菜单中点击“Options for Target”命令,在弹出的“Options for Target”对话框中选择“Output”标签页,勾选“Debug information”菜单选项及“Create HEX file”两个复选框,表示在输出的HEX可执行文件过程中,产生调试的相关文件,方便调试用。项工程项目里添加源程序。点击“Target 1”前面的“+”符号,展示里边的内容
45、,用右键剪辑“Source Group 1”,在弹出的快捷菜单中点击“Add File to Group Source Group 1”命令,点击添加文件命令后,弹出“Add File to Group Source Group 1”对话框,把文件类型设置为“*.c”。单击“Close”按钮关闭对话框,完成项工程项目里添加源程序的任务。产生可执行的HEX文件,点击rebuilt all target file,则进行汇编、编译和链接操作,产生可执行的HEX文件。通过集成开发软件生成的“*.HEX”可执行文件,也称为目标文件。需要STC_ISP终端软件将目标文件写入单片机。5.2 PROTEUS
46、软件环境配置使用PROTEUS软件绘制硬件电路图,需要在该软件中选择相对应的配置,其步骤如下:1)在Template菜单中进行设置,PROTEUS软件配置环境的设置主要是定义图形外观,如线型、填充类型、字符样式、图纸样式等。2)放置电路图中所需的元器件,需要我们寻找该元器件并将其添加在对象选择窗口,点击对象选择器按钮,弹出一个命名为Pick Devices的对话框,并在Keywords字幕的提示下栏中输入要寻找的元器件的关键名称。系统会在对象库中自动匹配到该元器件,并在Results栏中显示查找到该元器件的结果。如果没有查找到该器件,说明输入的是错误的元器件关键词。选中并确定该元器件,系统将自
47、动存放到图形编辑窗口;在对象选择器栏中,通过选中元器件,将鼠标放置在图像编辑窗口合适的位置,点击鼠标左键将元器件放置成功。3)元器件之间的连线。PROTEUS具有线路自动跟踪路径功能,当确定两个连接点之后,WAR的功能是自动匹配一个合适的路径连线痕迹。标准的工具栏中有会有此命令按钮,当然,在“Tools”菜单栏下可以寻找到该图标。4)生成网络表。电路板与电路原理图之间的纽带既是生成网络表,建立的网络表应用于印制电路板。使用菜单栏下的Tools/Netlist Compiler命令工具可实现此功能。5)排除电气的存在。成功的完成电路设计之后,选择Tools/Electrical Rule Che
48、ck菜单工具,会弹出一个电气检测有无的结果窗口,上部分是一些文本信息,下部分是电气的检测列表,若存在错误信息,将显示相应的定位提示和说明,用户通过提示的信息找到修改之处改电路图即可。6)报表主要输出的信息包括BOM(材料清单报表)、ERC(电气规则检查报表,可在菜单Tools/Bill of Materalsk 实现)等。5.3 PROTEUS与KEIL联合调试软件配置PROTEUS与KEIL联合调试应用软件。1)打开PROTEUS电路图仿真软件,在Debug菜单中找到并选中Use Remote Debug monitor菜单项。2)打开KEIL代码编辑软件,新建一个项目,在Project菜单
49、中找到并选中Options for Target Target1菜单项;会弹出一个对话框,在对话框中找到并选中Debug选项栏,在Debug选项栏中的右上方位置找到Use单选按钮,点击该Use列表框的下拉菜单,在弹出选择的列表项中选择PROTEUS VSM simulator项,选择之后点击右侧的Setting按钮并弹出VDM51 Target Setup对话框。因为KEIL新建的项目和PROTEUS原理图在同一台计算机中,所以IP地址默认为127.0.0.1;端口地址默认为8000。最后在Debug选项栏中勾选run in to main()选项并保存配置。3)完成第二步操作之后,在KEIL
50、中点击star/stop Debug session进入软件的调试运行,再点击step in之后,进入一步一步的程序调试中,同时可以在PROTEUS中观察到硬件系统运行的效果。安装KEIL和Ptoteus两个软件之后,并进行相应的设计与设置,就可以进行硬件系统的测试及开发设计,从而实现最终的歌曲比赛抢答器的设计。大连东软信息学院毕业设计(论文)第6章系统测试歌曲比赛抢答器系统最终测试,首先是经过PROTEUS电路图仿真软件进行测试,测试方式是将系统的单一模块拆分出来进行测试,如果各个模块都测试成功。再根据测试成功的焊接成电路板。最终成果物也采用单一模块的测试方式,快速且方便查出具体模块出现的错
51、误。测试概述软件测试是通过PROTEUS、KEIL和KEIL驱动软件测试系统的各个模块功能的实现过程。在长期开发系统过程中,避免造成实物的损坏。我们采取的办法是:1)使用PROTEUS软件仿真硬件电路图。2)使用KEIL软件编译代码。3)使用KEIL驱动软件,协调PROTEUS和KEIL之间的工作。最后的实物测试,即在单片开发板上测试系统功能的实现过程。6.2 测试用例6.2.1 数据发送最后的实物测试,即在单片开发板上测试系统功能的实现过程。首先用杜邦线将外部的各个模块链接到对应的单片机引脚上,再检测杜邦线是否连接正确。其次将本歌曲比赛抢答器的系统代码通过STC_ISP终端软件烧写到开发板上
52、,即将KEIL软件产生的.HEX文件下载到单片机上,最后是在单片机上进行测试,查看开发板上的各个模块功能是否正确运行,例如首次按下K1键,则蜂鸣器将依据数码管显示的歌曲曲目播放歌曲,第二次按下K1键,则蜂鸣器将停止播放歌曲,如上述所述,证明歌曲比赛抢答器的歌曲播放或停止功能成功运行;如果按下K2键,则数码管将根据K2键按下的次数显示不一样的数字,显示数字有三个,既“0”、“1”、“2”数字,这三个数字代表着歌曲比赛抢答器系统中有三首曲子;如K3-K10按键按下,则对应的LED将发亮。6.2.2 模块最终的测试本系统各个模块最终的测试是将焊接好的外围设备与开发板链接,通过STC_ISP软件将编辑
53、好的程序写入单片机并可进行检测。首先LED的检测,将流水灯的.HEX文件写入单片机即可观测检验的结果;.HEX文件写入单片机即可观测检验的结果;蜂鸣器的检测,将演奏一段音阶的.HEX文件写入单片机即可观测检验的结果。最后将歌曲比赛抢答器的.HEX文件写入单片机即可观测检验的结果。大连东软信息学院毕业设计(论文)第7章结论通过这段时间对歌曲比赛抢答器的设计与实现,我学会了许多课本上学不到的知识,同时也加强了我的动手、思考、和解决问题的能力,收益匪浅。完成歌曲比赛抢答器的设计并成功焊接电路板,使之能够正常运行。撰写一篇关于所设计的报告,内容包括:设计中所涉及的技术知识,各部分电路的组成及功能,设计
54、的方法与步骤,设计中的心得体会和对以往所学知识的理解等内容。研究过程是对专业知识的巩固与加强,课本的知识太多,要想截取来自本系统设计的知识点,必须多阅读课本并抓获最有用的信息。查阅资料,熟悉组成8路多功能抢答器的技术指标和质量指标,初步构思出整体电路。熟悉仿真软件PROTEUS的使用,画出8路多功能抢答器电路图,利用KEIL软件编写程序,并进行仿真,根据仿真结果进行分析比较,得出具体的设计电路图。购买元器件,检测元器件,按照电路原理图焊接成实物;完成毕业设计论文。了解本系统所需元件的原理和功能并保证后期的工作,前期工作使用软件的仿真。回顾前段时间学习的STC_ISP、KEIL和PROTEUS软
55、件。首先,在PROTEUS电路图仿真软件中建立一个设计、布局元件、保存设计和写入.HEX文件等操作。其次,在KEIL软件中建立工程、编写正确的代码、产生.HEX文件等操作。最后,正确地将开发板连接到计算机上,通过STC_ISP终端软件将.HEX文件写入单片机中即可使用。焊接工作,按照元件的电路原理图进行连接并焊接到目标板上。将仿真正确的.HEX文件烧写到开发板的单片机上,连接好模块与模块之间的工作,在此之前可以进行模块与模块之间的连接工作。打开开关,进行检测实物。如按照系统的设计思路检测完成工作,并说明系统的最终成果设计与实现成功。否者检查焊接电路是否出现错误或是元件是否符合系统要求。如本系统
56、在最初实物检测时,如果有K3-K10按键按下,对应的LED未发现响应。此时,通过观察按键工作原理和LED的工作原理,在按键的4个引脚之间的链接上检查出错误,更改引脚之间的连接即可得到正确的结果。除此之外,本系统在数码管不符合本系统。由于数码管的共阴极和共阳极之分,在选择数码管之前,本系统应该采购的是共阳极的数码管。如果不更换共阴极的数码管,也可以从改变硬件电路和代码下手,既先将数码管的共阳极接电源的正极,然后把数码管的笔画电极a、b、c、d、e、f、g和小数点电极各接一个pnp小功率三极管。其笔画电极接在三极管的发射极,集电极串联一个电阻接电源负极,三极管的基极串联电阻后接在原来的数码管的输出
57、端a、b、c、d、e、f、g、j即可,本系统为采用此方案。从前的学习过程过于肤浅,只是对专业知识表面的理解,而现在要做的毕业设计的内用比书本上的理论知识而言,就接近于显示生活,而理论到实践的转化往往是一个艰难的过程,只要有坚定的心态,分析实现的过程,把这个过程细小化,通过探讨和搜索资源,一步一步完成整个过程。参考文献1 袁东51单片机应用开发实战手册M,电子工业出版社,20112 彭伟单片机C语言程序设计实训100例基于8051+PROTEUS仿真M,电子工业出版社,20093 李建忠单片机原理及应用(第二版)M,西安电子科技大学出版社,20084 刘高锁单片机系统开发=single chip microcomputer system development technol
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 虚拟现实健身器材体验与选购创新创业项目商业计划书
- 农垦种植业智能化管理系统创新创业项目商业计划书
- 2025年数字艺术展览展示技术应用现状与观众满意度调查报告
- 定制化产品研发管理流程全解析
- 兰花种植技术咨询服务创新创业项目商业计划书
- 汽车爱好者社交与改装交流创新创业项目商业计划书
- 兰花园艺装饰服务创新创业项目商业计划书
- 肿瘤患者的心理反应特征
- 信息技术研修心得
- 2023年初中生物模拟试题全解析
- 2025年教师招聘考试教育法律法规高分题库及答案(共101题)
- 电厂水处理值班员(第二版)中级工
- DBJ04-T 312-2024 湿陷性黄土场地勘察及地基处理技术标准
- 电子信息科学与技术单选题100道及答案解析
- (一模)2025年广东省高三高考模拟测试 (一) 政治试卷(含官方答案)
- 研学基地的运营模式与管理
- 2020低压交流配网不停电作业技术导则
- 政府采购招标代理服务风险控制措施
- 易制毒、易制爆化学品安全培训
- 《融水香杉育苗技术规程》
- 美的MBS精益管理体系
评论
0/150
提交评论