1 //led闪烁测试模块 2 //使用外部50MHz晶振作为时钟,周期20ns 3 //亮灭周期1s 4 module led_test1( 5 clk, 6 rst_n, 7 led 8 ); 9 10 input clk; 11 input rst_n; 12 output led; 13 14 15 reg [27:0] cnt; //定义一个计数器计时 16 17 always @ (posedge clk or negedge rst_n) 18 if(!rst_n) 19 cnt<=0; //复位置0计数器 20 else if(cnt<=27'd50000000) //需要经过50000000个周期才达到1s 21 cnt<=cnt+1'd1; 22 else 23 cnt<=0; 24 25 assign led=(cnt<=25000000) ? 1'b1:1'b0; //占空比50% 26 27 endmodule
RTL视图