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

📄 pattermgen.v

📁 FPGA 学习 .再学习 .谢谢!啥得啊,还不够呢!
💻 V
字号:
`timescale 1ns / 1ps
////////////////////////////////////////////////////////////////////////////////
// Company: 
// Engineer:
//
// Create Date:    15:33:44 09/07/06
// Design Name:    
// Module Name:    PattermGen
// Project Name:   
// Target Device:  
// Tool versions:  
// Description:
//
// Dependencies:
// 
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
// 
////////////////////////////////////////////////////////////////////////////////

// Gray Patterm 
// Data = (( H_CountPixel >> (H_ActiveDisplayWidth/256) ) + VisableOffset ) & Gray256step

module GrayBar(H_Pixel, V_Line , R_DataOut,G_DataOut,B_DataOut,R_DataOut2,G_DataOut2,B_DataOut2 );

parameter GrayCountStep = 1 ;
parameter Gray_256_Step = 8'B11111111 ;
	 

    input [9:0] H_Pixel;
    input [9:0] V_Line;
	 output [7:0] R_DataOut,G_DataOut,B_DataOut,R_DataOut2,G_DataOut2,B_DataOut2 ;
	 wire [7:0] R_DataOut,G_DataOut,B_DataOut,R_DataOut2,G_DataOut2,B_DataOut2 ;

		assign	R_DataOut = (H_Pixel >> GrayCountStep) & Gray_256_Step ;
		assign	G_DataOut = (H_Pixel >> GrayCountStep) & Gray_256_Step ;
		assign	B_DataOut = (H_Pixel >> GrayCountStep) & Gray_256_Step ;

		assign	R_DataOut2 = (H_Pixel >> GrayCountStep) & Gray_256_Step  ;
		assign	G_DataOut2 = V_Line & Gray_256_Step ;
		assign	B_DataOut2 = ~((H_Pixel >> GrayCountStep) & Gray_256_Step ) ;

endmodule


module PattermGen(H_Pixel, V_Line, R_DataOut,G_DataOut,B_DataOut );


    input [9:0] H_Pixel;
    input [9:0] V_Line;
	 output [7:0] R_DataOut,G_DataOut,B_DataOut ;
	 reg [7:0] R_DataOut,G_DataOut,B_DataOut ;

	wire [2:0] ColorBarSel = H_Pixel >> 6  ;
	wire PattermSelect = V_Line >> 7 ;
	 //reg [2:0] ColorBarSel ;

//	 assign ColorBarSel =  H_Pixel >> 6 ;


	 always @ (ColorBarSel or PattermSelect)
	 begin
		if (!PattermSelect)
			begin
			 	case (ColorBarSel)
			  	3'b000 : begin
			  				  	R_DataOut = 8'hFF ;	G_DataOut = 8'hFF ; 	B_DataOut = 8'hFF ;
		  				  	end
		  		3'b001 : begin
		  					  	R_DataOut = 8'hFF ;	G_DataOut = 8'hFF ; 	B_DataOut = 8'h00 ;
		  				  	end
		  		3'b010 : begin
		  					  	R_DataOut = 8'h00 ;	G_DataOut = 8'hFF ; 	B_DataOut = 8'hFF ;
		  				  	end
				3'b011 : begin
		  					  	R_DataOut = 8'h00 ;	G_DataOut = 8'hFF ; 	B_DataOut = 8'h00 ;
		  				  	end
		  		3'b100 : begin
		  					  	R_DataOut = 8'hFF ;	G_DataOut = 8'h00 ; 	B_DataOut = 8'hFF ;
		  				  	end
		  		3'b101 : begin
		  					  	R_DataOut = 8'hFF ;	G_DataOut = 8'h00 ; 	B_DataOut = 8'h00 ;
		  				  	end
		 		3'b110 : begin
		  					  	R_DataOut = 8'h00 ;	G_DataOut = 8'h00 ; 	B_DataOut = 8'hFF ;
		  				  	end
		  		3'b111 : begin
		  					  	R_DataOut = 8'h00 ;	G_DataOut = 8'h00 ; 	B_DataOut = 8'h00 ;
		  			  		end
				endcase
			end
		else 
			begin
				R_DataOut = H_Pixel >> 1 ;
				G_DataOut = V_Line;//H_Pixel >> 1 ;
				B_DataOut = ~(H_Pixel >> 1) ;
			end
	end
endmodule


module ColorBar(H_Pixel, R_DataOut,G_DataOut,B_DataOut,R_DataOut2,G_DataOut2,B_DataOut2 );


    input [9:0] H_Pixel ;

	 output [7:0] R_DataOut,G_DataOut,B_DataOut,R_DataOut2,G_DataOut2,B_DataOut2 ;
	 reg [7:0] R_DataOut,G_DataOut,B_DataOut ;
	 wire [7:0] R_DataOut2,G_DataOut2,B_DataOut2 ;

	 wire [2:0] ColorBarSel = H_Pixel >> 6  ;


	 assign		R_DataOut2 = 8'hFF ;
	 assign		G_DataOut2 = 8'hFF ;
	 assign		B_DataOut2 = 8'hFF ;

	 always @ (ColorBarSel )
	 begin
			 	case (ColorBarSel)
			  	3'b000 : begin
			  				  	R_DataOut = 8'hFF ;	G_DataOut = 8'hFF ; 	B_DataOut = 8'hFF ;
		  				  	end
		  		3'b001 : begin
		  					  	R_DataOut = 8'hFF ;	G_DataOut = 8'hFF ; 	B_DataOut = 8'h00 ;
		  				  	end
		  		3'b010 : begin
		  					  	R_DataOut = 8'h00 ;	G_DataOut = 8'hFF ; 	B_DataOut = 8'hFF ;
		  				  	end
				3'b011 : begin
		  					  	R_DataOut = 8'h00 ;	G_DataOut = 8'hFF ; 	B_DataOut = 8'h00 ;
		  				  	end
		  		3'b100 : begin
		  					  	R_DataOut = 8'hFF ;	G_DataOut = 8'h00 ; 	B_DataOut = 8'hFF ;
		  				  	end
		  		3'b101 : begin
		  					  	R_DataOut = 8'hFF ;	G_DataOut = 8'h00 ; 	B_DataOut = 8'h00 ;
		  				  	end
		 		3'b110 : begin
		  					  	R_DataOut = 8'h00 ;	G_DataOut = 8'h00 ; 	B_DataOut = 8'hFF ;
		  				  	end
		  		3'b111 : begin
		  					  	R_DataOut = 8'h00 ;	G_DataOut = 8'h00 ; 	B_DataOut = 8'h00 ;
		  			  		end
				endcase		
	end

endmodule

⌨️ 快捷键说明

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