四人抢答器的程序!!求仿真图

有记分模块 鉴别模块 计时模块的 在MAX-PLUS2下仿真的

第1个回答  2010-01-01
设计课题l:LANG="EN-US">:四人抢答器设计报告

l:LANG="EN-US">

l:LANG="EN-US">一、 课程设计要求

l:LANG="EN-US">(1)设计用于竞赛抢答的四人抢答器。

①有多路抢答,抢答台数为l:LANG="EN-US">4。

②具有抢答前抢答台号并显示犯规警报;

l:LANG="EN-US">(2)系统复位后进入抢答状态,当有一路抢答按键被按下,该路抢答信号将其余各路抢答信号封锁,同时蜂鸣器响起,直到该路按键松开,显示牌显示该路抢答台号。

l:LANG="EN-US">(3)用l:LANG="EN-US">VHDL语言设计符合上述功能要求的四人抢答器,并用层次化设计方法设计该电路。开始后l:LANG="EN-US">20s倒计时,l:LANG="EN-US">20s倒计时后无人抢答显示超时的功能,并报警。

l:LANG="EN-US">(4)完成电路全部设计后,通过系统实验箱下载,验证设计课题的正确性。

l:LANG="EN-US">

l:LANG="EN-US">

二、原理

按照课程设计要求,我们使用l:LANG="EN-US">VHDL语言编写程序。程序中l:LANG="EN-US">a、l:LANG="EN-US">b、l:LANG="EN-US">c、l:LANG="EN-US">d为四个抢答输入信号,l:LANG="EN-US">sta代表开始信号,l:LANG="EN-US">clk为时钟脉冲信号,l:LANG="EN-US">fmq1和l:LANG="EN-US">fmq2分别代表无人抢答超时指示、抢答犯规指示,l:LANG="EN-US">start为抢答成功指示。

l:LANG="EN-US">1、 当l:LANG="EN-US">a.b.c或l:LANG="EN-US">d的任意一位选手(例如l:LANG="EN-US">a选手)按下抢答器后,其余各路强大信号被封锁,也就是说l:LANG="EN-US">a选手先抢答,如果此时l:LANG="EN-US">sta为高电平,l:LANG="EN-US">clk有时钟脉冲输入,l:LANG="EN-US">a就抢答成功,l:LANG="EN-US">start所对的发光二极管同时亮,l:LANG="EN-US">a不犯规,所以l:LANG="EN-US">fmq1和l:LANG="EN-US">fmq2指示灯灭;

l:LANG="EN-US">2、 如果l:LANG="EN-US">sta为低电平,l:LANG="EN-US">clk有时钟脉冲输入,任意一名选手(例如l:LANG="EN-US">b选手)抢答,则数码管显示l:LANG="EN-US">2,但由于l:LANG="EN-US">b抢答犯规,l:LANG="EN-US">fmq2所对的指示灯亮。

l:LANG="EN-US">3、 如果l:LANG="EN-US">sta为高电平,l:LANG="EN-US">clk有时钟脉冲输入,但是在l:LANG="EN-US">20秒之内无任何一位选手抢答,l:LANG="EN-US">fmq1所对的指示灯亮,为无人抢答报警。

整个实验功能通过l:LANG="EN-US">Max-plus2软件仿真实现。

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

三、原理图及仿真图

原理图如下:

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

抢答正确仿真(l:LANG="EN-US">a选手抢答):

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

抢答犯规仿真(l:LANG="EN-US">b选手犯规):

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

无人抢答超时报警:

l:LANG="EN-US">

l:LANG="EN-US">

l:LANG="EN-US">

四、问题及解决

l:LANG="EN-US">1、关于编程中的问题:在编译过程中,出现多次错误,无法编译,后来经过请教,发现是由于保存位置不当、没及时添加到工程所致。

l:LANG="EN-US">

l:LANG="EN-US">2、关于下载失败的问题:前几次在调试运行一切正常后,下载时由于对软件的不熟悉,没有及时的保存修改,导致下载失败,经过摸索与请教,终于找到了原因并成功的予以解决。

l:LANG="EN-US">

l:LANG="EN-US"> l:LANG="EN-US">3、演示失败问题:下载成功后,多次演示不成功。经过更换实验箱及向他人请教,发现是由于l:LANG="EN-US">clk信号没有接通所致。

l:LANG="EN-US">

l:LANG="EN-US">4、实验箱功能显示不正确,有些实验箱比较陈旧,在显示软件实现功能不能正确显示,经过几次实验箱的更换试用,最终能够显示正确。

l:LANG="EN-US">

五、总结

本课程设计四人抢答器在软件仿真上一切正常,下载到实验箱后各种功能演示正常,达到了预期的目标,基本符合课程设计要求。通过本次实践,我对l:LANG="EN-US">VHDL语言有了初步的认识,学会了l:LANG="EN-US">MAX+plusⅡ的基本应用,对已学知识的理解更加深刻,锻炼了解决问题的能力,同时提高了动手能力。在这次四人抢答器的课程设计,我对l:LANG="EN-US">VHDL产生了浓厚的兴趣,争取在以后能更上一层楼。