基于EDA四位智能竞赛抢答器
EDA电子项目4路抢答器的原理图输入设计

4路抢答器适用于各类知识竞赛、文娱综艺节目,一 般有抢答、违例、抢答时限、答题时间倒计时/正 计时显示等功能。 本项目设计一个简易4路抢答器:设置4个按键作 为4路抢答开关,4个LED作为抢答指示,当按下抢 答开始键开始抢答。一旦某路抢答成功,蜂鸣器 发声,同时与抢答开关对应的LED被点亮指示抢答 的组别,输出被锁定,抢答开关按键无效直到再 次按下抢答开始键。
(5)完成器件编程
四、项目实施
2.硬件电路调试及排故
电路调试: 按下复位键,再按下第一个抢答键,是否听到蜂鸣器发声,同 时第一个LED是否发光,此时再按抢答键是否起作用。再按下 复位键,蜂鸣器是否停止发声。以相同的方法调试其他抢答键。
故障分析及排除:
1.完成器件编程后,蜂鸣器常叫不止,直到抢答器按下。出 现这种情况,是由于4输入与非门调用成了4输入与门。 2.无论怎样按复位键和抢答键,抢答器始终无反应。出现这 种情况,应该考虑管脚没有分配好,或者分配了管脚,但是没 有重新编译。
(2) 建编辑原理图设计文件
新建原理图文件QDQ.BDF。
放置元件,调整元件位置。
四、项目实施——1. Quartus Ⅱ原理图设计
完成连线、并重新命名管脚
四、项目实施——1. Quartus Ⅱ原理图设计
(3) 项目编译
分析综合 点击Quartus Ⅱ软件工具条上的快捷按钮 进行分析综合。 引脚分配 完成抢答器的分析综合过程,得到工程的数据库文件以后, 需要给抢答器的输入输出引脚进行引脚分配。 全编译 选择Processing→Start Compilation启动全编译过程。 ,对抢答器工程
教师评价+互评
教师评价+互评
3.操作实施 (30%)
四路抢答器EDA

DEA设计(二)——四路抢答器学院:自动化姓名:学号:指导老师:2015年9月28日目录1 实验任务及要求 (1)2 程序流程图 (2)3 电路原理图 (3)4 电路模块 (3)4.1 KEY模块 (4)4.2 KEEP模块 (4)4.3 TIME模块 (5)4.4 STATE模块 (6)4.5 BEEP模块 (7)5 下载程序 (8)5.1 分配引脚 (8)5.2 下载到实验箱 (8)6 实验心得 (9)1 实验任务及要求1.设计用于竞赛抢答的四人抢答器1)有多路抢答,抢答台数为4;2)抢答开始后20秒倒计时,20秒后无人抢答显示超时并报警;3)能显示抢答台号并显示犯规警报;2.系统复位后进入抢答状态,当有一路抢答键按下,该路抢答信号将其他各路抢答信号封锁,同时铃声响起,直至该路按键松开,显示该路抢答台号。
3.用VHDL语言设计符合上述功能要求的四人抢答器,并用层次化设计方法设计该电路。
4.完成电路设计后,通过系统试验箱下载验证设计的正确性。
2 程序流程图图2.1 程序流程图3 电路原理图电路原理图如下:图3.1 电路原理图电路说明:1)抢答状态由一个数码管显示,“F”代表超时,“E”代表犯规,“0”代表正常。
2)倒计时由两个数码管显示,从“20”记到“00”。
3)还有一个数码管用来显示当前抢答号“1”,“2”,“3”,“4”。
4 电路模块本次实验中我主要负责抢答模块的编程,即key模块和keep模块,这两个模块的主要功能是记录无论是正常抢答还是提前抢答者的台号,并且能实现当有一路抢答按键按下时,该路抢答信号将其余的抢答信号封锁的功能。
4.1 KEY模块图4.1 Entity KEY模块功能:抢答队伍共分为四组1,2,3,4。
当主持人按下START键后,四组队伍才可以按抢答键抢答。
当有人按下抢答键且此时keep模块的反馈信号为feedback为“1”时,将相应的输出置“1”,但在主持人未按下START键之前,所有的抢答键按下时,feedback信号为“0”,此时按键是无效的。
EDA课程设计—四人抢答器设计

EDA课程设计—四⼈抢答器设计摘要现代⽣活中,数字电路产品与我们接触的是越来越平凡了,包括计算机、电⼦表、智能仪器表及其它很多领域中,它给我们带来的不仅是⼯作上的⽅便,⽽且也给我们的⽣活娱乐添滋加彩。
这次EDA课程设计中,我做的是四⼈抢答器,基于设计要求,本⽂主要是从锁存器及计数器功能和VHDL语⾔着⼿,但侧重点在⽤VHDL语⾔上。
⾸先简单介绍⼀下数字电路、EDA、VHDL等的有关知识,其次介绍了⼀下设计要求和我的设计构想,再运⽤VHDL语⾔特点,写出程序代码,最后是⼀些总结和抢答器部分实验电路图与倒计时设计的电路图和⽤MAX+PLUSII软件仿真的结果部分图附录等部分。
关键词:置位;复位;锁存;计数器;七段显⽰器;MAX+PLUSII;译码器⽬录摘要: (1)引⾔: (2)⼀、设计任务及要求: (2)⼆、题⽬分析与整体构思: (2)三、VHDL程序设计: (3)四、⼼得体会及模型评价与推⼴: (5)附录: (6)参考⽂献: (10)引⾔数字电路主要是基于两个信号(我们可以简单的说是有电压和⽆电压),⽤数字信号完成对数字量进⾏算术运算和逻辑运算的电路我们称之为数字电路,它具有逻辑运算和逻辑处理等功能,数字电路可分为组合逻辑电路和时序逻辑电路。
EDA技术⼜称电⼦设计⾃动化,它是为解决⾃动控制系统设计⽽提出的,从70年代经历了计算机辅助设计(CAD),计算机辅助⼯程(CAE),电⼦系统设计⾃动化(ESDA)3个阶段。
前两个阶段的EDA产品都只是个别或部分的解决了电⼦产品设计中的⼯程问题;第三代EDA⼯具根据⼯程设计中的瓶颈和⽭盾对设计数据库实现了统⼀管理,并提出了并⾏设计环境概念,提供了独⽴于⼯艺和⼚家的系统级的设计⼯具。
VHDL(VERY HIGH SPEED INTEGRA TED CIRCUIT HARDW ARE DESCRIPTION LANGUAGE)语⾔最早是有美国国防部提出的,它⽀持⾏为领域和结构领域的硬件描述,并且可以从最抽象的系统级⼀直到最精确的逻辑级,在描述数字系统时,可以使⽤前后⼀致的语义和语法跨越多个层次,并且使⽤跨越多个级别的混合描述模拟该系统。
EDA课程设计四人智力竞赛计数抢答器

四人智力竞赛计数抢答器一、设计任务与要求任务:要求设计一个四人智力计数抢答器。
要求:四人使用抢答,当其中一人按下抢答器,将封锁其余抢答器,数码管显示一位二进制数,同时倒计时开始计时(0—99)秒,如果在倒计时间内没答完题报警器开始响。
二、总体框图根据设计要求,本系统应具有第一抢答信号的鉴别和锁存、答题计时、动态显示和声光提示等功能。
为了完成上述功能,该系统应由抢答鉴别和锁存电路、答题计时电路、数显驱动电路和声光驱动电路等组成。
抢答器设计的关键是准确地判断第一抢答信号和锁存。
在得到第一抢答信号后应立即进行电路封锁,使其他组抢答无效。
形成抢答信号后,由数显电路显示抢答组别,由声光电路提示超时抢答。
图1 总体框图三、选择器件1、装有QuartusII软件的计算机一台。
2、7段数码显示管。
3、芯片:使用Altera公司生产的Cyclone系列芯片,如EP1C12Q240C8芯片。
4、EDA实验箱一个。
5,下载接口是数字芯片的下载接口(JTAG)主要用于FPGA芯片的数据下载。
6、时钟源。
Cyclone的性能特性Cyclone器件的性能足以和业界最快的FPGA进行竞争。
Cyclone FPGA内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。
FPGA的基本特点主要有:1)采用FPGA设计ASIC电路,用户不需要投片生产,就能得到合用的芯片。
2)FPGA可做其它全定制或半定制ASIC电路的中试样片。
3)FPGA内部有丰富的触发器和I/O引脚。
4)FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。
5) FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容。
可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。
四、功能模块1:library ieee;use ieee.std_logic_1164.all;entity feng isport(cp,clr:in std_logic;q :out std_logic);end feng;architecture feng_arc of feng isbeginprocess(cp,clr)beginif clr='0' thenq<='0';elsif cp'event and cp='0' thenq<='1';end if;end process;end feng_arc;此程序为抢答鉴别模块feng该模块主要实现抢答和鉴别的功能。
EDA课程设计四路智能抢答器

一、课题简介在许多比赛活动中,为了准确、公正、直观地判断出第一抢答者,通常设置一台抢答器,通过数显、灯光及音响等各种手段批示出第一抢答者。
同时,还可以设置计分、犯规及奖惩记录等各种功能。
本设计的具体要求是:设计制作一个可容纳四组参赛者的数字智力抢答器,每组设置一个抢答按钮供抢答者使用。
(2) 电路具有第一抢答信号的鉴别和锁存功能。
(3)系统具有计时功能(4)系统具有计分电路。
二、课题背景数字电路产品在生活中有着极其广泛的应用,包括计算机、数字通信、智能仪器仪表、自动控制及航天等领域中。
这些给人们生活,工作等方面带来了极大的方便。
数字电路设备实现简单,速度和可靠性好。
智力竞赛是一种能锻炼人的头脑开发人的IQ的一种大众化游戏,也起到娱乐的作用。
现在智力竞赛越来越被多数人喜爱和娱乐,而且国内外各地电视台、工厂、学校等单位也会常常举办类似的智力竞赛活动,然而智力竞赛抢答器是必要设备。
在有些地方举行的各种智力竞赛游戏中我们经常看到有抢答的环节,举办方大多数采用让选手通过举答题板的方法或者是举手的方式判断选手的答题权,这在某种程度上会因为主持人的主观误断造成比赛的不公平性。
所以,我们就需要一种具备自动锁存,置位,清零等功能智能抢答器来解决这些问题。
三、课题在国内外的研究现状抢答器一般分为电子抢答器和电脑抢答器。
电子抢答器的中心构造一般都是由抢答器由数字电子集成电路组成,其搭配的配件不同又分为,非语音非记分抢答器和语音记分抢答器。
非语音记分抢答器构造很简单,就是一个抢答器的主机和一个抢答按钮组成,在抢答过程中选手是没有记分的显示屏。
语音记分抢答器是由一个抢答器的主机、主机的显示屏以及选手的记分显示屏等构成,具有记分等功能。
电子抢答器多适用于学校和企事业单位举行的简单的抢答活动。
电脑抢答器又分为无线电脑抢答器和有线电脑抢答器。
无线电脑抢答器的构成是由:主机和抢答器专用的软件和无线按钮。
无线电脑抢答器利用电脑和投影仪,可以把抢答气氛活跃起来,一般多使用于电台等大型的活动。
基于EDA技术的四人电子抢答器

基于EDA技术电子抢答器的设计冯贵锋(广东工程职业技术学院电子信息工程技术)摘要:本设计采用EDA(电子设计自动化)技术,利用层次化设计方法设计4位抢答器,首先给出系统的功能描述,然后进行功能分解,逐层设计。
在抢答器设计过程中,层次化思想体现在利用VHDL语言实现显示功能,在仿真成功的基础上,利用Altera公司的FPGA(现场可编程门阵列)芯片EP1K30QC208-2来实现该4位抢答器。
实践证明,所设计的4位抢答器运行稳定,可靠性达到设计要求,分辨力较高,且无论是前面的锁存还是后面的显示都具有很大的拓展空间,可以很方便地得到拓展。
关键词:层次化,FPGA,电子抢答器,EDA一、4位抢答器系统功能及功能分解在各种知识竞赛中,电子抢答器是必不可少的设备之一,它的整体功能如下:每个参赛者控制一个抢答按钮,主持人控制复位按钮,每个参赛选手对应一个号码,竞赛开始后,LED(发光二极管)显示器上显示先按动按钮的选手号码,此后其他人再按动按钮对电路不起作用。
当主持人按下复位按钮后可进行新一轮抢答。
将上述功能分解成显示功能、锁存功能、优先排序功能。
在设计过程中,利用图形输入来实现锁存和优先排序功能,将排序输出作为显示的输入,利用VHDL语言实现显示功能。
二、锁存与优先排序功能的实现利用MXA+PLUSⅡ软件的图形界面设计该功能,由于触发器具有锁存功能,所以采用74LS175触发器来保存数据,用与或非门来实现优先级别的判断。
用aa、bb、cc、dd表示4位抢答输入按钮,接到输入端,clr表示复位按钮,接到复位端,clk表示时钟输入按钮,采用周期为200 ns的时钟源作为输入,Qa、Qb、Qc、Qd作为输出端,接到显示的输入端。
如下图所示:编译完成后,生成qdq. Sym,供顶层文件调用。
三、显示功能的实现抢答者的号码通过共阴七段译码管显示,当1号选手首先按下时显示1,依类推,当按下复位键或其他非选手号码输入时,译码管显示为0。
EDA课程设计教程---四路抢答器

前言“数字逻辑”是我院计算机科学与技术专业及自动化专业最重要的专业基础课之一。
随着电子技术的高速发展,数字技术也可谓是一日千里。
尤其是九十年代迅速发展起来的在系统可编程技术ISP,更使数字系统的设计方法发生本质性、革命性变化。
为了适应数字技术的飞速发展,培养出在二十一世纪具有竞争力的计算机及自动化的高等人才,采用可编程技术及可编程器件进行数字电路及系统的设计势在必行。
为此,我院“数字逻辑”实验设备更新为具有当前国内先进水平的EDA实验开发系统。
EDA(Electronic Des ign Automation)即指电子设计自动化。
EDA实验开发系统是一种多功能、高配置、高品质的EDA教学与开发设备。
该系统由于采用可编程CPLD器件及独特的设计技术,从而使学生的实验从传统的硬件连接方式进入到软件设计、仿真调试系统的实验方式,并使传统的硬件设计方式用EDA技术实现。
这与用连线搭接电路的实验方式相比,不仅故障率大大降低,而且节省了时间、提高了实验效率。
同时,也使学生获得的知识紧跟国际数字技术的先进水平。
EDA实验教程是为适应数字逻辑课程的教学改革而编写的。
考虑到现代教育不仅使学生通过实验能够掌握所学理论知识,而且有利于激发和培养学生的创新意识和创造能力,该教程结合实验室已更新的EDA实验开发系统,为学生提供了一些以设计性和综合性实验为主的、具有任意可选性的基础实验课题;同时也为数字逻辑课程设计提供了一些即具有实用价值、趣味性又较强的数字系统设计项目。
该教程适用于“数字逻辑”课程教学实验和课程设计。
因时间短促,还存在很多不足及错误,敬请各位老师及同学指正。
“数字逻辑”课程组2008年10月目录前言第一章MAX+PLUSⅡ基本操作 (3)1.1 设计环境与设计方法 (3)1.1.1 系统配置与安装 (3)1.1.2 MAX+PLUSⅡ操作环境 (5)1.1.3 MAX+PLUSⅡ的设计方法 (6)1.2 设计输入 (8)1.2.1 建立图形设计文件 (8)1.2.2建立文本设计文件(VHDL) (14)1.2.3 VHDL语言和原理图混合输入方式 (16)1.3 设计项目的编译 (16)1.4 设计校验 (23)1.4.1 仿真 (23)1.4.2 定时分析 (26)1.5 器件编程 (28)第二章数字逻辑基础实验 (30)2.1 交通控制灯监视电路 (30)2.2 五人表决器 (30)2.3 逻辑运算电路 (31)2.4 3:8线译码器 (31)2.5 逻辑函数发生器 (32)2.6 4位二进制数∕BCD码变换器 (32)2.7 格雷码变换器 (33)2.8 BCD码加法器 (33)2.9 四位并行乘法器 (33)2.10 BCD∕七段数字显示译码器 (34)2.11 基本触发器 (35)2.12 同步十进制计数器 (35)2.13 动态扫描数码显示器 (36)2.14 双向移位寄存器 (37)2.15 环形计数器与扭环计数器 (37)2.16 二十四进制计数器 (38)第三章数字系统综合设计 (40)3.1 多功能数字电子钟 (40)3.2 数字密码锁电路 (42)3.3 8位数字频率计 (42)3.4 等精度数字频率计 (44)3.5 快速加法器 (46)3.6 移位乘法器 (46)3.7 篮球30秒定时控制电路 (48)3.8 交通灯控制电路 (48)3.9 序列检测器 (49)3.10 出租车计费器 (50)3.11 智力竞赛抢答器 (51)3.12 模拟乒乓球游戏机 (52)附表SE-5M(EPF10K10)引脚对应表 (54)第一章MAX+PLUSⅡ基本操作本章介绍Altera公司的CPLD的开发工具软件MAX+PLUSⅡ。
EDA四人抢答器

HUBEI NORMAL UNIVERSITY电工电子实验报告课程名称EDA技术及应用实验名称四人抢答器选题性质综合设计学号姓名专业名称所在院系物理与电子科学学院报告时间2016年4月19湖北师范学院电工电子实验教学示范中心·《EDA技术基础》实验四人抢答器实验总结报告一. 任务解析1.实现一四人抢答器,有人抢答成功后,其他人再抢答无效;2.点亮选手对应的LED灯,并在数码管上显示抢答者的序号;3.主持人通过按键清除抢答信息,重新开始新一轮的抢答。
二. 方案论证三. 实验步骤1.电路分析(1)复位电路图中的reset按键作用是主持人按键清屏,当主持人按下按键后各电路复位,放开按键标志着开始抢答。
(2)抢答电路图中的key0,key2,key3,key4代表着选手a,b,c,d。
当主持人按键清屏后四人就开始按键抢答,如果其中一人首先按下抢答键抢答成功后,其他人再按键无效。
(3)LED灯显示电路图中选用led0,led1,led2,led3分别做为a,b,c,d四位选手对应的指示灯,抢答开始后当其中一位选手按下抢答键则点亮这位选手对应的指示灯。
(4)数码管显示电路图中选用引脚为75号的位的数码管来显示选手的序号,将a,b,c,d四位选手分别编号为1,2,3,4。
若其中一位选手抢答成功数码管就显示该位选手的编号,例如a选手抢答成功那数码管就显示1。
2.实验代码module cnt(clk,duan,wei,reset,qiangda1,qiangda2,qiangda3,qiangda4,ledout);input clk,qiangda1,qiangda2,qiangda3,qiangda4,reset;output [7:0]duan,wei;output[3:0]ledout;reg[7:0]ledout;reg [7:0]wei,duan;reg [3:0]data;reg [0:0]cnt;reg [0:0] key1 = 1'b0;reg [0:0] key2 = 1'b0;reg [0:0] key3 = 1'b0;reg [0:0] key4 = 1'b0;reg [28:0]jia1;reg [20:0]jia;reg [2:0]count;reg clk600hz,clk2hz;always@(posedge (qiangda1 || reset)) beginif(key1 == 0)key1 = ~key1;if(reset)key1 = 0;endalways@(posedge qiangda2 || reset) beginif(key2 == 0)key2 = ~key2;if(reset)key2 = 0;endalways@(posedge qiangda3 || reset) beginif(key3 == 0)key3 = ~key3;if(reset)key3 = 0;endalways@(posedge qiangda4 || reset) beginif(key4 == 0)key4 = ~key4;if(reset)key4 = 0;endalways @(posedge clk)beginif(jia<8333-1)jia=jia+1;begin jia=0;clk600hz=!clk600hz;endif(key1 && count == 0)count=1;if(key2 && count == 0)count=2;if(key3 && count == 0)count=3;if(key4 && count == 0)count=4;if(reset == 1)count = 0;endalways @(posedge clk)begincase(count)0:ledout=8'b0000000;1:ledout=8'b0000001;2:ledout=8'b0000010;3:ledout=8'b0000100;4:ledout=8'b0001000;endcaseendalways @(posedge clk600hz)begincnt <= cnt +1;case(cnt)1'b0:data=count%10;endcasecase(cnt)1'b0:wei=8'b11111110;default:wei=8'b11111111;endcaseendalways @(data)begincase(data)4'h0:duan=~8'b00111111;4'h1:duan=~8'b00000110;4'h2:duan=~8'b01011011;4'h3:duan=~8'b01001111;4'h4:duan=~8'b01100110;4'h5:duan=~8'b01101101;4'h6:duan=~8'b01111101;4'h7:duan=~8'b00000111;4'h8:duan=~8'b01111111;4'h9:duan=~8'b01101111;default:duan=~8'b00000000;endcaseendendmodule四. 实验总结经过这次的EDA课程,我收获很多。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
四位智能竞赛抢答器第一章系统设计第一节课题目标《硬件描述语言》是一门技术性、应用性很强的学科,实验课教学是它的一个极为重要的环节。
不论理论学习还是实际应用,都离不开实验课教学。
如果不在切实认真地抓好学生的实践技能的锻炼上下功夫,单凭课堂理论课学习,势必出现理论与实践脱节的局面。
《HDL 项目设计》的目的就是让我们在理论学习的基础上,通过完成一个涉及时序逻辑、组合逻辑、声光输出的,具有实用性、趣味性的小系统设计,使我们不但能够将课堂上学到的理论知识与实际应用结合起来,而且能够对分析、解决实际的数字电路问题进一步加深认识,为今后能够独立进行某些数字应用系统的开发设计工作打下一定的基础。
通过这次设计实验,首先,使我们更加深入的巩固了书本上的知识,在掌握理论基本知识的基础上,学会了对常用软件的使用。
其次,通过这次设计实验,使我们了解并熟悉了程序的设计方法和步骤,而且在与同学讨论的同时也提高了团结合作的能力。
然后,学会用仿真实验来验证方案的正确性,培养我们综合运用知识和独立开展实验创新的能力。
最后,规范化训练我们撰写技术研究报告,提高书面表达能力。
第二节设计要求本设计是一个功能较为简单的四路抢答器,基本要求有以下几点:(1)实现一四人抢答器,有人抢答成功后,其他人再抢答无效;(2)主持人通过按键清除抢答信息,并开始30秒的答题倒计时,当倒计时结束时,通过蜂鸣器响来提示回答问题时间到,此时可以开始新一轮的抢答。
第三节设计方案设计是以Verilog HDL语言为基础设计的电子抢答器,在设计过程中先将系统模块化,然后逐步实现,根据设计功能要求,该设计主要包括按键抢答输入,数码管显示,报警电路及FPGA系统。
抢答器结构原理图如图1:图1 抢答器结构原理图第二章系统分析与实现第一节系统分析该系统可实现要求中的最基本功能,除此之外还可以实现抢答时间限制的功能,其中,抢答成功者组号由静态显示的方法使用,使四个数码管同时显示其组号,同时,该抢答者对应的led灯亮。
若还有其他抢答者在其后按下按键,抢答无效,只取第一个抢答者信息。
第二节程序及程序功能介绍一、端口定义部分modulemain(reset,clock,din1,din2,din3,din4,judge,beep,wei,duan,beep,wei1,dua n1);input reset,clock;input din1,din2,din3,din4,judge;output[3:0] wei;output[7:0] duan;output beep;output[3:0] wei1;output[7:0] duan1;wire clk1k;wire clk1hz;fenpin uut1(reset,clock,clk1k,clk1hz);qiangde uut2(clock,din1,din2,din3,din4,judge,clk1hz,wei,duan); daojishi uut3(reset,clk1k,clk1hz,beep,wei1,duan1);Endmodule二、抢答部分本段程序实现基本的抢答功能,block为锁存信号,当有一组按下抢答按钮后,系统锁存,其他组别抢答无效;同时通过f1向蜂鸣器发出信号,蜂鸣器1s表示抢答成功;于此同时信号out输送给led 灯,抢答成功者对应led灯亮;seg_figure4为静态显示抢答成功的组号,预置数为”_”;一组抢答成功后若其他组再抢答,数码管熄灭示警。
module qiangde(clock,din1,din2,din3,din4,judge,clk1_hz,wei,duan); input clock,judge;input din1,din2,din3,din4;input clk1_hz;output[3:0] wei;output[7:0] duan;reg[3:0] wei;reg[7:0] duan;reg block;always@(posedge clock)beginif(!judge)beginblock=0;wei=4'b1111;duan=8'hff;endelsebeginif(!din1)beginif(!block)beginwei<=4'b1101;duan<=8'hf9;block=1;endendelse if(!din2)beginif(!block)beginwei<=4'b1101;duan<=8'ha4;block=1;endendelse if(!din3)beginif(!block)beginwei<=4'b1101;duan<=8'hb0;block=1;endendelse if(!din4)beginif(!block)beginwei<=4'b1101;duan<=8'h99;block=1;endendendendendmodule三、分频module fenpin(reset,clock,clk1k,clk1hz); input reset,clock;output clk1k,clk1hz;reg clk1k;reg clk1hz;reg[24:0] count1;reg[14:0] count2;always@(posedge clock or posedge reset) beginif(reset)count1<=0;else if(count1==25'd2*******)beginclk1hz<=~clk1hz;count1<=0;endelsecount1<=count1+1;endalways@(posedge clock or posedge reset)beginif(reset)count2<=0;else if(count2==15'd25000)beginclk1k<=~clk1k;count2<=0;endelsecount2<=count2+1;endendmodule四、抢答时限30s,倒计时到,蜂鸣器响该部分功能:当抢答倒计时30s结束时,若没有任何一组抢答成功,则向蜂鸣器发出信号,蜂鸣器响作为警报,提示此次抢答结束且该题作废。
module daojishi(reset,clk1_k,clk1_hz,beep,wei1,duan1);input reset,clk1_k,clk1_hz;output [3:0] wei1;output beep;output [7:0] duan1;reg [5:0] shi,ge;reg [5:0] data;reg [4:0] count;reg [3:0] wei1;reg [7:0] duan1;reg beep;reg state;always@(posedge clk1_hz or posedge reset) beginif(reset)count<=0;else if(count>=5'd30)count<=count;elsecount<=count+1;endalways@(count)beginif(count>=5'b10101)//21~30beginshi<=5'b00000;ge<=5'b11110-count;endelse if(count>=5'b01011) //11~20 beginshi<=5'b00001;ge<=5'b10100-count;endelse if(count>=5'b00001) //1~10 beginshi<=5'b00010;ge<=5'b01010-count;endelse //0beginshi<=5'b00011;ge<=5'b00000;endif(shi==0 && ge==0)beginbeep<=0;endelse beep<=1;endalways@(posedge clk1_k)beginif(reset)wei1<=4'b0000;else if(state==1'b1)state<=1'b0;elsestate<=state+1'b1;case(state)1'b0:begin wei1<=4'b0111;data<=ge;end 1'b1:begin wei1<=4'b1011;data<=shi;end default:wei1<=4'b0000;endcaseendalways @(data)begincase(data)6'b000000: duan1=8'b1100_0000;6'b000001: duan1=8'b1111_1001;6'b000010: duan1=8'b1010_0100;6'b000011: duan1=8'b1011_0000;6'b000100: duan1=8'b1001_1001;6'b000101: duan1=8'b1001_0010;6'b000110: duan1=8'b1000_0010;6'b000111: duan1=8'b1111_1000;6'b001000: duan1=8'b1000_0000;6'b001001: duan1=8'b1001_0000;default:duan1=8'b1111_1111;endcaseendendmodule第三章编译调试第一节 Quartus II的使用(1)双击Quartus II软件快捷图标进入Quartus II集成开发环境,新建工程项目文件traffic.pof,并在该项目下新建Verilog源程序文件traffic.v,输入上面的程序代码并保存。
(2)然后为该工程项目选择一个目标器件并对相应的管脚进行锁定。
(3)对该工程文件进行编译处理,若在编译过程中发现错误,找出并更正错误直至成功为止。
(4)将CCIT CPLD/FGPA JTAG下载电缆的两端分别接到PC机和CCIT CPLD/FGPA实验仪上,再打开工作电源,执行下载命令把程序下载到CCIT CPLD/FGPA实验仪的EPM1270T144C5N器件中,通过K1~K4抢答按键按下后,由裁判员根答题情况,通过控制按键操作,这样就可以看到数码管上的组别和LED四盏小灯的变化。