方波信号发生器verilog
时间: 2023-08-15 13:08:22 浏览: 239
基于verilog的信号发生器
4星 · 用户满意度95%
下面是一个基本的方波信号发生器的 Verilog 代码示例:
```verilog
module square_wave_generator(
input clk,
input rst,
output reg square_wave
);
reg [31:0] cnt;
always @(posedge clk or negedge rst) begin
if(!rst) begin
cnt <= 0;
square_wave <= 0;
end else begin
cnt <= cnt + 1;
if (cnt >= 50000000) begin // 50 MHz / 2 = 25 MHz, 25 MHz / 50000000 = 0.5 Hz
cnt <= 0;
square_wave <= ~square_wave;
end
end
end
endmodule
```
这个方波信号发生器使用一个计数器来计算时钟周期数,并在计数器达到给定值时切换输出值以产生方波信号。在这个例子中,我们使用一个 50 MHz 的时钟,产生一个频率为 0.5 Hz 的方波信号。你可以根据需要更改计数器的值来产生其他频率的信号。
阅读全文