18个LED灯,每隔1秒流水亮灯,上板没反映,请教一下代码有问题吗
module led (
input clk,
input rstn,
output reg[17:0] led
);
reg [24:0] counter;
reg [4:0] led_count;
always@(posedge clk or negedge rstn)
begin
if(rstn==1'b0)
counter<=25'b0;
else
counter<=counter+25'b1;
end
always@(posedge clk or negedge rstn)
begin
if(rstn==1'b0)
led_count<=5'b0;
else
if(counter==25'b0)
led_count<=led_count+5'b1;
end
always@(posedge clk or negedge rstn)
begin
if(rstn==1'b0)
led<=18'b0;
else
case(led_count)
0 :led=18'b0000_0000_0000_0000_01;
1 :led=18'b0000_0000_0000_0000_10;
2 :led=18'b0000_0000_0000_0001_00;
3 :led=18'b0000_0000_0000_0010_00;
4 :led=18'b0000_0000_0000_0100_00;
5 :led=18'b0000_0000_0000_1000_00;
6 :led=18'b0000_0000_0001_0000_00;
7 :led=18'b0000_0000_0010_0000_00;
8 :led=18'b0000_0000_0100_0000_00;
9 :led=18'b0000_0000_1000_0000_00;
10:led=18'b0000_0001_0000_0000_00;
11:led=18'b0000_0010_0000_0000_00;
12:led=18'b0000_0100_0000_0000_00;
13:led=18'b0000_1000_0000_0000_00;
14:led=18'b0001_0000_0000_0000_00;
15:led=18'b0010_0000_0000_0000_00;
16:led=18'b0100_0000_0000_0000_00;
17:led=18'b1000_0000_0000_0000_00;
default:led=18'b0;
endcase
end
endmodule
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>