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

乒乓球比赛游戏设计Verilog代码Quartus仿真

10/14 10:42
638
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-2411191U235602.doc

共1个文件

名称:乒乓球比赛游戏设计Verilog代码Quartus仿真

软件:Quartus

语言:Verilog

代码功能:

乒乓球比赛游戏

设计一个数字系统,模拟选手 A(左方)和选手 B(右方)的乒乓球比赛游戏,要求具有如下功能:

1、裁判按开始键后开始比赛,首先左方 A 发球,每方发5个球后自动换发球;

2、能模拟乒乓球台上球的运动轨迹和击球过程;

3、能自动判球,统计显示双方得分情况,先获得 15 分者获胜;

4、判球标准为 : 球到达一方的球拍位置时,若该选手未按击球键则对方得分;若球未到达击球位置,选手提前击球则击球无效,但不失分。

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

演示视频:

设计文档:

1. 乒乓球游戏功能

设计一个乒乓球游戏,模拟选手 A(左方)和选手 B(右方)的乒乓球比赛游戏,要求具有如下功能:

1、裁判按开始键后开始比赛,首先左方 A 发球,每方发5个球后自动换发球;

2、能模拟乒乓球台上球的运动轨迹和击球过程;

3、能自动判球,统计显示双方得分情况,先获得 15 分者获胜;

4、判球标准为 : 球到达一方的球拍位置时,若该选手未按击球键则对方得分;若球未到达击球位置,选手提前击球则击球无效,但不失分。

QuartusII 9.0软件

2. 工程文件

3. 程序文件

4. 程序编译

5. RTL图

6. 仿真图

按键下降沿检测模块

游戏控制模块

数码管显示模块

部分代码展示:

//数码管显示模块
module display_num(
input clk,
input [7:0] score_1,//分数1
input [7:0] score_2,//分数2
output reg [7:0] HEX0,//数码管0
output reg [7:0] HEX1,//数码管1
output reg [7:0] HEX2,//数码管2
output reg [7:0] HEX3//数码管3
);
wire [3:0] data1;
wire [3:0] data2;
wire [3:0] data3;
wire [3:0] data4;
//除以10得十位,取余得个位
assign data1=score_1/10;//十位
assign data2=score_1%10;//个位
assign data3=score_2/10;//十位
assign data4=score_2%10;//个位
//数码管显示
always@(posedge clk)
begin
case(data4)
4'd0 : HEX0= 8'hc0; 
4'd1 : HEX0= 8'hf9; 
4'd2 : HEX0= 8'ha4; 
4'd3 : HEX0= 8'hb0; 
4'd4 : HEX0= 8'h99; 
4'd5 : HEX0= 8'h92;
4'd6 : HEX0= 8'h82; 
4'd7 : HEX0= 8'hf8; 
4'd8 : HEX0= 8'h80; 
4'd9 : HEX0= 8'h90; 
default:HEX0= 8'hc0; 
endcase
end

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

  • 2-2411191U235602.doc
    下载

相关推荐