没有合适的资源?快使用搜索试试~ 我知道了~
首页EDA课程设计棋类计时器
EDA课程设计棋类计时器
需积分: 14 205 浏览量
更新于2023-05-30
评论 2
收藏 263KB DOC 举报
2小时加30秒的计时系统。 本系统是一个用于棋类比赛的计时钟系统,该计时钟可分别完成甲乙对规定用时的计时和规定时间用完后的读秒计时。规定甲乙双方各有2小时比赛规定用时,分别设计各方的用时定时器,并用数码管显示各方已用的时、分从0:00~1:59计时间隔为1S。 2小时规定时间用完后,每方限定在30秒内必须下出一步棋,此时定时器将完成对读秒时间的30S倒计时,并数码管显示此时过程30~00。若计时到零,则发生警报信号该方超时负。各定时器设置计时暂停/继续键,在规定时间计时时,该键的作用为暂停本方计时,并继续对方计时;在读秒时间计时时,该键的作用为复位本方计时起始点29S,并启动对方定时器。设置系统复位键,比赛结束时,按该键使各方的定时器均复位到规定时间的零点0:00,以便重新开始比赛。
资源详情
资源评论
资源推荐

一.总体功能介绍:
本系统是一个用于棋类比赛的计时钟系统,该计时钟可分别
完成甲乙对规定用时的计时和规定时间用完后的读秒计时。规定
甲乙双方各有 2 小时比赛规定用时,分别设计各方的用时定时器,
并用数码管显示各方已用的时、分从 0:00~1:59 计时间隔为
1S。
2 小时规定时间用完后,每方限定在 30 秒内必须下出一步棋,此
时定时器将完成对读秒时间的 30S 倒计时,并数码管显示此时过
程 30~00。若计时到零,则发生警报信号该方超时负。各定时器
设置计时暂停/继续键,在规定时间计时时,该键的作用为暂停本
方计时,并继续对方计时;在读秒时间计时时,该键的作用为复
位本方计时起始点 29S,并启动对方定时器。设置系统复位键,
比赛结束时,按该键使各方的定时器均复位到规定时间的零点
0:00,以便重新开始比赛。
二.系统的主要特色:
首先在如它能完美地解决显示管数量的不足问题,在选择显
示模块作用下,甲乙双方的比赛时间能有条不紊地显示!
其次在于设计的原理图(顶层文件)结构非常简单,在连接各
模块工作时,没有任何的门和看上去很复杂的连线,整个图显得
简单,清晰,给人以简单美的享受!这其中的来由要归功于设计
者特意地将各模块全部使用 VHDL 语言编写!
再次,本系统的输出既有发光二极管带来的视觉上的报警信
号,也有扬声器发出的听觉上的报警信号!
总之,本系统在完美完成设计要求的基础上,还特意地优化
系统功能,在设计者的不懈努力下,一个简单、完美的棋类比赛
计时系统诞生了!
1

三.总体设计思路:
总体设计框图
按照设计要求,分别设置甲乙各方规定时 2 小时计时器和 30
秒倒记时器,如上图。
在控制模块的作用下,相互协调工作:在规定时内,30 秒计
时器不工作,输入继续\暂停端能暂停其中一方计时器的同时继续
另一方的计时。当甲或乙归定时两小时用完后,启动各自的 30 秒
倒计时!这时的输入继续\暂停开关能复位其中一方的 30 秒到
29,并开始另一方的记时。当比赛结束时,输入清零端复位信号,
各计时器回到开始,重新开始下场比赛!
计时器的输出同时也控制着报警模块的工作,当甲乙任一方
所有时间都用完时,报警模块输出报警信号,宣布比赛结束,谁
的时间先用完谁就输了这场比赛。
选择模块的设置,是为了很好解决显示管数量不足的问题。
在输入暂停\继续开关的作用下,轮流显示甲乙双方所用时间情况
给显示模块!
显示模块是一个动态扫描显示电路。在一个人眼观察不出的
扫描频率下,轮流在相对应的显示管上显示八个输入端口的输入
的数据。
2
输入
控制模块
甲 30 秒
乙 30 秒
甲 2 小时
计数器
乙 2 小时
计数器
报警
模块
输出
选择模块
显示模块
输出

四.模块设计及介绍:
1. 计时器模块:分为 2 小时的规定时计时器,30 秒的倒计时器。
输出特点:<1>各数权位分别输出 4 位的二进制数,如 1:25:46
输 出 为 “ y31=0001” : “ y210=0010 q21 = 0101” : “ y11=0100
q11=0110”。
<2>进位输出一个进位信号 co 为高电平 1,直到有清零端复
位有效时才回到 0。
(1) 30 秒倒计时器
功能:本质是一个减法计数器。完成甲和乙对用完归定时间的读
秒计时。
工作原理:
仿真波形图
可以看出,该计数器从 29 开始,如果清零端无效,每来一个
秒脉冲,在继续使能端有效下,减少 1,到 28。依次到 00,此时
输出一个进位信号 co 为高电平 1,直到有清零端复位有效时才回
到 0,此时计数器复位到 29,重新开始计时。
(2) 2 小时规定计时器
3

功能:本质为两个 60 进制的加法计数器和一个 16 进制计数器联
级构成。完成 2 个小时的计时。
原理框图:
在复位端 cir 无效,计数使能端 en 有效时,每来一个秒的时
钟脉冲,秒 60 计数器加一。计到 60 时,发出一个进位信号 co 去
作为 60 分计数器的时钟脉冲,即每来一个 co,分 60 计数器加
1。当计数到 60 时,也发出个进位信号 co1,该信号去作为时计
数器的时钟脉冲,每来一个 co1,即计完了 60 分钟,时计数器加
1。当这个 2 小时计数器计到两个小时时,发出个进为信号(高电
平有效)count,直到有复位信号有效(cir='1')时回到低电平 0。计数
时,如果计数使能端无效,则计数暂停,恢复有效时继续计数。
这样完成了两小时的计时!
2.控制模块
功能:控制各计数器协调工作,完
成系统的各项功能。是该系统的核
心部分。
<1> Ena 控制甲方 2 小时规定时计数器的暂停\继续。
Ena 工作
真值表
其中 S 为输入暂停\继续信号,counta 为该计数器的进位输出。
4
60 秒
计数器
60 秒
计数器
60 秒
计数器
秒信号 Co
Co1
Count

按照设计要求,规定时用完后,counta 输出为‘1’, 规定时计数器
停止计时,即 ena=‘0’,S 为零时,设置规定时计数器不工作,即
ena=‘0’,所以只有当 S=‘1’和 counta=‘0’时,规定时计数器工作,
即 ena=‘1’。
<2> Enb 控制乙方 2 小时规定时计数器的暂停\继续。
Enb 工
作真值表
其中 S 为输入暂停\继续信号,countb 为该计数器的进位输出。按
照设计要求,规定时用完后,countb 输出为‘1’, 规定时计数器停
止计时,即 enb=‘0’,S 为高电平‘1’时,设置规定时计数器不工作,
即 enb=‘0’,所以只有当 S=‘0’和 countb=‘0’时,规定时计数器工作,
即 enb=‘1’。
<3> En3a 控制甲方 30 秒计数器的暂停\继续。
En3a 工作真值表
其中 S 为输入暂停\继续信号,counta 为规定时 2 小时计数器的进
位输出,count3a 为甲方 30 秒进位输出。
按照设计要求,规定时用完后,counta 输出为‘1’, 规定时计数器
停止计时,启动甲方 30 秒倒计时,即 en3a=‘1’,否则 en3a='0'。S
为零时,设置规定时计数器不工作,即 en3a=‘0’。当 30 秒倒计时
计时守毕,即 count3a 输出为‘1’时,30 秒计时器也不工作,此时
en3a=‘0’。所以只有当 S=‘1’和 counta=‘1’和 count3a=‘0’时,该计
5
剩余24页未读,继续阅读








安全验证
文档复制为VIP权益,开通VIP直接复制

评论0