您好,欢迎访问三七文档
黑龙江科技学院课程设计任务书一、设计题目:二、设计的主要内容:指导教师:日期:教师评语:评阅成绩:评阅人:日期:黑龙江科技学院课程设计任务书一、设计题目:六路抢答器的设计二、设计的主要内容:(1)抢答器分为6组,每组序号分别为1、2、3、4、5、6,按键SB0-SB5分别对应6组,抢答者按动本组按键,组号立即在LED显示器上显示,同时封锁其他组的按键信号。(2)系统外设清除键,按动清除键,LED显示器自动清零灭灯。(3)数字抢答器定时为30s,通过控制键启动抢答器后,要求30s定时器开始工作,发光二级管点亮。(4)抢答者在30s内进行抢答,则抢答有效,如果30s定时到时,无抢答者,则本次抢答无效,系统短暂报警。(5)抢答者违规显示。指导教师:于海英日期:教师评语:评阅成绩:评阅人:日期:摘要本设计的抢答器是一种比较简易的抢答器,没有使用特别多的复杂的元器件。它是以VHDL硬件描述语言作为平台,结合上机动手实验而完成的。它的特点是电路简单、制作方便、操作简单、方便、性能可靠,实用于多种智力竞赛活动。本抢答器的电路主要完成:设计一个六路抢答器,实现开始一定时间后,开始抢答状态,可以判定是哪个信号抢答的,同时封锁其他信号,如果过了抢答时间,仍然没有抢答或者出现抢答者同时抢答时,那么就报警。这个抢答器设计基本上满足了实际竞赛应用中的各种需要。在实际中有很大的用途。关键词:抢答器VHDL竞赛第1章六路抢答器概述本章主要介绍六路抢答器的设计要求与设计目的。1.1设计目的本设计的目的就是在掌握MAXPLUS实验开发系统的初步使用基础上,了解并掌握VHDL硬件描述语言的设计方法和思想,并通过学习的VHDL语言结合电子电路的设计知识理论联系实际,掌握所学的课程知识,学习VHDL基本单元电路的综合设计应用。通过对六路抢答器的设计,巩固和综合运用所学课程,理论联系实际,提高设计能力,提高分析、解决计算机技术实际问题的独立工作能力。同时通过课程设计,深入理解VHDL语言的精髓和掌握运用所学的知识,达到课程设计的目标。1.2设计要求本文设计了一个六路抢答器,其具体功能如下:(1)抢答器分为6组,每组序号分别为1、2、3、4、5、6,按键SB0-SB5分别对应6组,抢答者按动本组按键,组号立即在LED显示器上显示,同时封锁其他组的按键信号。(2)系统外设清除键,按动清除键,LED显示器自动清零灭灯(3)数字抢答器定时为30s,通过控制键启动抢答器后,要求30s定时器开始工作,发光二级管点亮。(4)抢答者在30s内进行抢答,则抢答有效,如果30s定时到时,无抢答者,则本次抢答无效,系统短暂报警。(5)抢答者违规显示。第2章六路抢答器设计思想本章主要介绍目前市场上的抢答器存在的问题,同时详细的描述了本文设计的六路抢答器的设计思想。2.1问题描述无论是在学校、工厂、军队还是益智性电视节目,都会举办各种各样的智力竞赛,都会用到抢答器。目前市场上已有各种各样的智力竞赛抢答器,但绝大多数是早期设计的,以模拟电路、数字电路或者模拟电路与数字电路相结合的产品。这部分抢答器已相当成熟,但功能越多的电路相对来说就越复杂,且成本偏高,故障高,显示方式简单(有的甚至没有显示电路),无法判断提前抢按按钮的行为,不便于电路升级换代。本设计就是基于VHDL设计的一个智力竞赛抢答器尽量使竞赛真正达到公正、公平、公开。本文所设计的抢答器是一种比较简易的抢答器,没有使用特别多的,复杂的元器件。它是以VHDL硬件描述语言作为平台,结合动手实验而完成的。它的特点是电路简单、制作方便、操作简单、方便、性能可靠,实用于多种智力竞赛活动。2.2功能实现本文是设计的一个六路智力竞赛抢答器,利用VHDL设计抢答器的各个模块,并使用MAXPLUS工具对各模块进行仿真验证。本抢答器的功能主要有四部分:计时以便给抢答人准备时间、抢答部分用于确定抢答信号、同时抢答报警,超过抢答时间无人抢答报警。这个抢答器设计基本上满足了实际比赛应用中的各种需要。在实际中有很大的用途。把各个模块整合后,通过输入输出对应关系连接起来。设计成一个有如下功能的抢答器:(1)计时以便给抢答人准备时间。可以设置一段时间,用以给抢答人准备时间,同时出题人利用这段时间出题。(2)抢答部分用于确定抢答信号。在出题人发出抢答指令后,若有参赛者按抢答器按钮,则该组指示灯亮,显示器显示出抢答者的组别。同时电路处于自锁状态,使其他组的抢答器按钮不起作用。(3)同时抢答报警。如果在抢答时间内,同时有多于或等于两个人同时抢答,那么报警,此次抢答失效。(4)超过抢答时间无人抢答报警。如果在抢答时间过后,仍然无人抢答,那么报警,此次抢答失效。第3章六路抢答器设计过程3.1输入输出设计抢答器分为6组,每组序号分别为1、2、3、4、5、6,按键sb0-sb5分别对应6组,抢答者按动本组按键,组号立即在LED显示器上显示,同时封锁其他组的按键信号。具体实现:(1)系统外设清除键,按动清除键,LED显示器自动清零灭灯。(2)数字抢答器定时为30s,通过控制键启动抢答器后,要求30s定时器开始工作,发光二级管点亮。(3)抢答者在30s内进行抢答,则抢答有效,如果30s定时到时,无抢答者,则本次抢答无效,系统短暂报警。(4)抢答者违规显示。(5)在抢答时间内,同时抢答,报警!3.2具体方案设计因为设计的是六路抢答器,所以系统的输入信号有:各组的抢答按钮sb0,sb1,sb2,sb3,sb4,sb5。系统清零信号clear,系统时钟信号clock,抢答开始端start;系统的输出信号有:六个组抢答成功与否的指示灯控制信号输出口led_7,出错报告端alarm,上升沿计数端counter,六个组抢答时的计时数码显示控制信号阶段划分端status(status是根据计数的多少,来划分阶段,第一阶段是start,出题时间,不许抢答,否则违规。第二阶段是抢答阶段。第三阶段是如果超过抢答时间内,仍然没有人按的话,就报警。)根据以上的分析,我们可以设计抢答器的程序。第4章六路抢答器实验结果通过二周的紧张工作,最后完成了我的设计任务——基于VHDL的六路抢答器的设计。通过本次课程设计的学习,我深深的体会到设计课的重要性和目的性所在。本次设计课不仅仅培养了我们实际操作能力,也培养了我们灵活运用课本知识,理论联系实际,独立自主的进行设计的能力。它不仅仅是一个学习新知识新方法的好机会,同时也是对我所学知识的一次综合的检验和复习,使我明白了自己的缺陷所在,从而查漏补缺。希望学校以后多安排一些类似的实践环节,让同学们学以致用。本次设计六路抢答器通过MAXPLUS的仿真波形图,有如下三种情况:情况一:无抢答者抢答时:此时各组的抢答按钮sb0,sb1,sb2,sb3,sb4,sb5都为0。此时系统控制信号输出口led_7都为0,出错报告端alarm为0,上升沿计数端counter不计数。仿真波形图如图4-1无抢答仿真波形图所示。图4-1无抢答仿真波形图情况二:有抢答者违规时:当系统清零信号clear为1时,有强大者抢答时,系统的出错报告端alarm为1,表示抢答出错,仿真波形图如图4-2违规抢答仿真波形图所示。图4-2违规抢答仿真波形图情况三:抢答者按规抢答时:当抢答开始端start为1;系统清零信号clear为0,且各组的抢答者在规定时间内有抢答时系统时钟信号clock,系统的输出信号led_7显示哪个抢答者抢答有效,上升沿计数端counter记录Start每次为1时上升沿的个数。仿真波形图如图4-3按规抢答仿真波形图所示。图4-3按规抢答仿真波形图第5章结束语通过二周的紧张工作,最后完成了我的设计任务——基于VHDL的六路智力竞赛抢答器的设计。通过本次课程设计的学习,我深深地体会到设计课的重要性和目的性所在。本次设计课不仅仅培养了我们实际操作能力,也培养了我们灵活运用课本知识,理论联系实际,独立自主的进行设计的能力。它不仅仅是一个学习新知识新方法的好机会,同时也是对我所学知识的一次综合的检验和复习,使我明白了自己的缺陷所在,从而查漏补缺。希望学校以后多安排一些类似的实践环节,让同学们学以致用。在设计中要求我要有耐心和毅力,还要细心,稍有不慎,一个小小的错误就会导致结果的不正确,而对错误的检查要求我要有足够的耐心,通过这次设计和设计中遇到的问题,也积累了一定的经验,对以后从事集成电路设计工作会有一定的帮助。在应用VHDL的过程中让我真正领会到了其并行运行与其他软件顺序执行的差别及其在电路设计上的优越性。用VHDL硬件描述语言的形式来进行数字系统的设计方便灵活,利用EDA软件进行编译优化仿真极大地减少了电路设计时间和可能发生的错误,降低了开发成本,这种设计方法必将在未来的数字系统设计中发挥越来越重要的作用。参考文献[1]候伯亨《VHDL硬件描述语言与数字逻辑电路设计》,西安电子科技大学出版社,1999年出版[2]邢建平,曾繁太《VHDL程序设计教程》,清华大学出版社,2005年出版[3]沈明山《EDA技术及可编程器件应用实训》科学出版社,2004年出版[4]宋卫海,王明晶《数字电子技术》山东科学技术出版社,2005年出版[5]曾繁泰,陈美金《VHDL程序设计》清华大学出版社,2004年出版[6]潘松《VHDL实用教程》电子科技大学出版社,2004年出版附录1六路抢答器源程序--*************************--****--*6inputanswerdevice***--*Author:JiangXiuming***--****--*****************************libraryIEEE;useIEEE.std_logic_1164.all;useieee.std_logic_arith.all;useieee.std_logic_unsigned.all;entityanswer1isport(clock:inSTD_LOGIC;sb:inSTD_LOGIC_VECTOR(5downto0);clear:inSTD_LOGIC;start:inSTD_LOGIC;alarm:outSTD_LOGIC;led_7:outSTD_LOGIC_VECTOR(7downto0);status:bufferSTD_LOGIC_VECTOR(1downto0);counter:bufferSTD_LOGIC_VECTOR(7downto0));endanswer1;architectureanswer1_archofanswer1issignalover:STD_LOGIC;signalover_r:STD_LOGIC;signalsb_flag:STD_LOGIC;beginprocess(clock,clear,counter)--counterfor30'sbeginifclock'eventandclock='1'thenifclear='1'thencounter=00000000;elsifclear='0'andstart='1'thencounter=counter+'1';--else--counter=00000000;endif;endif;endprocess;process(counter)beginifcounter=00000111thenstatus=00;elsifcounter=00001111then--first30'status=01;elsifcounter=00010100then--second30'status=11;else--third5'status=10;endif;endprocess;process(clock,sb,clear,sb_flag,start,status)beginifclock'eventandclock='1'thenifclear='1'thenalarm='0';led_7=00000000;over='0';elsifstart='0'th
本文标题:六路抢答器的设计
链接地址:https://www.777doc.com/doc-3150718 .html