- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《基于spartan3an的贪吃蛇游戏设计
贪吃蛇游戏设计
—基于Xilinx Spartan-3an
FPGA开发板
专业:电子科学与技术
学号:S姓名:侯晓帅
贪吃蛇游戏设计
—基于Xilinx Spartan-3an
FPGA开发板
一、实验要求
设计一款贪吃蛇游戏。设计平台为xilinx的spartan3an FPGA开发板。通过VGA接口控制液晶显示器,在液晶显示器上实现该游戏。具体要求为,在液晶显示器上有一移动的”蛇”,通过开发板上的拨码开关实现“蛇”上下左右移动。并且要求“蛇”只能在显示器一定范围内运动,若碰到坐标区域的边缘或者“蛇”的身体,则游戏结束。同时会在屏幕有效区域随机出现“苹果”,“蛇”每吃到一次苹果则表示一次成功操作,得分加1,并在数码管上显示得分。本实验刚开始的蛇身长度定位3。为了便于书写程序,我们设定蛇的最大长度为16。
二、、、、LED_CD N4 LED_CE T1 LED_CF T2 LED_CG T3 LED_DP R4 表4 7段数码管FPGA引脚配置
三、Snake_eating_apple
Snake
Key
VGA_control
Seg_display
顶层模块代码如下:
module Greedy_Snake (
input clk,
input reset,
input left,
input right,
input up,
input down,
output h_sync,
output v_sync,
output [2:0] color_out,
output [7:0] seg_out,
output [3:0] sel);
wire left_key_press,right_key_press, up_key_press, down_key_press;
wire [1:0] snake;
wire [9:0] x_pos;
wire [9:0] y_pos;
wire [5:0] apple_x;
wire [4:0] apple_y;
wire [5:0] head_x;
wire [5:0] head_y;
wire add_cube;
wire [1:0] game_status;
wire hit_wall;
wire hit_body;
wire die_flash;
wire restart;
wire [6:0] cube_num;
Game_ctrl_unit game_ctrl_unit1( .clk(clk),
.reset(reset),
.key1_press(left_key_press),
.key2_press(right_key_press),
.key3_press(up_key_press),
.key4_press(down_key_press),
.game_status(game_status),
.hit_wall(hit_wall),
.hit_body(hit_body),
.die_flash(die_flash),
.restart(restart) );
Snake_eating_apple snake_eating_apple1( .clk(clk),
.reset(reset),
.apple_x(apple_x),
.apple_y(apple_y),
.head_x(head_x),
.head_y(head_y),
.add_cube(add_cube) );
Snake snake(.clk(clk),
reset(reset),
.left_press(left_key_press),
.right_press(right_key_press),
.up_press(up_key_press),
.down_press(down_key_press),
.snake(snake),
.x_pos(x_pos),
.y_pos(y_pos),
.head_x(head_x),
.head_y(head_y),
.add_cube(add_cube),
.game_status(game_status),
.cube_num(cube_num),
.hit_body(hit_body),
.hit_wall(hit_wall),
.die_flash(die_flash) );
VGA_control vga_control(.clk(clk),
.reset(reset),
.h_sync(h_sync),
.v_sync(v_sync),
.snake(sna
您可能关注的文档
最近下载
- (已压缩)关于建筑设计防火的原则规定(1960)(OCR).pdf VIP
- 离子注入+最详细的课件.ppt
- 2024美学落地手册方案文本.pdf VIP
- 电力配电网典型设计电缆分册.pdf VIP
- 广东省泄漏检测与修复(LDAR).doc VIP
- 土木工程测量PPT课件(共14章)项目2 水准测量.ppt VIP
- 铁塔换电管理系统操作手册.docx VIP
- 重难点03完全平方公式重难点题型专项训练(9大题型+18道培优题提分练)-【新课标】2024-2025学年七年级数学下册[含答案].pdf VIP
- 统编版小学语文二年级上册课文《纸船和风筝》教学设计.docx VIP
- 危急值报告制度.ppt VIP
文档评论(0)