专栏中心

EEPW首页 > 专栏 > FPGA开发板DIY过程(七)

FPGA开发板DIY过程(七)

发布人:mmqm 时间:2012-10-05 来源:工程师 发布文章

测试按键功能,主要是去抖动问题。
软件一般按键抖动通过延时10~20ms判断,硬件一般用RS触发器电路。
实际应用中,按键功能比较复杂,比如长按、短按、多键等。

这里简化处理,测试去抖时间为100ms,因此如果在100ms内按下又弹起,就认为按键无效;按下超过100ms,就有效。最终应用可以修改成20ms。
同时按下多键也能识别。


视频:
http://v.qq.com/boke/page/i/2/c/i0105jszk2c.html



代码:

//KEY模块
module m_key(clk, rst, key, led);
 
input clk; //系统时钟输入,50MHz,0.02us
input rst; //系统复位输入
 
input[7:0] key;

 

output[7:0] led; //led输出
reg[7:0] led;
 
reg key_down;
reg[7:0] key_reg;
reg[22:0] key_cnt;

always @(posedge clk or negedge rst)
begin
    if(!rst)
    begin
       key_down <= 1'b1;
       key_reg <= 8'hff;
       key_cnt <= 23'd0;
    end
    else if(key != key_reg)
    begin
        key_reg <= key;
        key_cnt <= 23'd0;
    end
    else
    begin
        if(key_cnt == 23'd5000000) //5000000*0.02us=100ms
            key_down <= key_reg == 8'hff;
        else
            key_cnt <= key_cnt + 1'b1;
    end
end

always @(negedge key_down)
begin
    if(led == key_reg)
        led <= 8'hff;
    else
        led <= key_reg;
end

endmodule

专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们

关键词:

相关推荐

国家标准-CAD文件管理编号原则

什么是有源RFID

视频 2009-10-19

MSP430—有源RFID的最佳选择

视频 2009-10-19

有源RFID的常见应用

视频 2009-10-19

贸泽电子开售Molex PowerWize 3.40mm互连器件

国内外功率晶体管实用手册下册

Ceva添加Sensory的TrulyHandsfree语音激活功能,增强NeuPro-Nano NPU生态系统

EDA/PCB 2026-01-09

焊接技术

资源下载 2007-03-23

英飞凌CoolMOS™ 8为长城电源的电源技术系统性能优化树立了新标杆

加速台式机PC的未来: AI赋能创新,为骁龙X系列开启全新产品形态

线性电源(3)线性稳压器的关键参数

CHIPCON低功耗无线通讯IC介绍

视频 2009-10-19

QNX技术助力宝马集团打造新一代软件定义汽车

国外晶体管参数与代换大全

资源下载 2007-03-23

利尔达有源RFID平台资源

Ceva在恩智浦的软件定义车辆处理器上实现实时人工智能加速

下一代平台革新:Arm 驱动物理AI与边缘AI落地

过孔传输特性与信号频率的关系

TITAN Haptics在CES 2026发布全透明线性磁悬浮马达Echo

CES 2026:英飞凌与HL Klemove实现SDV合作

更多 培训课堂
更多 焦点
更多 视频

技术专区