信息与电气工程学院硬件描述语言课程设计设计说明书(数字式竞赛抢答器))学生姓名学号班级成绩指导教师通信工程系年月日信息与电气工程学院课程设计评阅人评语评阅人:(签名)年月日评阅人评定成绩:信息与电气工程学院课程设计任务书—学年第一学期专业:通信工程学号:姓名:课程设计名称:硬件描述性语言设计题目:数字式竞赛抢答器完成期限:自年月日至年月日共周设计依据、要求及主要内容(可另加附页):一般来说,设计一台智能抢答器,必须能够准确判断出第一位抢答者,并且通过数显、蜂鸣这些途径能让人们很容易得知谁是抢答成功者,并设置一定的回答限制时间,让抢答者在规定时间内答题,主持人根据答题结果实行增减分的操作,并将分数显示在屏幕上,评出最终赢家。
所以我们在设计智能抢答器的模块需要满足鉴别、计时、计分、数显等功能。
定时抢答器的工作过程是:接通电源时,主持人将开关置于“清除”位置,抢答器处于禁止工作状态,编号显示器灭灯;抢答开始时,主持人将控制开关拨到“开始”位置,发光二极管灯亮,抢答器处于工作状态,这时,抢答器完成以下工作:(1)优先编码器电路立即分辨出抢答者编号,并由锁存器进行锁存,然后由译码显示电路显示编号;(2)扬声器发出短暂声响,提醒主持人注意;(3)控制电路要对输入编码电路进行封锁,避免其他选手再次进行抢答;(4)当选手将问题回答完毕,主持人操作计分开关,计分电路采用十进制加减计数器、数码管显示。
本轮抢答完毕,主持人操作控制开关,使系统回复到禁止工作状态,以便进行下一轮抢答。
指导教师(签字):系主任(签字):批准日期:年月日摘要在目前,可编程逻辑器件、单片机、已经成为数字系统的硬件基础,而从事数字系统的设计必须掌握可编程逻辑器件的设计方法,而语言是一种标准的数字系统硬件电路设计语言,为所有可编程逻辑器件厂商所支持,已成为电路设计人员和电子设计工程师必须掌握的工具。
语言是培养信息类专门人才的一门必修的专业基础课程。
通过本次课程设计,使我们能够学习和掌握现代电子系统设计的新技术、新器件,掌握硬件描述语言的编程技术和硬件描述方法,能够对设计系统进行规范描述掌握相关软件的使用,操作。
能对语言程序进行编译,调试,以及通过计算机仿真,得到正确的仿真波形图,并根据所得仿真波形图分析判断并改进所设计的电路。
当今的社会竞争日益激烈,选拔人才,评选优胜,知识竞赛之类的活动愈加频繁,那么也就必然离不开抢答器。
而现在的抢答器有着数字化,智能化的方向发展,这就必然提高了抢答器的成本。
鉴于现在小规模的知识竞赛越来越多,操作简单,经济实用的小型抢答器必将大有市场。
本抢答器通过十分巧妙的设计仅用两块数字芯片便实现了数显抢答的功能,与其他抢答器电路相比较有分辨时间极短、结构清晰,成本低、制作方便等优点,并且还有防作弊功能。
因此,我们制作了这款简易抢答器摒弃了成本高,体积大,而且操作复杂。
我们采用了数字显示器直接指示,自动锁存显示结果,并自动复位的设计思想,因而本抢答器具有显示直观,不需要人干预的特点。
而且在显示时抢答器会发出叮咚声使效果更为生动。
工厂、学校和电视台等单位常举办各种智力竞赛, 抢答记分器是必要设备。
关键词:;;;抢答器;目录.设计目的………………………………………………………………….设计内容………………………………………………………………….电路工作原理………………………………………………………………….数字式竞赛抢答器工作原理……………………………………………循环彩灯工作原理…………………………………………….主要程序和仿真结果………………………………………………………数字式竞赛抢答器设计与仿真结果…………………………………循环彩灯设计与仿真结果……………………………………….心得体会…………………………………………………………………参考文献…………………………………………………………………………1.设计目的学习公司的的结构、特点和性能。
学习集成开发软件的使用及设计过程。
熟悉工具设计数字电路设计方法,掌握硬件描述语言设计方法。
根据给定题目设计数字电路,来加深对可编程逻辑器件的理解和掌握。
通过本次课程设计,熟练掌握的应用,操作,并对语言的编程做一实践检验,编出程序,并进行仿真,并根据所得仿真图形分析和推断并改进所涉及的程序,让程序在现实生活中得以更贴近的应用。
. 设计内容设计一个可容纳四组参赛者同时抢答的数字抢答器,可判断第一抢答者并报警指示抢答成功,其他组抢答均无效。
若提前抢答则对相应的抢答组发出警报。
同时还具有计分功能,若抢答成功并回答正确增加分,答错不扣分。
设计一个循环彩灯控制器,该控制器控制红,绿,黄三个发光管循环点亮。
要求红发光管亮秒,绿发光管亮秒,黄发光管亮秒。
3.电路工作原理3.1数字式竞赛抢答器工作原理此抢答器的设计中采用自顶向下的设计思路,运用硬件描述语言对各个模块进行层次化、系统化的描述,并且先设计一个顶层文件,再把各个模块连接起来。
系统的总体框图如下:图系统的总体框图根据对抢答器的功能要求,把要设计的系统划分为五个功能模块:抢答信号鉴别模块、计时模块、计分模块、数码显示模块和扬声器控制电路,具体的说,显示模块又包含最先抢答的组别显示电路、计时值显示电路和计分显示电路。
计时模块、计分模块、数码显示模块和扬声器控制电路,具体的说,显示模块又包含最先抢答的组别显示电路、计时值显示电路和计分显示电路。
抢答鉴别模块抢答鉴别模块用来准确直观地判断、、、四组抢答者谁最先按下按钮,并为显示端送出信号,通过数显和蜂鸣等途径使观众能够清楚地知道是哪一组抢答成功,是整个系统的核心部分。
同时组别显示端为下一模块输入信号,以方便主持人为该组抢答成功者进行加减分的操作。
抢答鉴别模块的元件图如下图所示:图鉴别模块元件框图引脚作用:输入信号:各组的抢答按钮、、、,系统清零信号。
输出信号:各组的抢答按钮显示端、、、,组别显示端[]。
原理:第一个按下键的小组,抢答信号判定电路通过缓冲输出信号的反馈将本参赛组抢先按下按键的信号锁存,并且以异步清零的方式将其他参赛组的锁存器清零,组别显示、计时和计分会保存到主持人对系统进行清零操作时为止。
当时系统复位,使组别显示信号,各组的指示灯信号,,,;当,即低电平有效,使其进入抢答鉴别状态,到的上升沿到来时,以组抢答成功为例,当输入信号为,,,,输出信号,,即为鉴别出组抢答成功,同时屏蔽其他组的输入信号,以免发生错误。
同理其他组别抢答成功也是这样的鉴别过程。
备注:理论上来说,、、、四组抢答,应该有从—等种可能情况,但是由于时钟信号的频率很高而且是在时钟信号上升沿的状况下才做出的鉴别,所以在这里两组以上同时抢答成功的可能性非常小,因此可以只设计四种情况,即、、、分别为、、、,这大大简化了电路的设计复杂性。
其用语言进行编程的流程图如下图所示:图抢答鉴别模块的流程图计时模块当抢答鉴别模块成功判别出最先按下抢答按钮的参赛组后,在成功鉴别出哪组最先抢答后,主持人按下计时信号,则进入计时状态。
计时模块可分作两部分:()预置数;()秒倒计时。
秒时间用两个数码管,显示,其中表示秒的个位,表示秒的十位。
计时模块开始工作从预置初始值开始以秒计时,计时至秒时停止,时间耗尽时,扬声器会发出超时报警信号,以中止答题。
图计时模块的元件图该系统输入信号有:系统清零信号,计时预置控制端,计时使能端,系统时钟信号,计时预置数据调整按钮、。
系统输出信号有:倒计时输出端[]、[]。
当清零信号时,模块输出信号,。
当预置数控制信号可通过来调整,来一次高电平,则的数值就加;用来调整,通过这两个调整信号可调整参赛者答题所需要的时间。
在,时,通过时钟信号的上升沿来进行秒到计时。
其用语言进行编程的流程图如下:图抢答计时模块的流程图计分模块计分模块的运行方式是按照十进制进行加减,即当时钟出现上升沿时就进行加一或者减一的操作。
记分模块为哪组进行记分取决于鉴别模块的输入信号,当时表示组最先抢答,则在此模块中为组记分,当时表示组最先抢答,则在此模块中为组记分,当时表示组最先抢答,则在此模块中为组记分,当时表示组最先抢答,则在此模块中为组记分。
以组为例来说明此模块的设计,当复位信号时,系统复位且组的分值显示初始值,为分。
当时,如果该组选手答题正确,则主持人按下加分键,即,此时对该组进行加分操作;如果该组选手答题错误,则主持人按下减分键,即,此时对该组进行减分操作。
计分模块的元件图如下图所示:图计分模块的元件图系统的输入信号有:计分复位端,加分按钮端,减分按钮端,组别号输入端[]。
系统的输出信号有:组分数输出端[]、[]、[],组分数输出端[]、[]、[],组分数输出端[]、[]、[],组分数输出端[]、[]、[]。
计分模块用语言进行编程的流程图如下:图计分模块的设计状态图注:在设计中减法的实现是以加法运算来实现的。
也以为例,由于每次减分都是减去分,即每次为减一,所以可以用""来实现。
如:,用加法实现:。
由于: ( ),所以。
译码显示模块该模块实际上是一个译码器,译码器是组合逻辑电路的一个重要的器件,其可以分为:变量译码和显示译码两类。
变量译码一般是一种较少输入变为较多输出的器件,一般分为译码和码译码两类。
显示译码主要解决二进制数显示成对应的十、或十六进制数的转换功能,一般其可分为驱动和驱动两类。
译码是编码的逆过程。
图译码显示模块的元件图主要原理是四位二进制编码转换成七段二进制数字,以阿拉伯数字的形式输出在数码管上,使观众能够更直观的看到结果。
译码器的译码对照表如下所示:显示的数字字母编码七段数码管进制表译码器的译码对照表备注:在程序中只考虑(即)的情况,将其转化为相应的七段显示器的码子,其他情况不予考虑。
3.2循环彩灯工作原理通过控制器可以控制红,绿,黄三个发光管循环点亮,并且要求发光的时间不一样,这样,本质设计思想是循环累加,即时钟信号高电平开始,值开始累加,""><"";""><"";""><"";""><"";""><"";""><"";><"";;前三个值都将赋值给,也就是红灯发光的三秒,然后两个赋值给绿灯,最后一秒赋值给黄灯。
这样,的不同值将点亮不同颜色的灯,下面是表示三种灯的点亮程序。
<(); <(); <(); 以此类推,我们可以实现三个彩灯不同时间的循环点亮。