FPGA,verilog驱动VGA显示

该博客介绍了如何使用Verilog语言设计一个VGA控制器,通过PLL分频模块生成VGA时钟,然后在VGA控制模块中计数产生行同步和场同步信号,确定有效显示区域并获取像素坐标。图像显示模块根据坐标生成对应的颜色信息,最终在640x480分辨率下显示出彩色条纹。
摘要由CSDN通过智能技术生成

verilog驱动VGA显示

系统框图如下

系统框图

PLL分频模块

此模块使用锁相环IP核自动生成,相关分辨率的像素时钟不同,需要根据实际分辨率进行频率的设置。

常用VGA分辨率的时钟以及行同步和场同步如下:

常用VGA分辨率的时钟
常用VGA分辨率的时钟

VGA时序图如下:

场扫描
行扫描

VGA控制模块

module clk_ctrl (
    input  wire         vga_clk,    //VGA时钟
    input  wire         rst_n,//复位
    input  wire [15:0]  pic_data,//输入的像素点信息
    output wire [9:0]   pic_x,//输出显示像素的坐标
    output wire [9:0]   pic_y,//输出显示像素的坐标
    output wire         hsync,//行同步信号
    output wire         vsync,//场同步信号
    output wire [15:0]  rgb_data//输出的VGA像素点信号
);
//分辨率为640*480
//parameter define
parameter H_SYNC    =   10'd96  ,   //行同步
          H_BACK    =   10'd40  ,   //行时序后沿
          H_LEFT    =   10'd8   ,   //行时序左边框
          H_VALID   =   10'd640 ,   //行有效数据
          H_RIGHT   =   10'd8  
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值