推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

VGA显示一个小方块 FPGA(EP4CE6)实验Verilog逻辑源码Quartus工程文件+文档

更新时间:2021-08-09 15:58:01 大小:4M 上传用户:xzxbybd查看TA发布的资源 标签:vgafpgaep4ce6verilogquartus 下载积分:8分 评价赚积分 (如何评价?) 打赏 收藏 评论(0) 举报

资料介绍

VGA显示一个小方块,FPGA(EP4CE6)实验Verilog逻辑源码Quartus工程文件+文档资料,FPGA为CYCLONE4系列中的EP4CE6E22C8. 完整的工程文件,可以做为你的学习设计参考。                                                  

********************************************************************************************************/

//上电后,VGA显示一个移动的小块,碰到边框的时候被弹开。

module VGA_Moving_Block (

input             sys_clk   ,

input             sys_rst_n ,

                         

output  wire      Hs        ,

output  wire      Vs        ,

output  wire      VGA_G     ,

output  wire      VGA_B     ,

output  wire      VGA_R      );


//Reg define 

reg         sys_clk_pixel      ;

reg  [9:0]  x_count ;

reg  [9:0]  y_count ;

reg         hsync   ;

reg         vsync   ;

reg [17:0] clk_cnt  ;

reg        clkout   ;

reg        up_down_x;

reg        up_down_y;  //上升和下降信号

reg  [9:0] x_pos    ;  //小方块左上角坐标

reg  [9:0] y_pos    ;  //小方块左上角坐标



//Wire define 

wire       valid_mov;

wire       valid_1  ;

wire       valid_2  ;

wire       valid_3  ;

wire       valid_4  ;

wire       valid_s  ;



//************************************************************************************

//**                              Main Program    

//**  

//************************************************************************************


//像素时钟 分频产生 25Mhz 时钟

always @ (posedge sys_clk or negedge sys_rst_n) begin

  if (!sys_rst_n) 

      sys_clk_pixel <= 1'b0;

  else 

      sys_clk_pixel <= ~sys_clk_pixel;

end


//行坐标和纵坐标

always @ (posedge sys_clk_pixel) begin

   if (!sys_rst_n) begin

   x_count <= 0;

y_count <= 0;

end

else if (x_count == 10'd799) begin 

    x_count <= 10'd0;

if (y_count == 10'd519)

  y_count <= 10'd0;

else 

    y_count <= y_count+1'b1;

end

else 

    x_count <= x_count+1'b1;

end


//同步信号

always @ (posedge sys_clk_pixel) begin 

   if (x_count <= 10'd95)

    hsync <= 1'b0;

else 

    hsync <= 1'b1;

end


always @ (posedge sys_clk_pixel) begin 

    if (y_count <= 1'd1)

     vsync <= 1'b0;

    else 

     vsync <= 1'b1;

end

  

assign Hs = hsync;

assign

image.png

部分文件列表

文件名文件大小修改时间
VGA_Moving_Block(EP4CE6)/VGA_Moving_Block/db/logic_util_heursitic.dat12KB2014-06-22 18:56:30
VGA_Moving_Block(EP4CE6)/VGA_Moving_Block/db/prev_cmp_VGA_Moving_Block.qmsg87KB2014-06-22 18:56:26
VGA_Moving_Block(EP4CE6)/VGA_Moving_Block/db/VGA_Moving_Block.(0).cnf.cdb9KB2014-06-22 18:56:26
VGA_Moving_Block(EP4CE6)/VGA_Moving_Block/db/VGA_Moving_Block.(0).cnf.hdb2KB2014-06-22 18:56:26
VGA_Moving_Block(EP4CE6)/VGA_Moving_Block/db/VGA_Moving_Block.amm.cdb1KB2014-06-22 18:56:30
VGA_Moving_Block(EP4CE6)/VGA_Moving_Block/db/VGA_Moving_Block.asm.qmsg2KB2014-06-22 18:56:36
VGA_Moving_Block(EP4CE6)/VGA_Moving_Block/db/VGA_Moving_Block.asm.rdb1KB2014-06-22 18:56:36
VGA_Moving_Block(EP4CE6)/VGA_Moving_Block/db/VGA_Moving_Block.asm_labs.ddb9KB2014-06-22 18:56:34
VGA_Moving_Block(EP4CE6)/VGA_Moving_Block/db/VGA_Moving_Block.cbx.xml1KB2014-06-22 18:56:28
VGA_Moving_Block(EP4CE6)/VGA_Moving_Block/db/VGA_Moving_Block.cmp.bpm1KB2014-06-22 18:56:32
VGA_Moving_Block(EP4CE6)/VGA_Moving_Block/db/VGA_Moving_Block.cmp.cdb34KB2014-06-22 18:56:32
...

全部评论(0)

暂无评论

上传资源 上传优质资源有赏金

  • 打赏
  • 30日榜单

推荐下载