基于FPGA的拔河游戏设计

本文介绍了基于FPGA设计的一款拔河游戏,游戏通过11个LED指示进度,玩家通过按键竞赛,FPGA内部包含拔河模块和消抖模块。当一方按键频率高时,亮点向其移动,先到达终点者获胜。游戏还具备显示胜者次数的功能,并可通过裁判按键控制开始和清零。文中提供了拔河模块和消抖模块的关键代码。
摘要由CSDN通过智能技术生成

基于FPGA的拔河游戏机

设计内容:
(1)拔河游戏机需要11个发光二极管排成一行,开机 后只有中间一个亮点,作为拔河的中间线。
游戏双方 各持一个按键,迅速且不断地按动产生脉冲,哪方按 得快,亮点就向哪方移动,
每按一次,亮点移动一次。 移到任一方二极管的终端,该方就获胜。此时双方按 键均无作用,输出保持,只有经复位后才能使亮点恢 复到中心线。
(2)显示器显示胜者胜利的次数,裁判按键可以控制 开始和清零。

顶层模块包括拔河模块和消抖模块:
代码如下:
module top(
input clk,key1,key2,rst,nrst,
output [10:0]led,
output [6:0]seg
);

wire [3:0]q;
wire [1:0]left;
wire [1:0]right;
wire k1,k2,_25H;
bahe u_bahe(
.k1 (key1),
.k2 (key2),
.rst (rst),
.nrst (nrst),
._25H (clk),
.left (left),
.right (right)
.q (q)
);

xiaodou u_xiaodou(
.k1 (key1),
.k2 (key2),
.k1 (k1),
.k2 (k2),
._25H (_25H)
);

拔河模块代码如下,逻辑很简单,当两人按下按键不同时为00或11时,led会朝为1方移动一位,如此先到q先到0或10࿰

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

芯作者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值