新手入门的简单小例子-05-03 - FPGA开发者技术社区 - 电子技术william hill官网 - 广受欢迎的专业电子william hill官网 - 威廉希尔官方网站
分享 收藏 返回

商周 关注 私信
[文章]

新手入门的简单小例子-05-03

基于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

更多回帖

×
发帖