这个是黑金的板子提供的原版按键消抖程序
`timescale 1ns / 1ps
//
// Company:
// Engineer:
//
// Create Date: 2020/02/29 10:59:33
// Design Name:
// Module Name: key_detected
// Project Name:
// Target Devices:
// Tool Versions:
// Description:
//
// Dependencies:
//
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
//
//
module key_detected#
( parameter FREQ = 50, //model clock :Mhz
parameter MAX_TIME = 20 //ms
)(
input clk,
input rstn,
input button_in,
output reg button_posedge,
output reg button_negedge
);
---------------- internal constants --------------
localparam N = 32 ; // debounce timer bitwidth
localparam TIMER_MAX_VAL = MAX_TIME * 1000 * FREQ;
---------------- internal variables ---------------
reg [N-1 : 0] q_reg; // timing regs
reg [N-1 : 0] q_next;
reg DFF1