找回密码
 注册
关于网站域名变更的通知
查看: 300|回复: 1
打印 上一主题 下一主题

 关于按键消抖的问题请教大神?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-8-5 11:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
 关于按键消抖的问题请教大神?
+ r5 e4 H7 z$ f1 x) j, k
8 s, l) I* p+ |; y8 M1 Sreg[2:0] key_rst;. W1 r+ f, F3 R+ B8 B
$ Q) l" f' m' m( U5 s
always @(posedge clk  or negedge rst_n)
5 G1 h3 Y; I6 I" x( R  S    if (!rst_n) key_rst <= 3'b111;
( o9 t) |' d4 x    else key_rst <= {sw3_n,sw2_n,sw1_n};
: F9 }' d; r: I9 |" y5 _6 S  \  u1 @
reg[2:0] key_rst_r;       //每个时钟周期的上升沿将low_sw信号锁存到low_sw_r中2 p) i; `2 v  w( [) W& |

. G) c+ i7 I' p# ?always @( posedge clk  or negedge rst_n)9 T7 ^) q5 n0 A7 b
    if (!rst_n) key_rst_r <= 3'b111;- _. J9 Z. u4 C6 L, j0 i
    else key_rst_r <= key_rst;
- U5 U! b: ~% j# x% B& M   . V! k! p" E. R4 \' V; v
//当寄存器key_rst由1变为0时,led_an的值变为高,维持一个时钟周期 ! e; l1 g9 R' ^" r% k
wire[2:0] key_an = key_rst_r & ( ~key_rst);
+ z' B  K9 e' Q/ t# b+ \$ p( h4 V8 x7 c" c* F. W
由于相差一个时钟周期最终key_an变为1,但是两个always之间是并行的啊,怎么会相差一个时钟周期呢?
2 m* o$ q! u7 \. i请教大神,非常干感谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-10-12 14:19 , Processed in 0.125000 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表