fpga的贪吃蛇游戏(附件)【字数:7457】

摘 要贪吃蛇游戏在电子技术还没现如今发达的时候是最受人们喜爱的游戏之一,人们可以在忙碌的一天里用它来缓解一下自己工作和学习中的压力。FPGA具有很多特点,尤其是它的高速和高精度的特点,让游戏的设计者们越来越关注它,我所设计的程序是使用FPGA驱动16x16LED点阵来做出贪吃蛇游戏的。这个游戏很显而易见,就是在屏幕上面做出一条蛇,然后在屏幕上随机生成食物给蛇吃。游戏的规则就是玩家通过手柄或者键盘来驱使贪吃蛇去吃随机生成的食物,而且贪吃蛇每吃到一个食物,它的身体都会变长一节,直到贪吃蛇撞到墙壁或者因为自己的身体吃了太多食物而变得太长造成蛇头撞到自己的身子,以上两种情况都视作游戏结束。这次的课程设计是在FPGA的平台上利用VHDL语言来完成贪吃蛇游戏的操作与控制。
目 录
第一章 绪论 1
1.1游戏的发展历史 1
1.2游戏的特点 1
第二章 系统设计 2
2.1系统分析 2
2.2总体方案 2
第三章 硬件设计 3
3.1FPGA的概述 3
3.2电源电路 3
3.3按键电路 4
3.4VGA显示电路 5
第四章 软件设计 7
4.1程序设计 7
4.2VGA控制模块设计 8
4.3PLL设计 10
4.4苹果产生模块设计 10
4.5游戏控制模块设计 11
4.6贪吃蛇控制模块设计 13
4.7键盘扫描模块设计 15
4.8数码管计分显示模块 15
第五章 实现与测试 16
5.1贪吃蛇的运动 16
5.2贪吃蛇游戏结束 17
结束语 18
致谢 19
参考文献 20
附录 21
第一章 绪论
1.1游戏的发展历史
当电脑刚出现的时候,电脑游戏也就随着电脑一起出现在了大家的视野里。在十九世纪60年代的时候人们都还在用一开始大型的计算机的时候,有一部分程序开发 *好棒文|www.hbsrm.com +Q: ^351916072^ 
者在研究计算机的程序的时候就在闲暇时间开发一些小型游戏,当时并不知道电脑游戏会成为今后的一个大型产业发展下来。不过60年代的时候计算机和电子产品的发展才刚开始起步,各方面都受到了一些限制,游戏也只有一些资深的计算机程序员或者计算机相关的高层可以接触到[1]。第一款个人电脑是由IBM公司在八十年代的时候推出的,直到那个时候,个人电脑才慢慢进入大众的生活中。回首二十世纪初到现在的这十几年里,不管是电子产品还是程序都有了飞速的发展,也出现了各式各样的平台供人们开发制作游戏,不像以前那样只有极少部分的资深程序员才能开发游戏了,只要有兴趣,大家都可以自己在平台上开发不同的游戏软件。到了当今这个信息时代,每个国家都在加快自己的信息技术的发展,电脑游戏也成为了当今的一大产业,让各个软件开发厂商都翘首以待。
1.2游戏的特点
游戏在当今是最为年轻人追求的一种消遣方式,那是因为游戏相比其他消遣更具有自身的特点。它体积小,娱乐性高,玩法丰富新颖,便于携带,更重要的是玩家可以通过自己的主观意识来控制游戏中的人物,而不像看电视、电影、听广播这类传统的消遣方式,我们只能被动去听,被动去看,信息不受我们自己的主观意识而改变,而你在电脑游戏里,你可以在你操作的游戏的规则里,做你想做的,这是游戏最主要的自主性。既然有了自主性,那肯定也需要玩家运用头脑去操控,在合理的时间安排下,玩游戏还可以培养反应力和思维能力,也能在平时高压的学习或工作下舒缓压力。
第二章 系统设计
2.1系统分析
贪吃蛇游戏早在电脑刚出现的时候就诞生了,是个早期深受喜爱的经典益智类小游戏,这次的课程设计可以把游戏制作出来依靠的是VGA显示的方式[2]。玩家可以利用按键或者手柄来操控贪吃蛇的运动轨迹,从而让蛇顺着玩家的思想去吃随机产生的苹果。贪吃蛇的身子会随着吃到一个苹果而增长,吃下一个苹果相当于贪吃蛇长出一节身子,并且苹果被贪吃蛇吃下去的同时,在屏幕里会随机生成另一个苹果。当蛇的头部咬到自己的身体或者撞到四周的墙壁,视为游戏结束。
2.2总体方案
本次课程设计的贪吃蛇游戏主要是利用基于ARTIX7的FPGA芯片的硬件,编写程序则是用Verilog HDL语言来完成的。在课程设计里,一共有上、左、下、右、开始游戏和复位这六个按键。这些按键的输出是VGA,可以将游戏画面、汉字等等展现在玩家的眼前。
设计的结构框图如图22所示。
图22 贪吃蛇游戏系统设计结构框图
第三章 硬件设计
3.1 FPGA的概述
FPGA是可编辑逻辑器件,它的发展是依赖于PAL和GAL之类的逻辑器件的基础的。FPGA的规模与正常的PAL和GAL相比是要大一些的,它能替代上千块的通用IC芯片。作为一个子系统部件的FPGA,让全世界的电子程序员都大有关注并受到很大的欢迎。相比别的公司,Xilinx公司和Altera公司的CPLD器件是相对开发比较早的公司,先入为主,所以他们占领了大部分的市场。FPGA芯片是一种非凡的ASIC芯片,不但具备了ASIC的特点,还具有如下几个优点:
①VLSI(超大集成电路)工艺在当今不断得到提高,上百万个晶体管也可以被单一芯片内部所容的下,FPGA芯片的规模也随着技术的发展不断提高,它的单片逻辑门数现在已经可以达到上百万门,所以功能也在提高,并能达到系统集成,就是片上系统SOC。
②关于FPGA的报废和费用,因为在生厂商出产前芯片就已经做过了完美的测试,所以程序员不需要考虑到芯片的额外花费,程序员只要在屋里借助相关的软硬件环境就可以完成想要达到的设计。所以FPGA的资金就避免了一些不必要担心的花费。
③程序员在使用FPGA芯片的时候可以反复擦除,编写,用不同的软件就能达到不同的功能。FPGA的平台上有很多工具供程序员输入、仿真设计版图,程序员完成电路的输入、编译、优化、仿真、制作所需要的时间都很少。当电路有少量的改动,更能显示FPGA的优势[3]。
3.2电源电路
Basys3的开发板能够有2种方式实行供电,经过J4的USB端口供电和经过J6的接线柱进行供电(5V)。经过JP2跳线帽的不一样的挑选实行供电方式的挑选。电源开关经过SW16实行操控,电源开关的指示灯是LD20。
电源的电路如图32所示。
/

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/dzxx/dzkxyjs/382.html

好棒文