1. ALtera FPGA硬件开发板
2. 设计软件(Quartus II )
3. pc机
可变模式计数器设计
设计模为 4、8、12、16的可变计数器。
要求:(1)计数周期为0.5秒;
(2)用按键选择计数模式;
(3)用LED灯表示当前计数模式。
module counter(clk,rst,out);
input clk,rst;
output out;
reg [3:0]k;
reg [3:0]n;//控制变模
reg [3:0]m;//模系数
always@(posedge clk or negedge rst)
if(!rst)
begin
n<=4'b0000;
m<=4'b0000;
k<=4'b0000;
end
else if(k==m)//当k等于模系数(3.7.11.15)时将k置成0
begin
k<=4'b0000;
end
else
begin
k<=k+1'b1;
end
always@(posedge clk or negedge rst)
if(!rst)
begin
m<=4'b0000
n<=4'b0000;
k<=4'b0000;
end
else
case(n)
4'b0001:m=4'b0011;
4'b0010:m=4'b0111;
4'b0100:m=4'b1011;
4'b1000:m=4'b1111;
endcase
endmodule
|