兹于2016年12月,应《数字逻辑》课程设计的要求,本人在老师指导下用ABLE-HDL语言实现了拔河游戏机的功能。
拔河游戏机
1、题目描述
拔河游戏机用7个发光二极管排列成一行,开机后只有中间一个发亮,以此作为拔河的中心线,游戏双方各持一个按键,迅速地、不断地按动产生脉冲,谁按得快,亮点向谁方向移动,每按一次,亮点移动一次。任一方终端二极管发亮时这一方获胜,此时双方按键被锁住,只有经复位后才使亮点恢复到中心线。
2、参考资料清单及元器件清单
《数字逻辑》 (第六版立体化教材 科学出版社)
GALl6V8 2片
GAL编程器系统 1套
TDS-2数字系统综合实验平台 1台
导线 若干
ispExpert软件
3、总体设计方案
由设计内容可知,首先需要设计一个十进制的可逆计数器,用于对双方按钮的次数计数,并将游戏过程的状态进行输出。设计中还需要一个脉冲与方向产生器用于产生脉冲信号与亮点移动方向的判断,通过可编辑波形发生器设定1KHz频率的信号。其次,显视控制部分设计要求在发光二极管上显示游戏状态,左方每按一次,亮点向左边移动一次;右方每按一次,亮点向右边移动一次。还需设置一个清零端,用于复位。再者,运用ABLE-HDL语言对各个模块进行程序编码,然后将所编码的程序烧录GAL16V8中。最后,将烧录好的芯片在实