1.VGA接口

先不废话,上图:
FPGA上VGA显示彩色条
常用的就是1、2、3、13、14,本次小实验也是只用了这五条信号线。在VGA的传输标准中,信号被分为RGB三个原色信号,然后经过数模转换之后,在同步信号的同步下在三个通道中单独传输,同步信号如下:
FPGA上VGA显示彩色条
其中,行同步信号是对VGA驱动时钟进行计数(扫描像素点),而场同步信号是对行同步信号进行计数,即扫描完一行后场同步信号计数才+1.
FPGA上VGA显示彩色条
看上图可以得出,c*q即为分辨率。

2.RGB信号相关

与RGB相关接口有三个,即RGB三个通道,如果不进行扩展只能显示8种颜色,所以一般开发板会对其进行扩展,下面是通过电阻匹配网络进行扩展:
FPGA上VGA显示彩色条
上图为RGB565数据格式相应的可以表示的颜色为2^16种,还有RGB888数据格式等等,原理与之类似。此过程还可以通过专用的视频转换芯片(如ADV7123)来实现 。不过匹配网络简单成本低。
本实验所采用的开发板未进行扩展,因此只能表示8种颜色。如下图
FPGA上VGA显示彩色条
另外HS和VS信号接口也是按照上图分配,时钟跟复位信号按照先前实验描述分配。

3.程序框图

FPGA上VGA显示彩色条
时钟分频倍频采用PLL ip核来实现,用以产生VGA的驱动时钟。
顶层模块图如下:
FPGA上VGA显示彩色条

4.代码部分

驱动模块:
FPGA上VGA显示彩色条
FPGA上VGA显示彩色条
代码主要涉及何时对输出信号进行赋值,以及怎样赋值,还有两个是计数模块。
显示模块:
FPGA上VGA显示彩色条
FPGA上VGA显示彩色条
实现了八个色条的显示。
5.modelsim仿真
testbench:
FPGA上VGA显示彩色条仿真结果图:
FPGA上VGA显示彩色条
6.下载验证结果
FPGA上VGA显示彩色条
写好代码调试也很费时间,就是因为自己写程序的时候,打错了还有就是数据位数搞错了。望大家引以为鉴。

相关文章:

  • 2021-05-22
  • 2022-12-23
  • 2021-08-05
  • 2021-12-31
  • 2021-12-08
  • 2021-04-09
  • 2021-11-21
  • 2021-09-14
猜你喜欢
  • 2021-04-27
  • 2022-12-23
  • 2021-12-17
  • 2021-12-26
  • 2022-12-23
  • 2022-01-09
  • 2022-01-08
相关资源
相似解决方案