0

我正在使用 DE2 板的按钮作为异步复位,但它无法工作。这是我的 n 位寄存器模块:

module regne (D, Clock, Resetn, Q);

    parameter n;
    input [n-1:0] D;
    input Clock, Resetn;
    output reg [n-1:0] Q;

    always @ (posedge Clock or negedge Resetn)
    begin
        if (Resetn == 0)
            Q[n-1:0] <= 'b0;
        else
            Q[n-1:0] <= D[n-1:0];
    end
endmodule

但是,重置无法正常工作。当我按下按钮时它什么也不做。我认为这是由按钮弹跳引起的。那么如何在 Verilog 中实现去抖动呢?

4

1 回答 1

0

你不需要为 DE2 按钮实现 debouncer。它的按钮(按钮和开关按钮)本身有去抖器。

代替

always @ (posedge Clock or negedge Resetn)

always @ (posedge Clock)

如果它不起作用并且您确定您的引脚分配,请确保您的电路板正常工作。

于 2013-11-06T15:32:00.337 回答