FPGA实现HDMI显示色条

        高清晰度多媒体接口(High Definition Multimedia Interface)是一种全数位化影像和声音传送接口,可以传送无压缩的音频信号及视频信号。 HDMI 接口可以提供高达 5Gbps 的数据传输带宽,可以传送无压缩的音频信号及高分辨率视频信号。同时无需在信号传送前进行数/模或者模/数转换,可以保证最高质量的影音信号传送。

   

Hdmi_Out.v

//=======================================================================

// Filename           : Hdmi_Out.v
// Author             : Ritian73
// Created On         : 2022-03-02 23:51
// Last Modified      : 
// Description        : 
//                      
//                      
//=======================================================================
module Hdmi_Out(
    input       Clk_50M,
    input       Key,
    
    output      Hdmi_Clk_P,
    output      Hdmi_Clk_N,
    output      Hdmi_B_P,
    output      Hdmi_B_N,
    output      Hdmi_G_P,
    output      Hdmi_G_N,
    output      Hdmi_R_P,
    output      Hdmi_R_N,
    output  [3:0]   Led
);
wire Clk;
wire Clk_5x;
wire locked;
wire [7:0]VGA_R;
wire [7:0]VGA_G;
wire [7:0]VGA_B;
wire VGA_H;
wire VGA_V;
wire VGA_D;
wire VGA_HS;
wire VGA_VS;
wire VGA_DE;
clk_wiz_0 clk_wiz_0(
    // Clock out ports
    .clk_out1(Clk),     // output clk_out1
    .clk_out2(Clk_5x),     // output clk_out2
    // Status and control signals
    .resetn(1'b1), // input resetn
    .locked(locked),       // output locked
   // Clock in ports
    .clk_in1(Clk_50M)
);      // input clk_in1
Hdmi_Ctrl Hdmi_Ctrl(
		.Clk(Clk),
        .Clk_5x(Clk_5x),
        .Rst_n(locked),
        .Hsync(VGA_HS),
        .Vsync(VGA_VS),
        .Rgb_Valid(VGA_DE),
        .Rgb_Blue(VGA_B),
        .Rgb_Green(VGA_G),
        .Rgb_Red(VGA_R),
        .Hdmi_R_P(Hdmi_R_P),
		.Hdmi_R_N(Hdmi_R_N),
		.Hdmi_G_P(Hdmi_G_P),
		.Hdmi_G_N(Hdmi_G_N),
		.Hdmi_B_P(Hdmi_B_P),
		.Hdmi_B_N(Hdmi_B_N),
		.Hdmi_Clk_P(Hdmi_Clk_P),
		.Hdmi_Clk_N(Hdmi_Clk_N)
);
Hdmi_Data_Gen Hdmi_Data_Gen(
	.Clk(Clk),
	.Turn_Mode(Key),
	.Rst_n (locked)   ,
	.VGA_R(VGA_R),
	.VGA_G(VGA_G),
	.VGA_B(VGA_B),
	.VGA_HS(VGA_HS),
	.VGA_VS(VGA_VS),
	.VGA_DE(VGA_DE),
	.mode(Led)
);
endmodule

 Hdmi_Ctrl.v

//=======================================================================

// Filename           : Hdmi_Ctrl.v
// Author             : Ritian73
// Created On         : 2022-03-02 23:09
// Last Modified      : 
// Description        : 
//                      
//                      
//=======================================================================
module Hdmi_Ctrl(
		input	Clk,
        input	Clk_5x,
        input	Rst_n,
        input	Hsync,
        input	Vsync,
        input	Rgb_Valid,
        input	[7:0]Rgb_Blue,
        input	[7:0]Rgb_Green,
        input	[7:0]Rgb_Red,
        output	Hdmi_R_P,
		output  Hdmi_R_N,
		output  Hdmi_G_P,
		output  Hdmi_G_N,
		output  Hdmi_B_P,
		output  Hdmi_B_N,
		output  Hdmi_Clk_P,
		output  Hdmi_Clk_N
);
wire [9:0] Data_Out_R;
wire [9:0] Data_Out_G;
wire [9:0] Data_Out_B;
Encoder Encoder_R(
       .Clk(Clk),
       .Rst_n(Rst_n),
       .Hsync(Hsync),
       .Vsync(Vsync),
       .Rgb_Valid(Rgb_Valid),
       .Data_In(Rgb_Red),
       .Data_Out(Data_Out_R)
 );
Encoder Encoder_G(
       .Clk(Clk),
       .Rst_n(Rst_n),
       .Hsync(Hsync),
       .Vsync(Vsync),
       .Rgb_Valid(Rgb_Valid),
       .Data_In(Rgb_Green),
       .Data_Out(Data_Out_G)
 );
 Encoder Encoder_B(
       .Clk(Clk),
       .Rst_n(Rst_n),
       .Hsync(Hsync),
       .Vsync(Vsync),
       .Rgb_Valid(Rgb_Valid),
       .Data_In(Rgb_Blue),
       .Data_Out(Data_Out_B)
 );
Par_To_Ser Par_To_Ser_R(
    .Rst_n(Rst_n),
	.Clk_5x(Clk_5x),
	.Data_In(Data_Out_R),
	.Ser_P(Hdmi_R_P),
	.Ser_N(Hdmi_R_N)
);
Par_To_Ser Par_To_Ser_G(
    .Rst_n(Rst_n),
	.C
  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值