📄 key.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 + -