全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 可编程逻辑 >

按键抖动消除verilog设计

时间:2023-04-27 09:55

人气:

作者:admin

标签: 触发器  FPGA芯片  FPGA设计 

导读:按键作为一种机械开关,在进行按键操作时,机械接触点的弹性及电压突变等原因,在机械开关合闭的时候会出现电压抖动,因此在实际的应用当中需要做一定的处理。...

按键作为一种机械开关,在进行按键操作时,机械接触点的弹性及电压突变等原因,在机械开关合闭的时候会出现电压抖动,因此在实际的应用当中需要做一定的处理。

一般按键按下就是低电压,这种按键去抖动的关键就是获取稳定的低电压电平状态,因此,对于对于一个按键信号,可以用一个脉冲信号对其进行采样,如果连续三次采样都为低电平的话,就认为是按键被按下。其数字电路原型为下图

acc2c9de-e455-11ed-ab56-dac502259ad0.png

其实,我们在做FPGA设计之前,就应该大概知道自己的coding 在FPGA芯片上面会映射成什么电路,这样写的代码才是可靠的,有了上面的原理图,那么Verilog代码就很容易了,如下

input    wire    Clk    ;
input    wire    key_in    ;
output   wire    key_out   ;

reg    key_dly1;
reg    key_dly2;
reg    key_dly3;

always @(posedge Clk)
begin
    if(Rst_n == 1'b0)        begin
            key_dly1 <= 1'b0;            key_dly2 <= 1'b0;            key_dly3 <= 1'b0;        end
    else
        begin
            key_dly1 <= key_in  ;
            key_dly2 <= key_dly1;
            key_dly3 <= key_dly2;
        end        
end


assign    key_out = key_dly1 | key_dly2 | key_dly3;

对于复杂的电路我们也可以把他分解为每一个触发器,然后心里有个大概的硬件原理图,这样写代码才胸有成竹。






审核编辑:刘清

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信