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

  • 相关阅读:
    OK335xS-Android mkmmc-android-ubifs.sh hacking
    OK335xS-Android pack-ubi-256M.sh hacking
    OK335xS Ubuntu 12.04.1 版本 Android 开发环境搭建
    Qt Quick Hello World hacking
    Qt QML referenceexamples attached Demo hacking
    QT 5.4.1 for Android Ubuntu QtWebView Demo
    I.MX6 working note for high efficiency
    QT 5.4.1 for Android Windows环境搭建
    mkbootimg hacking
    Generate And Play A Tone In Android hacking
  • 原文地址:https://www.cnblogs.com/sccdlyc/p/2484662.html
Copyright © 2011-2022 走看看