南昌大学实验报告
学生姓名: xx 学号: xx 专业班级: xx
实验类型:□ 验证 □ 综合 □ 设计 □ 创新 实验日期: 2016.11.04 实验成绩:
实验五 VGA 彩条信号发生器的设计
(一)实验目的
1. 了解普通显示器正确显示的时序。
2. 了解 verilog HDL 产生 VGA 显示时序的方法。 3. 进一步加强对 FPGA 的认识。
(二)实验要求
1.在CRT显示器上显示横条纹、竖条纹、棋盘格子图案、以及带自己名字的南昌大学校门图片。
2.用两个按键模块来控制显示模式。
3.用两个按键模块实现图片的上下左右移动。
(三)实验原理
VGA接口基本电路标准的VGA接口一个有15个接口(见图1),但其中真正用到的就5个脚,HSYNC是行同步信号,VSYNC是场同步信号,同步信号就是为了让VGA显示器扫描像素点数据,vga_r、vga_g、vga_b为三原色信号。
图1
VGA的接口时序如图2所示,场同步信号VSYNC在每帧数据开始的时候产生一个固定宽度的低脉冲,行同步信号HSYNC在每行开始的时候产生一个固定宽度的低脉冲,数据在某些固定的行和列交汇处有效。
图2
本实验我们用的是800*600显示器吗,刷新频率为60Hz,用50MHz晶振的FPGA芯片驱动设计,表1为其脉冲技术表。
表1
首先行同步信号在某个系统时钟上升沿到来时被拉低120个脉冲宽度后被拉高,经过67个脉冲,DATA数据有效,即显示器开始扫描800个列像素点,扫描完成到下一次行同步信号再次被拉低,中间经过52个时钟脉冲。扫描一行需要的数据帧长为1039。而场同步信号的扫描方式类似于上面的步骤,在某个时钟到来时被拉低6个脉冲宽度继而被拉高,拉高后延迟25个脉冲周期行同步信号被拉
微处理器与可编程器件应用2012.12低,这样开始扫面每行的像素。完成本次扫描后场同步信号再次被拉低重复上述过程。因为刷新频率为60 Hz,所以每秒场同步信号会被拉低60次。
(四)核心代码
按键控制图片移动:
always @ (posedge CLK_50M or negedge RST_N) if(!RST_N) addr<=0; else if(valid) begin
if((xpos>mode_x_cnt&&xpos (五)管脚分配 信号说明 CLK_50M RST_N VGA_DATA[7] VGA_DATA[6] VGA_DATA[5] VGA_DATA[4] VGA_DATA[3] VGA_DATA[2] VGA_DATA[1] VGA_DATA[0] VGA_HSYNC VGA_VSYNC 对应FPGA管脚名 PIN_E1 PIN_F11 PIN_N2 PIN_N3 PIN_N5 PIN_L2 PIN_L1 PIN_K5 PIN_K2 PIN_K1 PIN_E15 PIN_F16 SW0 SW1 key key[0] (六)下载测试。 PIN_L9 PIN_M10 PIN_R9 PIN_T9 下载到实验箱上测试,一次上推、下推k1,k2,显示器上会出现横向彩色条纹,纵向彩色条纹,黑白棋盘条纹,以及南昌大学校门图片。按键s1,s2可控制图片的上下左右移动。 (七)实验小结 本实验用到将图片变为mif格式存储到rom中,以及VGA显示的原理,刚开始做的时候有点慌张,查了很多资料,学习到不少知识。