EDA2
作业二:利用VerilogHDL语言设计一个数字时钟,硬件电路输入时钟信号频率为1KHz,时钟具有小时、分钟、秒等时间信息显示功能,小时采用24小时计数方式,时间信息采用7段数码管显示(共阴极数码管,显示方式采用动态或静态均可)。 设计参考: (1)设计一个10进制计数器; (2)利用10进制计数器分频得到1Hz信号(周期1秒); (3)分别设计60、24进制计数器,对时、分、秒计时; (4)设计BCD码译码模块,显示时间信息。
模块:
10进制计数器:
module CNT10(CLK,EN,RST,OUT,CO); input CLK,EN,RST; output [3:0]OUT; output CO; reg [3:0]OUT; reg CO;
always @(posedge CLK,negedge RST) begin if (!RST) OUT<=0; else begin if (EN) begin if (OUT==9) OUT=0; else OUT=OUT+1; end end end
always @(posedge CLK,negedge RST) begin if (!RST) CO=0; else begin if (OUT==9) CO=1; else CO=0; end end
endmodule


