原创 智力竞赛抢答计时器的设计(转贴)

2008-10-26 19:25 2838 2 7 分类: FPGA/CPLD
一、    课题说明
在许多比赛活动中,为了准确、公正、直观地判断出第一抢答者,通常设置一台抢答器,通过数显、灯光及音响等多种手段指示出第一抢答者。同时,还可以设置计时、计分、犯规奖惩计录等多种功能。
二、  设计要求
1、设计一个4组参加的智力竞赛抢答计时器。每组设置一个抢答按钮供抢答者使用。
2、电路具有第一抢答信号的鉴别和锁存功能。在主持人将系统复位并发出抢答指令后,当有某一组参赛者首先按下抢答开关时,数码管显示相应组别并伴有声响。此时,电路应具备自锁功能,使别组的抢答开关不起作用。
3、电路具有回答问题时间控制功能。要求回答问题时间小于等于100s(显示为0~99),时间显示采用倒计时方式。当达到限定时间时,发出声响以示报警。
三、设计思路
根据设计要求可知,系统的输入信号有:各组的抢答按钮d1、d2、d3、d4,主持人按钮host,系统时钟信号clk,数码管的片选信号;系统的输出信号有:首先按下按钮的组别信号sel, 声音信号sound,倒计时显示信号q[6..0]。为实现设计要求,电路由抢答鉴别模块、锁存器模块、转换模块、倒计时模块、片选信号产生模块、3选1模块、显示译码模块和一些门电路组成。总体框图如图16-1所示。
四、设计文件
1、顶层原理图
智力竞赛抢答计时器的顶层原理图如图16-1所示
图16-1  智力抢答器的原理图
2、底层源程序

以下内容需要回复才能看到

(1)抢答鉴别模块FENG的VHDL源程序
抢答鉴别模块FENG如图16-2所示,该模块在第一个选手按下  SOUND<='1';
ELSIF LL="0" THEN
          LL:="1001";
          HH:=HH-1;                  
ELSE
          LL:=LL-1;
END IF;
ELSE                          
SOUND<='0';
      HH:="1001";
      LL:="1001";
END IF;
END IF;
H<=HH;
L<=LL;
END PROCESS;
END COUNT_ARC;
(7)显示译码模块DISP的VHDL源程序
显示译码模块DISP如图16-8所示,。
    【例16-7】--disp.vhd
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;         
ENTITY DISP IS                                  图16-8  显示译码模块DISP
PORT(D:IN STD_LOGIC_VECTOR(3 DOWNTO 0);
        Q:OUT STD_LOGIC_VECTOR(6 DOWNTO 0));
END DISP;
ARCHITECTURE DISP_ARC OF DISP IS        
BEGIN
PROCESS(D)
BEGIN                                 
CASE D IS                                 
      WHEN"0000"=>Q<="0111111";
      WHEN"0001"=>Q<="0000110";
      WHEN"0010"=>Q<="1011011";
      WHEN"0011"=>Q<="1001111";
      WHEN"0100"=>Q<="1100110";
      WHEN"0101"=>Q<="1101101";
      WHEN"0110"=>Q<="1111101";
      WHEN"0111"=>Q<="0100111";
      WHEN"1000"=>Q<="1111111";
      WHEN"1001"=>Q<="1101111";
      WHEN OTHERS=>Q<="0000000";
END CASE;
END PROCESS;
END DISP_ARC;
五、系统仿真
智力竞赛抢答计时器的时序仿真波形如图16-10所示。由图可见,d2首先抢答,当sel为111时,
Q[6..0]=5B,ch31a的Q端为2,表示2号抢答成功,此后d4再按开关不起作用。
PARTNER CONTENT

文章评论5条评论)

登录后参与讨论

用户377235 2013-12-30 16:43

有图没啊

用户377235 2013-5-8 20:39

一般。

用户377235 2012-5-16 18:25

做课设很有用

用户377235 2012-2-22 22:03

真好

用户194730 2009-3-2 20:54

你好啊!你这篇关于抢答器的论文我想参考一下,能把详细的资料给一份吗?wangcb523@163.com,谢谢你了!麻烦了!
相关推荐阅读
用户91728 2008-10-30 13:39
Linux shell中强大的正则grep
Linux Shell中强大的正则grepLinux grep命令 用‘grep’搜索文本文件 如果您要在几个文本文件中查找一字符串,可以使用‘grep’命令。‘grep’在文本中搜索指定的字符串。 ...
用户91728 2008-10-30 13:34
BusyBox——嵌入式Linux中的瑞士军刀
BusyBox (http://www.busybox.net)将数以百计的常用Unix/Linux命令集成到一个可执行文件中(名为busybox).它体积小巧, 功能却不失强大. 常用Linux命令...
用户91728 2008-10-30 13:33
Linux攻略 如何制作和使用Jffs2文件系统
本文主要介绍如何在AT91SAM9261EK板子上制作和使用jffs2文件系统,使用的是linux-2.6.21内核。首先:配置MTD 复制内容到剪贴板 代码:      <*> Memo...
用户91728 2008-10-30 13:32
Linux 制作 ramdisk
创建一个简单的基于ext2fs的ramdisk 复制内容到剪贴板 代码:mke2fs -vm0 /dev/ram 4096mount -t ext2 /dev/ram /mntcd /mntcp /b...
用户91728 2008-10-30 13:31
ftp命令大全
FTP的命令行格式为: ftp -v -d -i -n -g [主机名] ,其中 -v 显示远程服务器的所有响应信息; -n 限制ftp的自动登录,即不使用;.n etrc文件; -d 使用调试方式;...
用户91728 2008-10-30 13:30
Linux 自动ftp脚本
概要:本文简单总结一下Linux 下自动ftp脚本的写法自动登陆ftp服务器,并下载一个文件1:ftp.sh 复制内容到剪贴板 代码:#!/bin/sh F="192.168.0.100.ftp" e...
我要评论
5
2
关闭 站长推荐上一条 /3 下一条