Page 143 - 3-2
P. 143
key_state <= KEY_ON;
end
end
else begin // KEY_OFF
d_sw <= 0;
if(cnt >= BOUNCING_DELAY) begin
cnt <= 0;
key_state <= KEY_ON;
end
else begin
cnt <= cnt + 1;
key_state <= KEY_OFF;
end
end
end
end
endmodule
----------------------------------------------------------------------
module s_test
(arduino_purchase,clk,reset,sen1_in,sen1_out,warning_sig,speaker1,speaker2,speaker3);
input clk;
input reset;
input sen1_in,sen1_out;
input arduino_purchase;
reg [12:0] buffin,buffout;
output reg warning_sig;
output speaker1,speaker2,speaker3;
reg [1:0] cs=2'b00;
reg [1:0] ns; //cs=current state, ns=next state
reg senin,senout;
wire key_en_debounce_in;
wire key_en_debounce_out;
integer clk_cnt;
reg sec5_end;
Booser U1 (clk,reset,warning_sig,speaker1,speaker2,speaker3);
sw_debouncing U2 (clk, reset, sen1_in, key_en_debounce_in);
sw_debouncing U3 (clk, reset, sen1_out, key_en_debounce_out);
parameter sen=2'b00, in=2'b01, out=2'b10, sec5=2'b11;
- 143 -