实验9 简易贪食蛇游戏机
【实验目的】
(2)理解状态机的工作原理和设计方法;
(3)掌握利用EDA工具进行自顶向下的电子系统设计方法。
【实验所用仪器及元器件】
(1)计算机;
(2)示波器;
(3)直流稳压电源;
(4)万用表;
(5)EDA开发板及相应元器件。
【实验原理】
贪吃蛇游戏机设计上需要注意模块化设计,在本题目中需要做到应用逻辑模块与单元控制模块功能独立,有以下几个关键点:
首先是点阵显示模块,如何设计出一个独立于显示内容的点阵显示模块是本题目能否顺利实现的关键点之一。
其次是控制模块,如何把贪吃蛇的图形显示映射到显示内存的表示方式是需要仔细考虑的。由于控制图形变化的信号较多,有外部按键输入,内部时钟驱动,判断的状态也比较多,蛇的位置,老鼠的位置,墙的位置等等,所以复杂程度比较高。这部分是整个系统的核心。设计过程中注意把操作过程“串行化”,不要在一个时钟周期完成所有的判断和操作,利用高速时钟,把判断和操作过程分为多个周期完成,简化设计。
最后利用显示存储器实现模块间的通信,控制模块把要显示的内容写入存储器,显示模块从显示存储器读出数据并显示,两边可以完全独立的操作。
通过这样的设计思路,让控制器完成所有的逻辑模块,把当前蛇与老鼠的位置信息写入显示存储器里面,它不关心蛇和老鼠是怎样显示的。这样的设计具有很好的扩展性和可实现性。
【实验内容】
1.基本内容
用一个8×8点阵做为基本显示屏,4个连续移动的的发光点表示一条蛇,用任意出现的一个亮点表示老鼠,用4个排成一条线的发光点表示“墙”,用四个按键控制蛇的运动方向,完成贪食蛇游戏,蛇撞“墙”、边或者游戏时间到,则游戏结束。
(1)老鼠出现的地方是随机的,在某个地点出现的时间是5秒钟,如果5秒钟之内没有被吃掉,它就会在其它地方出现;
(2)用数码管显示得分情况和游戏的剩余时间,每吃掉一只老鼠就加一分;
2.提高要求
(1)游戏时间和速度可以手动设置。
(2)增加游戏难度或自拟其他功能。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。