基于FPGA使用verilog HDL设计一个数字时钟,时间24小时、60分钟、60秒钟的计数;首先默认我们的板载有源晶振为50MHz的时钟,然后我们已经设计了一个秒钟的计数模块,现在设计一个时钟的技术模块,基于秒钟和分钟计数满的flag信号为触发信号,对应的code设计如下:
module hour_clock(
input wire clk,
input wire rst_n,
input wire min_full_flag,
output reg [4:0] hour_data
);
//hour计数器
always @(posedge clk or negedge rst_n)
if( rst_n == 1'b0 )
hour_data <= 5'b0;
else if( (min_full_flag == 1'b1)&&(hour_data == 5'd23) )
hour_data <= 5'b0;
else if( min_full_flag == 1'b1 )
hour_data <= hour_data + 1'b1;
else
hour_data <= hour_data;
endmodule
更多回帖