• 已绑定课时
  • 工程师可点评

【作业要求】 1、请画出1s跑马灯的时序图? 2、请使用Verilog设计一个翻转灯:led隔1s翻转一次,led一开始亮两个灯,1s之后亮另外两个灯(写出详细的代码)? 【我的做法】 `timescale 1ns / 1ps module water_LED_text( input sysclk, input rst_n, output reg [3:0] led ); parameter TI…

YWJ
13 2 1
工程师评优秀2

1、请画出1s跑马灯的时序图?

2、请使用Verilog设计一个翻转灯:led隔1s翻转一次,led一开始亮两个灯,1s之后亮另外两个灯(写出详细的代码)?

`timescale 1ns / 1ps
module water_LED_text(
input       sysclk,
input       rst_n,
output   reg [3:0]   led
);
parameter   TIME_1s = 26'd50_000_000;
reg         [25:0]  count;
always@(posedge sysclk)
if(!rst_n)
count <= 0;
else
begin
if(count == TIME_1s - 1)
count <= 0;
else
count <= count + 1;
end
always@(posedge sysclk)
if(!rst_n)
led <= 4'b0011;
else
if(count == TIME_1s - 1)
led <= {led[1:0],led[3:2]};
else
led <= led;
endmodule

学习上下文

产出状态

评优秀2 位工程师
工程师已阅13 位工程师