收藏 分享(赏)

基于VHDL的数显抢答器.doc

上传人:dreamzhangning 文档编号:2300810 上传时间:2018-09-10 格式:DOC 页数:24 大小:931.35KB
下载 相关 举报
基于VHDL的数显抢答器.doc_第1页
第1页 / 共24页
基于VHDL的数显抢答器.doc_第2页
第2页 / 共24页
基于VHDL的数显抢答器.doc_第3页
第3页 / 共24页
基于VHDL的数显抢答器.doc_第4页
第4页 / 共24页
基于VHDL的数显抢答器.doc_第5页
第5页 / 共24页
点击查看更多>>
资源描述

1、数字电子技术课程设计报告设 计 课 题 : 抢 答 器学 生 姓 名 : 杨 列 坤学 生 学 号 : 20090710522专 业 班 级 : 09 级 电 自 4 班学 院 名 称 : 电 气 与 信 息 工 程 学 院2012-6-27湖 南 大 学 课 程 设 计 报 告 第I 页基于 VHDL 语言的八路数字抢答器系统的设计本课题的实现可以通过不同的方法来进行,第一种使用单元集成电路实现,第二种使用硬件描述语言(VHDL语言)实现。第一种方法实现的大体的思路如下图所示:优先编码电路抢答按钮 锁存器 译码电路 显示电路主持人控制开关定时电路报警电路图2-1 数字抢答器框图第二种方法实现

2、的思路可以用下面的框图来说明:图2-2 基于VHDL语言实现数字抢答器框图以上两种实现方法中,第一种方法电路较复杂不便于制作,可靠性低,实现起来很困难;而第二种方法只需要软件仿真出来,在一块EDA实验箱上就能实现,制作简单,而且成本低。综合比较之下,我决定采用第二种方案实现本课题。根据第二种方案的的框图所示,整个系统分为以下几个模块来分别实现:1抢答判别模块:它的功能是鉴别八组中是那组抢答成功并且把抢答成功的组别信号输出给锁存模块。2复位控制模块:给节目主持人设置一个控制开关,用来控制系统的清零和抢答的开始。3锁存模块:该电路的作用是当第一个抢答者抢答后,对第一个抢答者的组别进行锁存并显示在数

3、码管上,后面的抢答者信号全都无响应,直到主持人按下复位键。4显示报警模块:就是把各个模块的输入的不同信号经过译码成 BCD 码然后直接在数码管上显示,还可以加上蜂鸣器的声音,更能给观众一个准确、简明的数字。抢答鉴别复位控制组别锁存声音报警答题倒计时译码输出湖 南 大 学 课 程 设 计 报 告 第 II 页5在以上功能实现后,还可以扩展实现一些其他功能,比如答题倒计时等功能。本课题采用 VHDL 语言编写应用程序并调试通过,在 MAX+PLUS II 或者 Altium designer 软件中仿真并分析仿真波形。1 系统的设计平台概述此次设计是按照“自顶向下“的设计方法,对整个系统进行方案设

4、计和功能划分,系统的关键电路用一片或几片专用集成电路(ASIC)实现,然后采用硬件描述语言(VHDL )完成系统行为级设计,最后通过综合器和适配器生成最终的目标器件。1.1 传统和现代的数字系统设计方法比较传统的数字系统设计方法:基于电路板的设计方法采用固定功能的器件(通用型器件) ,通过设计电路板来实现系统功能,在系统硬件设计的后期进行仿真和调试 。现代的数字系统设计方法:基于芯片采用 PLD,利用 EDA 开发工具,通过芯片设计来实现系统功能,在系统硬件设计的早期进行仿真。此系统的设计就是采用的现代的数字系统设计方法EDA 的设计方法。其与传统的设计方法的具体优劣比较如下表:表 3-1 传

5、统设计方法与 EDA 设计方法的比较传统设计方法 EDA 设计方法自底向下 自顶向下手动设计 自动设计软硬件分离 打破软硬件屏障原理图设计方式 原理图、HDL 等设计方式系统功能确定 系统功能易改不易仿真 易仿真难测试和修改 易测试和修改模块难移植和共享 模块可移植共享设计周期长 设计周期短由以上对比图可知,数字抢答器的设计采用自顶向下的设计方法较优。而传统的电子设计的基本思路还是选择标准集成电路“ 自底向上“ (Bottom-Up)地构造出一个新的系统,这样的设计方法就如同一砖一瓦地建造金字塔,不仅效率低、成本高而且还容易出错。2 数字抢答器系统的设计与实现2.1 抢答器系统设计要求 一般来

6、说,设计一台数字抢答器,必须能够准确判断出第一位抢答者,并且通过数显、蜂鸣这湖 南 大 学 课 程 设 计 报 告 第 III 页些途径能让人们很容易得知谁是抢答成功者,并设置一定的回答限制时间,让抢答者在规定时间内答题,主持人根据答题结果控制抢答器的清零复位,掌握比赛的进程。所以我在设计 8 路数字抢答器的模块需要满足鉴别、抢答报警、回答倒计时、数显等功能,具体设计要求如下:(1)抢答器可容纳八组选手,并为每组选手设置一个按钮供抢答者使用;为主持人设置一个控制按钮,用来控制系统清零(组别显示数码管灭灯)和抢答开始;(2)电路具有对第一抢答信号的锁存、鉴别和显示等功能。在主持人将系统复位并发出

7、抢答指令后,若参赛选手按下抢答按钮,则该组别的信号立即被锁存,并在组别显示器上显示该组别,同时扬声器也给出音响提示,此时,电路具备自锁功能,使其他抢答按钮不起作用。(3)抢答器具有限时回答问题的功能,当主持人启动倒计时开始键后,要求计时器采用倒计时,同时最后计时器倒计时到 00 时扬声器会发出声响提示;2.2 系统总体设计思想本设计为八路数字抢答器,所以这种抢答器要求有八路不同组别的抢答输入信号,并能识别最先抢答的信号,直观地通过数显和蜂鸣等方式显示出组别;对回答问题所用的时间进行计时、显示、超时报警,同时该系统还应有复位、倒计时启动功能。抢答过程:主持人按下系统复位键(CLR) ,系统进入抢

8、答状态,计时模块输出初始信号给数码显示模块并显示出初始值。当某参赛组抢先将抢答键按下时,系统将其余七路抢答信号封锁,同时扬声器发出声音提示,组别显示模块送出信号给数码显示模块,从而显示出该抢答成功组台号,并一直保持到主持人将系统清零为止。主持人对抢答结果进行确认,随后,计时模块送出倒计时计数允许信号,开始回答问题,计时显示器则从初始值开始以计时。计时至 0 时,停止计时,扬声器发出超时报警信号,以中止未回答完问题。若参赛者在规定时间内回答完问题,主持人可给出倒计时计数停止信号,以免扬声器鸣叫。主持人按下复位键,即 CLR 为低电平有效状态,清除前一次的抢答组别,又可开始新的一轮的抢答。此抢答器

9、的设计中采用自顶向下的设计思路,运用 VHDL 硬件描述语言对各个模块进行层次化、系统化的描述,并且先设计一个顶层文件,再把各个模块连接起来系统的总体框图如下:图 4-2-1 系统的总体框图抢答鉴别复位控制组别锁存声音报警答题倒计时译码输出湖 南 大 学 课 程 设 计 报 告 第 IV 页2.3 子模块的设计思想和实现根据对抢答器的功能要求,把要设计的系统划分为六个功能模块:抢答信号鉴别模块、锁存模块、编码模块、计时模块、译码显示模块和扬声器控制电路,具体的说,显示模块又包含最先抢答的组别显示电路、计时值显示电路。2.3.1 鉴别模块的设计与实现抢答鉴别模块用来准确直观地判断 S1、S2、S

10、3 、S4、S5、S6、S7、S8 八组抢答者谁最先按下按钮,并为显示端送出信号,通过数显和蜂鸣等途径使观众能够清楚地知道是哪一组抢答成功,是整个系统的核心部分。同时组别显示端为下一模块输入信号,以方便主持人为该组抢答成功者进行下一步的操作。抢答鉴别模块的元件图如下图所:图 4-3-1 鉴别模块元件框图引脚作用:输入信号:各组的抢答按钮 S1、S2、S3 、S4、S5、S6、 S7、S8,系统清零信号 CLR,反馈使能端 OE。输出信号: 各组的抢答按钮显示端 q1,q2,q3,q4,q5,q6,q7,q8。工作原理:第一个按下键的小组,抢答信号判定模块 QDJB 通过缓冲输出信号的反馈将本参

11、赛组抢先按下按键的信号锁存,并且以异步清零的方式将其他参赛组的按键信号屏蔽,显示组别直到主持人对系统进行清零操作时为止。当 CLR=1 时系统复位,抢答被屏蔽;当 CLR=0 时,即低电平有效,且 OE 为低电平时,使其进入抢答鉴别状态,到 CLK 的上升沿到来时,以 S1 组抢答成功为例,当输入信号为 S1=1,S2=0,S3=0,S4=0,S5=0 ,S6=0 ,S7=0,S8=0 ,即为鉴别出 S1 组抢答成功,同时屏蔽其他组的输入信号,以免发生错误。同理其他组别抢答成功也是这样的鉴别过程。部分源程序如下所示:IF (CLR =1) THENQ1MMMMMMMMM BCD BCD BCD

12、 BCD BCD BCD BCD BCD BCD BCD BCD MMMMMMMMM BCD BCD BCD BCD BCD BCD BCD BCD BCD BCD BCD =“00000000“;END CASE;END PROCESS; END A;5、声音报警模块 VHDL 程序(FASHENG.VHD)LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY FASHENG ISPORT (CLK, CLR, EN: IN STD_LOGIC;SOUND: OUT STD_LOGIC)

13、;END FASHENG;ARCHITECTURE A OF FASHENG ISBEGINPROCESS (EN, CLK)BEGINIF (CLKEVENT AND CLK=1) THENIF (CLR=0 AND EN=1) THENSOUND=1;ELSE SOUND=0;END IF;END IF;END PROCESS;END A;6、答题倒计时模块 VHDL 程序(DJSQ.VHD)LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; 湖 南 大 学 课 程 设 计 报 告 第XXII 页USE IEEE.STD_LOGIC_UNSIGNED.AL

14、L; ENTITY DJSQ IS PORT (CLR, CLK, EN: IN STD_LOGIC; H, L: OUT STD_LOGIC_VECTOR (3 DOWNTO 0); SOUND1: OUT STD_LOGIC); END DJSQ; ARCHITECTURE DJSQ_ARC OF DJSQ IS BEGIN PROCESS (CLK, EN) VARIABLE HH, LL: STD_LOGIC_VECTOR (3 DOWNTO 0); BEGIN IF CLR=0 THENHH: =“0011“;LL: =“0000“;ELSEIF CLKEVENT AND CLK=1THEN IF EN=0THEN IF LL=0 AND HH=0 THEN SOUND1=1; ELSIF LL=0 THEN LL: =“1001“; HH: =HH-1; ELSE LL: =LL-1; END IF; ELSE SOUND1=0; HH: =“0011“; LL: =“0000“; END IF; END IF; END IF;H=HH; 湖 南 大 学 课 程 设 计 报 告 第XXIII 页L=LL; END PROCESS; END DJSQ_ARC;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报