主要就是在以前文章代码上加了消抖:
消抖模块:
module Debounce(input[7:0] Btn_In, input CLK, input CLK_n, output[7:0] Out );
reg[7:0] Delay0,Delay1,Delay2;
always @(posedge CLK, negedge CLK_n)
begin
if(!CLK_n) begin Delay0<=8'b0; Delay1<=8'b0; Delay2<=8'b0; end
else begin //向右移位
Delay0<=Btn_In;
Delay1<=Delay0;
Delay2<=Delay1;
end
end
assign Out=Delay0 & Delay1 & Delay2;
endmodule