一. 硬件介绍

  • FPGA开发板
  • 一个按键
  • 一个led灯

二. 功能介绍

  • 可以满足三种不同要求的消抖方式
  • 通过led灯测试三种消抖方式

三. 消抖方式介绍

  • mode 0 : 按键按下消抖后,算一次。
  • mode 1 : 按键按下消抖后,抬起,算一次。
  • mode 2 : 按键按下消抖后,每隔一段时间,算一次。

通过下面这个mode参数可以在例化的时候,选择对应的模式。

//模式
//0   按下生效,抬起,算一次
//1   按下抬起,算一次
//2 按下后,一段时间算一次
parameter           mode = 2;

四. 测试top文件介绍

  • mode 0 : 按下的时候,led状态取反
  • mode 1: 按下,抬起的时候,led状态取反
  • mode 2: 按下,每隔一段时间,led状态取反
module top(input             clk,input               rst_n,input                 key,output              led
);
wire            okey;
reg led_reg;
assign   led = led_reg;
always@(posedge clk or negedge rst_n)
beginif(rst_n == 1'b0)led_reg <= 1'b0;else if(okey == 1'b1)led_reg <= ~led_reg;elseled_reg <= led_reg;endbtn_dis_shake  #(.mode          (1)
)
btn_dis_shake_HP(.clk           (clk),.rst_n        (rst_n),     .ikey               (key),.okey         (okey));
endmodule

欢迎关注微信公众号 FPGA之旅 回复 按键消抖 获取下载链接

FPGA按键消抖(高级篇)相关推荐

  1. stm32 工业按键检测_STM32单片机按键消抖和FPGA按键消抖大全

    写在前面: 物联网STM32入门 - 直播课程 - 创客学院​www.makeru.com.cn 按键去抖:由上图可以看出理想波形与实际波形之间是有区别的,实际波形在按下和释放的瞬间都有抖动的现象,抖 ...

  2. stm32硬件消抖_STM32单片机按键消抖和FPGA按键消抖大全

    原标题:STM32单片机按键消抖和FPGA按键消抖大全 写在前面: 按键去抖:由上图可以看出理想波形与实际波形之间是有区别的,实际波形在按下和释放的瞬间都有抖动的现象,抖动时间的长短和按键的机械特性有 ...

  3. FPGA编程按键消抖

    FPGA按键消抖 编写思路 1.按键消抖的基本原理 2.代码原理 3.代码部分 4.仿真代码编写 5.仿真 6.总结 一.按键消抖的基本原理 按键消抖,按下,松开存在毛刺,主要为了消除毛刺.通过稳定后 ...

  4. FPGA学习笔记---利用连续赋值语句延时功能实现按键消抖

    最近一直在学习FPGA,今天在学习延时语句时,发现了连续赋值的一个特点.在连续赋值语句中添加延时时,任何小于延迟值的输入变化都会被滤除而不会体现在输出上.比如  #10 B = A; 当A的变化小于1 ...

  5. 【 FPGA 】按键消抖与LED灯流动小实验

    记录一个小实验吧,实验的目的是仅仅是塞塞牙缝而已,没其他意思,很简单. 功能:拨码开关控制led灯工作与否,拨码开关为on,led灯工作,否则不工作:导航按键up和down,也就是独立按键而已,控制l ...

  6. [FPGA入门笔记](十):按键消抖实验

    简介 今天购买了AXLINX AX7020的开发板,从今天开始每一个例程都要做文档记录,为自己加油. 本实验,基于ALINX AX7020开发板,芯片为xc7z020clg400-2.开发板输入时钟为 ...

  7. FPGA VerilogHDL语言 数字钟 按键消抖

    1.描述 一个简单的基于FPGA的数字钟,语言用的是VerilogHDL,可以实现以下功能: 1. 数码管显示0-59(秒表) 2. 数码管显示:时-分-秒 3. 数码管显示时分秒并且可以设置时间(小 ...

  8. FPGA学习-Verilog实现独立按键消抖

    文章目录 前言 一.独立按键消抖原理 二.按键消抖程序实现(Verilog) 1.按键触发判断 2.计数器模块实现 3.按键状态更新 4.按键控制led亮灭 三.仿真测试文件编写 四.编译结果 前言 ...

  9. verilog基础-状态机之FPGA独立按键消抖设计与验证(熟练testbench的写法)

    独立按键消抖设计与验证 本实验主要是为了锻炼状态机的思维模式以及熟练掌握TB的写法 本节主要收获了:define的用法,另外就是,顶层的input在TB中是reg的真正含义,其实就是把激励当做寄存器来 ...

最新文章

  1. docker 容器无法使用中文 解决方案
  2. HTML5标签的语义认知和理解
  3. redis配置_Redis配置大全(三)
  4. strust2自定义拦截器
  5. 轻轻的你来了,悄悄的你走了,邓总没有带走一个bug
  6. mysql数据库的多实例_MySQL数据库多实例应用实战 - 橙子柠檬's Blog
  7. Redis(六):Set集合数据类型详解
  8. android slidingmenu框架,常用框架之SlidingMenu的使用(基于AndroidStudio)
  9. .net web开发经典图书总结
  10. JS 获取宽,高(ie未测)
  11. php xml三级联动,jquery+xml实现三级联动步骤详解
  12. 计算机系统硬件基本组成
  13. java实现根据身份证计算年龄的两种方式
  14. 期望收益率、方差、协方差、相关系数的计算公式
  15. 深度学习笔记:DCN
  16. Cisco交换机IOS备份还原
  17. 如何在 Python3 中对列表 通过比较排序(不懂就问)?
  18. 随机搜索(Random Searching)算法
  19. 有些市场上卖的卤牛肉40元一斤,是真牛肉吗?
  20. 最新研究表明:熬夜会增加患癌症几率

热门文章

  1. Python机器学习——多元线性回归案例(二)
  2. ArcBlock ⑪ 月报 | 平台 1.0、钱包 2.0 次第发布
  3. 通过读取excel文件来修改图片文件名字
  4. js练习6 --- DOM文本节点的操作、动态脚本、动态样式、操作表格
  5. 【操作系统】并发与并行
  6. 【AD封装】插件电解电容,贴片电容,钽电容,独石电容(带3D)
  7. 使电脑拥有公网ip方法
  8. div中无缝嵌入html页面,div嵌套html不用iframe
  9. 数字藏品NFT交易系统开发 实现元宇宙虚拟事物资产化
  10. js进行取余循环遍历