急求用hdl语言编写六十进制计数器

来源:百度知道 编辑:UC知道 时间:2024/06/19 06:49:44
具体要求:
用数码管显示计数结果,用发光二极管显示进位
计时从00 到59
只有一个时钟信号
要在QUARTUS 2 上完成
高手帮帮忙啊
最好用 vdhl语言 附带一些说明

module counter(clk,seg7_1,seg7_0);
input clk;
output[3:0] seg7_1,seg7_0;
output cin;//进位信号
reg[3:0] seg7_1,seg7_0;
reg[3:0] data1,data0;

always@(posedge clk)
begin
if(data0<4'b1001)
begin
data0<=data0+4'b1;
cin<=1'b0;
end
else
begin
data0<=4'b0;
if(data1<4'b0101)
data1<=data1+4'b1;
else
begin
data1<=4'b0;
cin<=1'b1;
end
end
end
//以下为显示程序,数码管假设为共阴极;
always@(data1)
begin
case(data1)
4'b0000:seg7_1=7'b1111110;
4'b0001:seg7_1=7'b0110000;
4'b0010:seg7_1=7'b1101101;
4'b0011:seg7_1=7'b1111001;
4'b0100:seg7_1=7'b0110011;
4'b0101:seg7_1=7'b1011011;
default:seg7_1=7'b0000000;
endcase