filter_20ms.v
来自「nios 嵌入式系统基础教程配套实验 定制基于AVALON总线的用户外设实验」· Verilog 代码 · 共 32 行
V
32 行
module filter_20ms(clk,in,out);
input clk;
input in;
output out;
reg[19:0] cnt;
reg out_r;
always @(posedge clk)
begin
if(in == 1'h1) //一旦出现高电平即复位计数器
begin
cnt <= 20'h0; //清0计数器
out_r <= 1'h1;//输出置1
end
else //低电平开始计数
begin
if(cnt >= 20'd960000) //CLK=48M,约200us
begin
// cnt <= 20'd960001; //计数满后保持
out_r <= 1'h0; //低电平宽度大于200us时输出低电平
end
else //低电平宽度小于200us时输出高电平
begin
cnt <= cnt + 20'h1;//计数器累加
out_r <= 1'h1; //
end
end
end
assign out = out_r;
endmodule
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?