预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共24页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

目录 1.总体设计思路......................................1 1.1基本原理......................................1 1.2总体设计框图..................................2 2.单元电路设计......................................3 2.1控制模块......................................3 2.2选择模块......................................6 2.3显示模块......................................7 2.4报警模块......................................7 2.5计时模块......................................8 3.总体设计思路.....................................11 4.附录.............................................12 4.1总电路图.....................................12 4.2参考程序.....................................12 5.参考文献.........................................22 0/24 1.总体设计思路 1.1基本原理 本次设计的基于CPLD的棋类竞赛计时钟可以用于棋类竞赛参赛双方 对规定用时的计时和规定时间用完后的读秒计时。棋类竞赛规则为:AB 两方参赛选手分别有2小时的比赛固定用时,因此需要设计AB两位参赛 选手都需要的计设备,用于0—1:59分钟的计时使用。当组委会规定的的2 小时固定时间用完后,则需限定AB双方在30s内必须下出一步棋,此时 定时器将完成对30s的倒计时,并通过连接一个警报器以告知双方比赛结 果。两方若任意一人计时到零,则他方的警报灯便会亮起,便告负;反之, 另方灯亮起则他方为负。并且各定时器设置计时暂停/继续键,可用于双方 比赛时对时间的计时。而在30s倒计时工作时,该键的作用为复位本方计 时起始点29S,并启动对方定时器。设置系统复位键,比赛结束时,按该 键使各方的定时器均复位到0:00,以便重新开始比赛。 控制模块是本次设计的核心,他起到对双方选手时间的控制包括对暂 停请求、即时转换等核心功能。 选择模块的设置,是为了很好解决显示管数量不足的问题。在输入暂 停继续开关的作用下,轮流显示参赛双方所用时间情况给显示模块。 显示模块是一个动态扫描显示电路。在一个人眼观察不出的扫描频率 下,轮流在相对应的显示管上显示输入端口的输入的数据。 30s倒计时器的输出同时也控制着报警模块的工作,当甲乙任一方所 有时间都用完时,报警模块输出报警信号,宣布比赛结束,谁的时间先用 完谁就输了。 1/24 1.2总体设计框图 输入 控制模块 A2小时A30秒B2小B30秒计 计数器计数器时计数数器 器 选择模块报警模块 显示模块输出报警信号 显示时间 2/24 2.单元电路设计 2.1控制模块 控制模块控制各计数器协调工 作,完成系统的各项功能。是该系 统的核心部分(其模块图如图所 示)。各端口受哪些端口控制,各输 出什么时候输出什么样的值, 1.ena控制A方2小时规定时计数器的暂停继续: scountaena 000 010 101 110 其中S为输入暂停继续信号,counta为该计数器的进位输出。按照设计要 求,规定时用完后,counta输出为‘1’,规定时计数器停止计时,即ena= ‘0’,S为零时,设置规定时计数器不工作,即ena=‘0’,所以只有当S= ‘1’和counta=‘0’时,规定时计数器工作,即ena=‘1’。 2.enb控制B方2小时规定时计数器的暂停继续: scountbEnb 001 010 100 110 其中S为输入暂停继续信号,countb为该计数器的进位输出。按照设计要 3/24 求,规定时用完后,countb输出为‘1’,规定时计数器停止计时,即enb= ‘0’,S为高电平‘1’时,设置规定时计数器不工作,即enb=‘0’,所以 只有当S=‘0’和countb=‘0’时,规定时计数器工作,即enb=‘1’。 3.en3a控制A方30秒计数器的暂停继续: countascount3aen3a 0XX0