《六人抢答器设计》由会员分享,可在线阅读,更多相关《六人抢答器设计(22页珍藏版)》请在金锄头文库上搜索。
1、湖南人文科技学院课程设计报告课程名称:课程名称:VHDL 语言与 EDA 课程设计设计题目设计题目: 六人抢答器 系系 别:别: 通信与控制工程系 专专 业:业: 电子信息工程 班班 级:级: 2006 级 2 班 学生姓名学生姓名: : 姜虎 朱双兰 学学 号号: 06409220 06409209 起止日期起止日期: 2008 年 12 月 22 日 2009 年 1 月 4 日 指导教师指导教师: 田汉平 周桃云 岳舟 教研室主任:教研室主任: 谢四莲 1指导教师评语指导教师评语:指导教师签名: 年 月 日成绩成绩 项项 目目权重权重 姜虎朱双兰1、设计过程中出勤、学习态度等方面0.22
2、、课程设计质量与答辩0.53、设计报告书写及图纸规范程度0.3成成绩绩评评定定总 成 绩教研室审核意见:教研室主任签字: 年 月 日教学系审核意见:主任签字: 年 月 日2摘 要本次设计在 EDA 开发平台 QUARTUS6.0 上利用 VHDL 语言设计六人抢答器电路。电路中设有六个抢答键,可供六人同时抢答;我们利用一个二十进制计数器,将其输入频率设定为一赫兹,成功实现了二十秒倒计时的功能;我们利用 VHDL 语言中的 IF 和CASE 语句结合空操作语句 NULL 实现开始抢答与超前抢答的区别;各个模块配以一时钟频率由蜂鸣器输出可实现抢答成功、超前抢答犯规、超时抢答等各种情况的报警效果;本
3、设计采用的是杭州康芯电子有限公司生产的 GW48 系列/SOPC/EDA 实验开发系统,FPGA 目标芯片型号为 Altera 公司的 Cyclone 系列中的 EPIC6Q240C8。芯片配置成功后锁定引脚下载即可进行硬件测试:选择实验电路结构图 NO.5,使 CLK1 与 CLKOCK5 相接(接受 1024Hz 时钟频率),CLK 与 CLOCK0 相接(接受 1Hz 时钟频率),报警输出接SPEAK,六位选手分别对应实验箱上的 16 键,键 7 为抢答开始键,当其未按下就进行抢答则为超前犯规,按下后二十秒倒计时开始,选手进行抢答,按实验箱上的复位键则可重新开始下一轮的抢答。关键词:六人
4、抢答器;数码显示;信号封锁;犯规报警。3目 录设计要求.11 总体设计方案论论证与对比.11.1 方案一.11.2 方案二.12 顶层电路 VHDL 程序设计.23 单元模块程序设计.53.1 二十秒倒计时模块.53.2 抢答成功选手按键模块.63.3 超前抢答犯规模块.73.4 抢答成功报警模块.114 六人抢答器电路系统仿真及功能分析与调试.124.1 分立模块的仿真.124.2 总体设计模块的仿真.145 实验设备和器件.156 引脚锁定和下载硬件测试及实验结果.156.1 引脚锁定.156.2 下载和硬件测试及实验结果.167 参考文献.178 心得体会.17附录.181六人抢答器设计
5、要求设计要求抢答台数为 6;具有抢答开始后 20 秒倒计时,20 秒倒计时后六人抢答显示超时,并报警;能显示超前抢答台号并显示犯规报警;系统复位后进入抢答状态,当有一路抢答按键按下,该路抢答信号将其余各路抢答信号封锁,同时铃声响起,直至该路按键松开,显示牌显示该路抢答台号。1 1 总体设计方案论论证与对比总体设计方案论论证与对比1.11.1 方案一方案一该方案方框图如图 1:二十秒倒计时模块二十秒倒计时模块数数 码码 管管蜂鸣器蜂鸣器锁存器模块锁存器模块抢答鉴别模块抢答鉴别模块按按 键键 输输 入入 图 1 方案一方框图在该方案中,由二十秒倒计时模块、抢答鉴别模块、锁存器模块等模块组成3。蜂鸣
6、器和数码管分别起报警和显示台号的作用。但该方案中的数码管显示是由七段显示器的形式来显示台号的,由于实验箱电路结构与按键数目的限定,使得我们没有采用该方案。1.21.2 方案二方案二该方案方框图如图 2:2图 2 方案二方框图抢答成功按键判抢答成功按键判 别模块别模块蜂蜂 鸣鸣 器器抢答报警模块抢答报警模块数数 码码 管管超前超前 抢答抢答 判别判别 模块模块译码译码 器器二十秒倒计时模块二十秒倒计时模块按键按键 输入输入此方案中整个电路主要由超前抢答判别模块、二十秒倒计时模块、抢答成功按键模块、抢答报警模块四个模块组成4。其台号的显示都是将信号送入译码器译码之后再由数码管显示出来,结合前面六位
7、选手的按键及开始键可得实验箱上模式 5 的电路结构满足硬件测试的要求。所以我们选定该方案来进行我们这次的课程设计。2 2 顶层电路顶层电路 VHDLVHDL 程序设计程序设计顶层电路 VHDL 程序如下USE ieee.std_logic_1164.all; LIBRARY work;ENTITY jinaghu IS port(rst : IN STD_LOGIC;-抢答开始键clk : IN STD_LOGIC;-计数器时钟输入clk1 : IN STD_LOGIC;-蜂鸣器时钟输入AIN : IN STD_LOGIC_VECTOR(6 downto 1);-选手按键speak : OUT
8、 STD_LOGIC;-蜂鸣器cout : OUT STD_LOGIC; -超时抢答报警shuma : OUT STD_LOGIC_VECTOR(3 downto 0);-抢答成功显示台号数码管shuma1 : OUT STD_LOGIC_VECTOR(3 downto 0);shuma2 : OUT STD_LOGIC _VECTOR(3 downto 0); shuma3 : OUT STD_LOGIC_VECTOR(3 downto 0);3shuma4 : OUT STD_LOGIC_VECTOR(3 downto 0);shuma5 : OUT STD_LOGIC_VECTOR(3 downto 0);shuma6 : OUT STD_LOGIC_VECTOR(3 downto 0);END jinaghu;ARCHITECTURE bdf_type OF jinaghu IS component anjian -元件 U1 例化PORT(rst : IN STD_LOGIC;AIN6 : IN