实验四 花样彩灯
代码
//Name: led_more.v
//Function:
// 50MHz PIN_27 SW8 D8---D1
// clk rst led[7:0]
//Author: YanceyLu
module led_more(clk,rst,led);
input clk,rst;
output [7:0] led;
reg [7:0] led;
reg [25:0] delay_cnt;
reg [7:0] state;
reg clk1;
wire newclk;
assign newclk=clk1;
always @(posedge clk or negedge rst)
begin
if(!rst)
begin
delay_cnt<=0;
clk1<=0;
end
else
begin
if(delay_cnt==12499999)
begin
delay_cnt<=0;
clk1<=~clk1;
end
else
delay_cnt<=delay_cnt+1;
end
end
always @(posedge newclk or negedge rst)
begin
if(!rst)
begin
led<=0;
state<=0;
end
else
begin
state<=state+1;
case(state)
//led flicker
0: led<=0;
1: led<=8'b11111111;
2: led<=0;
3: led<=8'b11111111;
//led water
4: led<=8'b01111110;
5: led<=8'b00111100;
6: led<=8'b00011000;
7: led<=0;
8: led<=8'b11111111;
9: led<=8'b01111110;
10: led<=8'b00111100;
11: led<=8'b00011000;
12: led<=0;
//led run
13: led<=8'b11111111;
14: led<=8'b01111110;
15: led<=8'b10111101;
16: led<=8'b11011011;
17: led<=8'b11100111;
18: led<=8'b11111111;
19: led<=8'b01111110;
20: led<=8'b10111101;
21: led<=8'b11011011;
22: led<=8'b11100111;
23: led<=8'b11111111;
default:
state<=0;
endcase
end
end
endmodule
效果视频