• 方案介绍
  • 附件下载
  • 相关推荐
申请入驻 产业图谱

贪食蛇游戏仿真设计Verilog代码ISE仿真

09/05 10:34
419
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-24092Q22055419.doc

共1个文件

名称:贪食蛇游戏仿真设计Verilog代码ISE仿真

软件:ISE

语言:Verilog

代码功能:贪食蛇游戏仿真

FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com

演示视频:

设计文档:

1. 按键消抖模块

检测到按键按下后,拉低超过一段时间则认定为按下有效,产生使能脉冲信号,图中可以看到该信号拉高,此时认为接收到有效的按键输入信号。

2. VGA模块

本文中 VGA 显示控制模块实现的是时钟频率为 25.175MHz,帧频 60Hz,在可见范围内一帧有 480 行,每行可见 640 个像素的显示模式。编写Verilog代码后,生成RTL接口图:

上述仿真结果中可以看出,根据VGA的时序,进行模拟之后可以产生行同步信号和场同步信号,并且可以输出图像数据。

3. 贪食蛇运动控制模块

从上述仿真结果可以看出,当按下up向上按键后,蛇的Y坐标值从991变成992,增加1,即向上运动1个坐标值,符合贪吃蛇控制需求,其它按键类似。

4. 苹果生成模块

苹果自从复位后,便开始产生,仿真结果中显示的蛇头坐标为:X=10,Y=5,苹果的坐标值是X=28,Y=13,如果蛇头的坐标值和该苹果值坐标重合,则会出发Body_add_sig信号从0变成1,蛇身体增加一节。

部分代码展示:

`timescale 1ns / 1ps
////////////////////////////////////////////////////////////////////////////////
// Company: 
// Engineer:
//
// Create Date:   10:56:02 03/28/2020
// Design Name:   Greedy_snake
// Module Name:   G:/FPGA-GO/NO190/project/greedy_sim.v
// Project Name:  Greedy_snake
// Target Device:  
// Tool versions:  
// Description: 
//
// Verilog Test Fixture created by ISE for module: Greedy_snake
//
// Dependencies:
// 
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
// 
////////////////////////////////////////////////////////////////////////////////
module greedy_sim;
// Inputs
reg Clk;
reg Rst_n;
reg Left;
reg Right;
reg Up;
reg Down;
// Outputs
wire VSYNC_Sig_out;
wire HSYNC_Sig_out;
wire [4:0] VGA_red_o;
wire [5:0] VGA_green_o;
wire [4:0] VGA_blue_o;
wire vga_clk;
wire vga_blank;
wire vga_sync;
wire [7:0] Smg_duan;
wire [3:0] Smg_we;
// Instantiate the Unit Under Test (UUT)
Greedy_snake uut (
.Clk(Clk), 
.Rst_n(Rst_n), 
.Left(Left), 
.Right(Right), 
.Up(Up), 
.Down(Down), 
.VSYNC_Sig_out(VSYNC_Sig_out), 
.HSYNC_Sig_out(HSYNC_Sig_out), 
.VGA_red_o(VGA_red_o), 
.VGA_green_o(VGA_green_o), 
.VGA_blue_o(VGA_blue_o), 
.vga_clk(vga_clk), 
.vga_blank(vga_blank), 
.vga_sync(vga_sync), 
.Smg_duan(Smg_duan), 
.Smg_we(Smg_we)
);
initial begin
// Initialize Inputs
Clk = 0;
Rst_n = 0;
Left = 0;
Right = 0;
Up = 0;
Down = 0;

点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=1153

  • 2-24092Q22055419.doc
    下载

相关推荐