📄 traffic_light.v.bak
字号:
module Traffic_Light(CLOCK_50, LED, KEY);
output [7:0] LED;
input CLOCK_50;
input KEY ;
reg [27:0] Cont;
reg [3:0] timer;
reg [7:0] mLED;
reg [2:0] mode;
always @ (posedge CLOCK_50 or negedge KEY)
begin
if (!KEY)
begin
mLED <= 8'b00000000;
Cont <= 0;
mode <= 0;
timer <= 0;
end
else
begin
case (mode)
0 : begin
if (Cont > 160000000 && Cont < 180000000)
mLED <= 8'b10000000;
else if (Cont > 180000000 && Cont < 200000000)
mLED <= 8'b10000010;
else if (Cont > 200000000 && Cont < 220000000)
mLED <= 8'b10000000;
else if (Cont > 220000000 && Cont < 240000000)
mLED <= 8'b10000010;
else if (Cont > 240000000 && Cont < 260000000)
mLED <= 8'b10000000;
else
mLED <= 8'b10000010;
if (Cont==268435455)
mode <= mode + 1;
end
1 : begin
mLED <= 8'b10000100;
if (Cont==36000000)
begin
mode <= mode + 1;
Cont <= 0;
end
end
2 : begin
if (Cont > 160000000 && Cont < 180000000)
mLED <= 8'b00001000;
else if (Cont > 180000000 && Cont < 200000000)
mLED <= 8'b00101000;
else if (Cont > 200000000 && Cont < 220000000)
mLED <= 8'b00001000;
else if (Cont > 220000000 && Cont < 240000000)
mLED <= 8'b00101000;
else if (Cont > 240000000 && Cont < 260000000)
mLED <= 8'b00001000;
else
mLED <= 8'b00101000;
if (Cont==268435455)
mode <= mode + 1;
end
3 : begin
mLED <= 8'b01001000;
if (Cont==36000000)
begin
mode <= 0;
Cont <= 0;
end
end
default : mode <= 0;
endcase
Cont <= Cont + 1'b1;
end
end
assign LED = ~mLED;
endmodule
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -