always@(posedge clk or negedge rst_n)
begin
if(!rst_n)
begin
led_dly1 <=0;
led_dly2 <=0;
end
else
begin
led_dly1 <= led_in;
led_dly2 <= led_dly1;
end
end
reg led_temp1;
二、对处理后的两个信号做一个相与和相或的运算
always@(posedge clk or negedge rst_n)
begin
if(!rst_n)
begin
led_temp1 <=0;
end
else
led_temp1 <= led_dly1 &&(~led_dly2);
end
reg led_temp2;//前面的信号取反就是获得上边沿信号
always@(posedge clk or negedge rst_n)
begin
if(!rst_n)
begin
led_temp2 <=0;
end
else
led_temp2 <= led_dly2 &&(~led_dly1);
end
//后面的信号取反就是获取下边沿信号
三、点亮led灯
always@(posedge clk or negedge rst_n)
begin
if(!rst_n)
begin
led1 <=0;
end
elseif(led_temp1)
led1 <=1;elseif(led_temp2)
led1 <=0;else led1 <= led1;
end