| module key2(key,led,clk,rst); 
 input key,clk,rst;
 output led;
 
 
 reg[17:0] cout;
 always@(posedge clk)
 begin
 if(!rst)
 cout<=12'b0;
 else cout<=cout+1;
 end
 
 wire clk_5ms=&cout;
 
 reg key_r;
 always@(posedge clk)
 begin
 if(!rst)
 key_r<=1'b1;
 else if (clk_5ms)
 key_r<=key;
 end
 
 reg key_r_sw;
 always@(posedge clk)
 key_r_sw<=key_r;
 
 wire ledctrl=key_r_sw&(!key_r);
 
 reg led;
 always@(posedge clk or negedge rst )
 begin
 if(!rst)
 led<=1'b0;
 else if (ledctrl)
 led<=~led;
 
 end
 
 endmodule
 
 
 本来看艾米的程序,觉得自己看懂了,但是自己编完上面的程序之后,又迷茫了,觉得这样是错的,但是下载到板子上,居然能防抖。。。
 
 |