zoukankan      html  css  js  c++  java
  • 昨天下午写的FPGA驱动VGA显示图片

    
    

    VGA的实现框架图
    module
    sync
          ( clk_25,
           rst_b,

           hsync,
           vsync,
           addr,
           aclr)
          ;
    input clk_25; input rst_b;
    output
    hsync; output vsync; output[15:0]addr; output aclr; wire clk_25; wire rst_b; wire hsync; wire vsync; reg[15:0] addr; reg hsync_n; reg vsync_n; reg aclr; parameter h_ta = 96,h_tb=40,h_tc=8,h_td=640,h_te=8,h_tf=8,h_tg = 10'd800;//hsync时序要求 parameter v_ta = 2,v_tb=25,v_tc=8,v_td=480,v_te=8,v_tf=8,v_tg = 10'd525;//vsync时序要求 parameter h_picture = 165 , v_picture = 220;//图片的分辨率128*128 parameter h_valid_start = h_ta + h_tb + h_tc,h_valid_end =h_valid_start + h_td;//x最大有效数据区域144--784 parameter v_valid_start = v_ta + h_tb + v_tc,v_valid_end =v_valid_start + v_td;//x最大有效数据区域35--515 parameter x_start = h_valid_start+100,x_end = h_valid_start + h_picture+100;//x显示区域 parameter y_start = v_valid_start,y_end = v_valid_start + v_picture;//y显示区域 parameter addr_max = 36300;//最大内存空间 assign hsync = hsync_n; assign vsync = vsync_n; reg [9:0] hcnt_n; reg [9:0]hcnt; reg [9:0]vcnt; always@(posedge clk_25 or negedge rst_b) begin if(!rst_b) hcnt <= 10'd0; else hcnt <= hcnt_n; end always@(*) begin if(hcnt == h_tg-1'b1) hcnt_n <= 10'd0; else hcnt_n <= hcnt + 1'b1; end always@(negedge hsync or negedge rst_b) begin if(!rst_b) vcnt <= 10'd0; else if(vcnt == v_tg-1'b1) vcnt <= 10'd0; else vcnt <= vcnt + 1'b1; end always@(posedge clk_25) begin if(hcnt < 10'd96) hsync_n <= 1'b0; else hsync_n <= 1'b1; end always@(*) begin if(vcnt <10'd2) vsync_n <= 1'b0; else vsync_n <= 1'b1; end always@(posedge clk_25 or negedge rst_b) begin if(!rst_b) addr <= 16'd0; else if((hcnt>x_start - 1 && hcnt < x_end )&&(vcnt>y_start - 1 && vcnt < y_end )) begin addr <= addr + 1'b1; aclr <= 1'b0; end else if(addr ==addr_max) begin addr <= 0; aclr <= 1'b1; end else begin addr <= addr;//10'd0; aclr <= 1'b1; end end endmodule

  • 相关阅读:
    regulation
    Java第三方类库
    python整个小服务器
    VsFTP出现500 OOPS: cannot change directory的解决办法
    Got error 28 from storage engine
    linux下ftp操作
    linux安装JDK
    Apache + Tomcat + Linux 集群和均衡负载 (Session 同步复制) 配置实
    怎么样才能使得PL/SQL Developer不显示系统表?
    sudo 用法
  • 原文地址:https://www.cnblogs.com/sccdlyc/p/2484662.html
Copyright © 2011-2022 走看看