基于FPGA的贪吃蛇小游戏实现案例

可编程逻辑

1340人已加入

描述

FPGA实现贪吃蛇小游戏

手机游戏时代始于 1997 年,当时诺基亚在 6110 机型上发布了第一款名为〈贪吃蛇〉的手机游戏。这可能是有史以来最受欢迎的手机游戏之一,全球有超过 3.5 亿部手机提供这款游戏。

所以,对于大部分80后90后来说,该游戏不会感到陌生,该游戏是1997年Armanto 芬兰软件工程师(1995年在诺基亚任职),经过市场调研及选择,将该游戏带到了诺基亚6110手机上。

游戏介绍

这里就不介绍了,很经典的游戏。

软硬件环境

FPGA板卡

ZEDBOARD(纯逻辑设计,没使用ARM) 其他板卡也可以

状态机

VGA显示器

PMOD_GAMEPAD

游戏需要4(上下左右移动)+RESET(游戏GG,重新开始)

为了方便使用,这里制作了一个游戏按键手柄(以前做PONG游戏做的),主要也是按键(按键比较大)。

https://gitee.com/openfpga/FPGAandGames/tree/main/2048/hardware/PMOD_GAMEPAD

状态机

Vivado

Vivado 2018.3及更高版本

连接

状态机

源码简介

整个核心FSM如下所示:

状态机

每个模块的源码上都有简介,状态机代码也比较简单(主要控制,初始状态,失败三个状态,详见代码)。

开源链接

https://gitee.com/openfpga/FPGAandGames/tree/main/SNAKE

下载后可以直接进行综合,使用JTAG下载到FPGA中,就能看到VGA显示画面如下:

状态机

编辑:黄飞

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分