- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE
PAGE 8
- -
四位智能竞赛抢答器
第一章 系统设计
第一节 课题目标
《硬件描述语言》是一门技术性、应用性很强的学科,实验课教学是它的一个极为重要的环节。不论理论学习还是实际应用,都离不开实验课教学。如果不在切实认真地抓好学生的实践技能的锻炼上下功夫,单凭课堂理论课学习,势必出现理论与实践脱节的局面。《HDL项目设计》的目的就是让我们在理论学习的基础上,通过完成一个涉及时序逻辑、组合逻辑、声光输出的,具有实用性、趣味性的小系统设计,使我们不但能够将课堂上学到的理论知识与实际应用结合起来,而且能够对分析、解决实际的数字电路问题进一步加深认识,为今后能够独立进行某些数字应用系统的开发设计工作打下一定的基础。
通过这次设计实验,首先,使我们更加深入的巩固了书本上的知识,在掌握理论基本知识的基础上,学会了对常用软件的使用。其次,通过这次设计实验,使我们了解并熟悉了程序的设计方法和步骤,而且在与同学讨论的同时也提高了团结合作的能力。然后,学会用仿真实验来验证方案的正确性,培养我们综合运用知识和独立开展实验创新的能力。最后,规范化训练我们撰写技术研究报告,提高书面表达能力。
第二节 设计要求
本设计是一个功能较为简单的四路抢答器,基本要求有以下几点:
(1)实现一四人抢答器,有人抢答成功后,其他人再抢答无效;
(2)主持人通过按键清除抢答信息,并开始30秒的答题倒计时,当倒计时结束时,通过蜂鸣器响来提示回答问题时间到,此时可以开始新一轮的抢答。
第三节 设计方案
设计是以Verilog HDL语言为基础设计的电子抢答器,在设计过程中先将系统模块化,然后逐步实现,根据设计功能要求,该设计主要包括按键抢答输入,数码管显示,报警电路及FPGA系统。抢答器结构原理图如图1:
K1K2
K1
K2
K3
K4
二进制转换
数码管片选信号
倒计时模块
数码管译码电路
蜂鸣器
同步信号
数码管
显示模块
锁存电路
按键1
按键2
第二章 系统分析与实现
第一节 系统分析
该系统可实现要求中的最基本功能,除此之外还可以实现抢答时间限制的功能,其中,抢答成功者组号由静态显示的方法使用,使四个数码管同时显示其组号,同时,该抢答者对应的led灯亮。若还有其他抢答者在其后按下按键,抢答无效,只取第一个抢答者信息。
第二节 程序及程序功能介绍
一、端口定义部分
module main(reset,clock,din1,din2,din3,din4,judge,beep,wei,duan,beep,wei1,duan1);
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)
begin
if(!judge)
begin
block=0;
wei=4b1111;
duan=8hff;
end
else
begin
if(!din1)
begin
if(
原创力文档


文档评论(0)