我设计的3分频电路,大家提宝贵意见
时间:10-02
整理:3721RD
点击:
module counter(reset,clk,out);
input reset,clk;
output [2:0]out;
reg [2:0]out;
always@(posedge[/email] clk or posedge reset)
if (reset)
out<=0;
else
begin
if (out==2) out<=0;
else out<=out+1;
end
endmodule
input reset,clk;
output [2:0]out;
reg [2:0]out;
always@(posedge[/email] clk or posedge reset)
if (reset)
out<=0;
else
begin
if (out==2) out<=0;
else out<=out+1;
end
endmodule
module counter(reset,clk,out);
input reset,clk;
output [2:0]out;
reg [2:0]out;
always@(posedge clk or posedge reset)
if (reset)
out<=0;
else
begin
if (out==2) out<=0;
else out<=out+1;
end
endmodule
如果需要n分频,只要将2换成n-1
你用的什么语言啊?不是VHDL吧?
回复 #4 gzglad200 的帖子
verilog
这哪有分频啊?我分明看到的只有一个3进制计数器。
如果不考虑占空比,可以这样:
module counter(reset,clk,out);
input reset,clk;
output out;
reg out;
reg [1:0]temp;
always@(posedge clk or posedge reset)
if (reset)
begin out<=0;temp<=0;end
else
begin
temp<=temp+1;
if (temp==2'b11) out<=~out;
end
endmodule
回复 #6 visonwong 的帖子
楼上仁兄,计数器的输出本身就是经三分频的信号输出,所以觉得不必再另定义寄存器
灌水贴
鉴定完毕
呵呵,天才真多啊
也可以用assign语句最后赋值。