断忆风 发表于 2014-6-21 20:56 
就是0-28后进行0-29然后0-30然后0-31
看是不是这个意思:
module autocounter28_29_30_31(clk, out);
input clk;
output out;
reg out;
reg [4:0] count;
reg [1:0] status;
always @ (posedge clk)
begin
count <= count + 1;
if(0);
else if(status==0)
if(count==28)
begin
status <= 1;
out <= 1;
count <= 0;
end
else if(status==1)
if(count==29)
begin
status <= 2;
out <= 0;
count <= 0;
end
else if(status==2)
if(count==30)
begin
status <= 3;
out <= 1;
count <= 0;
end
else if(status==3)
if(count==31)
begin
status <= 0;
out <= 0;
count <= 0;
end
end
endmodule
|