文章目录
3. HDMI输出测试
-
创建新工程
-
由于使用的是第三方的IP核,因此将原工程中的repo文件夹复制到新建的工程目录中
-
然后在左边的IP目录中点击IP Catalog ,然后右键点击
-
然后会显示导入的内容,IP核和接口
-
双击相应的IP核可以进行参数设置来适应相应的工程
-
还可以打开左上角的Documentation查看相应文档
-
使用赛灵思官方的时钟设置
-
创建彩条模块,复制原工程的文件即可
-
在创建一个top模块
-
接着创建约束
-
综合、实现、生成比特流、下载到板子上即可
-
注意:FPGA不能进行初始化,不然程序就没有了。FPGA在开机时搭建逻辑电路,需要进行程序固化
-
彩条模块
//*************************************************************************\
//==========================================================================
// Description:
// 彩条发生模块
//==========================================================================
// Revision History:
// Date By Revision Change Description
//--------------------------------------------------------------------------
//2013/5/7 1.2 remove some warning
//2013/4/18 1.1 vs timing
//2013/4/16 1.0 Original
//*************************************************************************/
module color_bar(
input clk, //像素时钟输入,1280x720@60P的像素时钟为74.25
input rst, //复位,高有效
output hs, //行同步、高有效
output vs, //场同步、高有效
output de, //数据有效
output[7:0] rgb_r, //像素数据、红色分量
output[7:0] rgb_g, //像素数据、绿色分量
output[7:0] rgb_b //像素数据、蓝色分量
);
/*********视频时序参数定义******************************************/
parameter H_ACTIVE = 16'd1280; //行有效长度(像素时钟周期个数)
parameter H_FP = 16'd110; //行同步前肩长度
parameter H_SYNC = 16'd40; //行同步长度
parameter H_BP = 16'd220; //行同步后肩长度
parameter V_ACTIVE = 16'd720; //场有效长度(行的个数)
parameter V_FP = 16'd5; //场同步前肩长度
parameter V_SYNC = 16'd5; //场同步长度
parameter V_BP = 16'd20; //场同步后肩长度
//parameter H_ACTIVE = 16'd1920;
//parameter H_FP = 16'd88;
//parameter H_SYNC = 16'd44;
//parameter H_BP = 16'd148;
//parameter V_ACTIVE = 16'd1080;
//parameter V_FP = 16'd4;
//parameter V_SYNC = 16'd5;
//parameter V_BP = 16'd36;
parameter H_TOTAL = H_ACTIVE + H_FP + H_SYNC + H_BP;//行总长度
parameter V_TOTAL = V_ACTIVE + V_FP + V_SYNC + V_BP;//场总长度
/*********彩条RGB color bar颜色参数定义*****************************/
parameter WHITE_R = 8'hff;
parameter WHITE_G = 8'hff;
parameter WHITE_B = 8'hff;
parameter YELLOW_R = 8'hff;
parameter YELLOW_G = 8'hff;
parameter YELLOW_B = 8'h00;
parameter CYAN_R = 8'h00;
parameter CYAN_G = 8'hff;
parameter CYAN_B = 8'hff;