⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 key.v

📁 这是Actel 的FPGA的译码器的VHDL源代码。
💻 V
字号:
/********************************版权声明**************************************
**                         广州致远电子有限公司
**                                     
**                        http://www.embedtools.com
**
**-------------------------------------------文件信息----------------------------------------------------------
** 文件名称:       KEY.v	
** 创建者:		   
** 创建日期:       2008. 7.8		
** 版本号:         V1.0	
** 功能描述:   	按键检测	
** 
**--------------------------------------修改文件的相关信息--------------------------------------------------
** 修改人:		
** 修改日期:		
** 版本号:		
** 修改内容:		
**
*******************************************************************************/

module KEY(
            sysclk,
            key_in1,
            key_in2,
            key_out1,
            key_out2
            );
    input   sysclk;                 //系统时钟
    input   key_in1,key_in2;        //键盘输入
    output  key_out1,key_out2;     //消除抖动后的键盘输出
    reg     key_out1,key_out2;

    reg     key_temp11;
    reg     key_temp12;
    reg     key_temp13;
    reg     key_temp14;

    reg     key_temp21;
    reg     key_temp22;
    reg     key_temp23;
    reg     key_temp24;

/********************************************************************************
** 模块名称:按键KEY1消抖
** 功能描述:通过连续扫描,然后把寄存器相与,消除按键抖动.
********************************************************************************/
always@(posedge sysclk)
  begin
      key_temp11 <= key_in1;
      key_temp12 <= key_temp11;
      key_temp13 <= key_temp12;
      key_temp14 <= key_temp13;
      key_out1 <=~ (key_temp11 & key_temp12 &key_temp13 & key_temp14 & key_in1);
  end
  
/********************************************************************************
** 模块名称:按键KEY2消抖
** 功能描述:通过连续扫描,然后把寄存器相与,消除按键抖动.
********************************************************************************/
always@(posedge sysclk)
  begin
      key_temp21 <= key_in2;
      key_temp22 <= key_temp21;
      key_temp23 <= key_temp22;
      key_temp24 <= key_temp23;
      key_out2 <=~ (key_temp21 & key_temp22 &key_temp23 & key_temp24 & key_in2);
  end
endmodule
  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -