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

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

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

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
    下载

相关推荐