⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 osc_control.v

📁 verilog编写基于FPGA的示波器核心实现
💻 V
字号:
module osc_control(
					oscaddrin,
					oscdatain,
					osc_sig,
					cs,
					clk,
					ADDROUT,
					DATAOUT,
					rden,
					wren
					);
input [16:0] oscaddrin;					
input [15:0] oscdatain;
input osc_sig;
input cs;
input clk;
output reg [9:0] ADDROUT;
output reg [7:0]  DATAOUT;
output reg rden;
output reg wren;


parameter 	IDLE		=	4'b0001,
			ALLIN		=	4'b0010,
			WAIT1		=	4'b0100,
			WAIT2		=	4'b1000;

reg [3:0] state;

always @(posedge clk)                                                                        
begin
if (cs)
	begin
	wren<=0;
	rden<=1;
	state<=IDLE;
	end
else
	case (state)
	default	:begin					//IDLE
			wren<=0;
			rden<=1;
			if (osc_sig)
				begin
				state<=ALLIN;
				end
			else
				state<=IDLE;	
			end	
	ALLIN:	begin
			ADDROUT<={oscaddrin[13:8],oscaddrin[3:0]};
			DATAOUT<=oscdatain[7:0];
			state<=WAIT1;
			wren<=0;
			rden<=0;
			end
	WAIT1:	begin
			wren<=1;
			rden<=0;
			state<=WAIT2;
			end	
	WAIT2:	begin
			wren<=1;
			rden<=0;
			state<=IDLE;
			end															
	endcase
end	

endmodule			

⌨️ 快捷键说明

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