













module time_ctrl( input clk, input rst_n, output reg [3:0] ctrl_en ); parameter T1 = 200_000_000; //4s parameter T2 = 400_000_000; //8s parameter T3 = 600_000_000; //12s parameter T4 = 800_000_000; //16s reg [29:0] cnt; //counter always @(posedge clk,negedge rst_n) begin if(!rst_n) cnt <= 0; else if(cnt < T4 - 1) cnt <= cnt + 1; else cnt <= 0; end //turn on led 1 by 1 always @(posedge clk,negedge rst_n) begin if(!rst_n) ctrl_en <= 0; else if(cnt >= T3 - 1) ctrl_en <= 4'b1000; //NO.4 led on else if(cnt >= T2 - 1) ctrl_en <= 4'b0100; //NO.3 led on else if(cnt >= T1 - 1) ctrl_en <= 4'b0010; //NO.2 led on else ctrl_en <= 4'b0001; //NO.1 led on end endmodule
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。