EDA抢答器(有倒计时)

更新时间:2023-09-14 00:31:01 阅读量: 教学研究 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

EDA课程设计报告

——抢答器

学院 电气学院 专业 建筑电气与智能化 班级 092 班 姓名 何 涛 学号 109035039

浙江科技学院 2012年12月15日

目录

1.设计内容与目的. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

1.1课题要求. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 1.2设计思路. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

2.程序设计与思路. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

2.1定义输入输出和中间变量. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 2.2分频. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 2.3倒计时. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2.4抢答与复位. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2.5数码管选择与显示. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

3.结果截图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4

3.1程序框图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4 3.2引脚设置. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4 3.3仿真波形. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5

4.调试中遇到的问题和解决方法. . . . . . . . . . . . . . . . . . . . . . . . .5 5.心得与体会. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5 6.附录:所有程序. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6

1.设计内容与目的

1.1课题要求 内容:抢答器 CPLD模块+5个按键+1个数码管

在开始按钮按下后的规定时间内抢答,数码管显示抢答的序号。

1.2设计思路

根据课题要求,首先需要一个输入,设定定时时间,然后计时启动,表示抢答开始,数码管显示9秒倒计时,在倒计时到0之前进行抢答,最先按下的抢答按钮,则数码管显示对应选手号码,并且对应LED灯亮起。如果倒计时到0仍无人抢答,则此轮抢答无效。倒计时到0或者抢答之后,需按下开始按钮之后才能进行下一轮抢答,否则无法抢答。

使用的EPM240T100C5开发板上引脚设置低电平有效,所以要讲没有用到的引脚全部设置高电平,在主菜单Assignments \\ Device \\ Device & Pin Option \\ Unused Pins下拉菜单选择As input tri-stated。

2.程序设计与分析

2.1定义输入输出和中间变量

clk50mhz是芯片晶振输入信号;

start是抢答开始和倒计时复位按键信号; shuout是数码管片选信号;

_200hz、_50hz、_1hz是三种分频信号; key是四个抢答按钮信号; led是四个LED灯信号;

ledout是数码管信号;

en是程序中不同功能切换的使能信号;

num是倒计时存储变量;

num1、count、count1、count2是分频程序中计数变量。

2.2分频

将50mhz晶振分频,其中200hz用于扫描数码管, 50hz用于输入按键的消抖, 1hz用于计数单位。

- 1 -

2.3倒计时

按下开始(start)按钮,倒计时置9,松开按钮开始倒计时,每1秒减1。

2.4抢答与复位

当使能信号en为0时,屏蔽抢答按钮信号,只有开始信号有效,按下开始按钮则使能信号en变为1,且LED和数码管信号重置。当使能信号为1时,先判断倒计时是否为0,若为0则en变为0,若不为0,则抢答按钮有效。

若抢答按钮1按下,则LED1亮起,数码管显示1;若抢答按钮2按下,则LED2亮起,数码管显示2;若抢答按钮3按下,则LED3亮起,数码管显示3;若抢答按钮4按下,则LED4亮起,数码管显示4;每次抢答,只有最先按下的按钮有效,直至下次抢答开始前,结果不变。

- 2 -

2.5数码管选择与显示

若en为1,则数码管显示倒计时, 若en为0,则数码管显示选手号码。

- 3 -

本文来源:https://www.bwwdw.com/article/0idh.html

Top