control.v

来自「一些很好的FPGA设计实例」· Verilog 代码 · 共 36 行

V
36
字号

module control(EN_in,SW1,RST,Red1,Red2,Yellow1,Yellow2,Green1,Green2);

output Red1;
output Red2;
output Yellow1;
output Yellow2;
output Green1;
output Green2;

input  [1:0] EN_in;//控制红黄绿灯切换的驱动使能信号
input  SW1;       
input  RST;

reg Red1,Red2,Yellow1,Yellow2,Green1,Green2,D_out;

always @(EN_in,RST,SW1)
begin
	if(SW1==0||RST==0) {Red1,Red2,Yellow1,Yellow2,Green1,Green2}=6'b0;
	else
	  begin
	    case(EN_in)
			2'b00 : {Red1,Red2,Yellow1,Yellow2,Green1,Green2}=6'b010010;
			//方向2红灯亮方向1绿灯亮
			2'b01 : {Red1,Red2,Yellow1,Yellow2,Green1,Green2}=6'b011000;
			//方向2红灯亮方向1黄灯亮
			2'b10 : {Red1,Red2,Yellow1,Yellow2,Green1,Green2}=6'b100001;
			//方向2绿灯亮方向1红灯亮
			2'b11 : {Red1,Red2,Yellow1,Yellow2,Green1,Green2}=6'b100100;
			//方向2黄灯亮方向1红灯亮
			default : {Red1,Red2,Yellow1,Yellow2,Green1,Green2}=6'b0;
		
		endcase		
	  end
end
endmodule 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?