HDMI的连接

一、HDMI的连接

二、HDMI的HPD(热插拔)原理

HPD是从HDMI显示器端(Sink)生成并输出送往HDMI 源端(Source)的一个检测信号。

显示器与HDMI源端设备通过HDMI连接,HDMI源端从HDMI接口的HPD引脚中检测到显示器与HDMI源端的连接状态时,可通过HDMI接口显示设备的数据通道,读取到显示器中的存储数据。

当检测出显示器的工作模式和HDMI源端输出设置相匹配时,HDMI源端即可激活TMDS信号的发送电路,并向显示设备发送正常的HDMI信号。

如果显示器和HDMI处于断开状态,HDMI源端可通过HPD的引脚检测到显示器的HDMI接口和HDMI源端处于断开状态,那么HDMI源端就会立即停止向HDMI发送信号。

三、HDMI源端对HPD信号有什么要求?

HDMI源端检测到HDMI接口的HPD引脚的电压值大于2V时,即可判断出HDMI显示设备与HDMI源端已通过HDMI连接。而当HPD引脚的电压小于0.8V时,即可判断出HDMI显示设备与HDMI源端的连接处于断开状态。

HPD信号的状态通常是由HDMI的Sink端表现出来,由一个1K欧姆的电阻上拉到HDMI +5V,并且本地的主处理器也可通过GPIO来控制。

HDMI源端与HDMI 显示器端进行连接时,HDMI源端可通过HDMI的第18根引脚把+5V电压加到HDMI 显示器端中的DDC储存器中,并向DDC存储器中供电,使HDMI Sink启动。此外,HDMI源端也可通过HDMI接口的IIC引脚读取屏端EDID数据。

HDMI源端启动后生成+5V,并可通过第18根引脚向HDMI显示器端实现供电,当HDMI显示器接收到5V电压后,内部线路可以把HDMI接口的第19根引脚HPD转为高电平。

当HDMI显示器与HDMI 源端之间的HDMI连接断开时,HDMI 源端会检测到HDP信号为低电平,那么HDMI源端的TMDS信号发送电路将停止工作。

HDMI源端中的19Pin引脚可以接收到HPD的高电平,判断出HDMI显示器与HDMI源端处于连接状态,并通过HDMI接口的第15、16根引脚DDC通道,读取到显示器中的EDID数据,如果检测到显示器的工作模式范围与显卡相适应,激活HDMI源端的TMDS信号进行电路发送工作。

四、DDC通道(I2C)和CEC信号

1)DDC通道(I2C)

DDC:Display Data Channel。作用:告诉主机,显示器的生产厂商、生产日期、支持分辨率等信息。

DDC目的:实现即插即用。

EDID(Extended Display Identification DATA,即扩展显示识别数据),最初是为PC显示器设置的优化显示格式而设计的规范,存储在显示器专用的1Kb的EEROM存储器中(即EDID数据结构是128Bytes)。

HDMI接口在数字电视中的EDID数据结构,与PC显示器的最大区别是编程数据可以是128Byte的倍数,它不仅规定数字电视显示的格式,也规定数字视频信号和数字音频信号,基本的128Byte以外的数据都是附加数据,在基本数据的第127个字节定义EDID的附加数据块数量。

2)CEC信号

CEC:Consumer Electronics Control,消费类电子控制。通过CEC信号让用户可以控制HDMI接口上所连接的装置。如单键播放(One Touch Play),系统待机(System Standby)。即是如果用户将影碟放进蓝光播放器时,电视会由于CEC信号的通知而自动开机,然后视频通道亦会自动切换到播放器连接的通道上。而当用户关掉电视时,CEC信号亦会通知HDMI相连接的装置一同进入待机(如果不进入待机,该引脚一定要为高电平)。由于这样,所以就可以完全变成单一遥控器控制所有HDMI连接的装置。

综上所述,当HDMI线插到设备后,HPD引脚会被拉高,发送信号端检测到这个高电平信号后才会发送HDMI信号。当HDMI传输高速数字信号时,为了支持较高的传输速度,发送器与接收器的芯片都会采用抗静电技术保护电路。但一些技术不过关或偷工减料的HDMI传输线,由于没有合理的防静电设计或者是绝缘性能处理不科学,就容易导致产生热插拔损坏设备的情况发生。所以,选购专业光纤线品牌产品很关键。

五、HDMI工作原理

HPD(Hot Plug Detection),在HDMI的一对联接中,为热插拔的实现而设计的。简单地说,当发送端接入接受端时,接受端会回应HPD信号给发送端,进而发送端会启动DDC通道,而读取接受端EDID的信息,然后进行HDCP的交互,如果双方认证成功,则视频、音频正常工作,否则联接失败,不同系统会有不同的处理。

    例如,如果EDID信息不支持HDMI,则发送端只发送视频信息,而没有音频信息,这时候的HDMI就只相当于DVI了;如果HDCP认证不成功,有的系统会出现雪花屏幕和噪音,有的系统会由高分辨率(1080I、720P)降低为低分辨率(480I、480P)而输出,这样一来,HDTV就不再是HD了,而变成了普通的SD。

HDMI线缆连接后,SINK端在没有检测到5V_DET前以及READY前都会保持输出HPD为LOW电平,SINK端在检测到5V_DET为高电平后,开始初始化,通常花费数百ms,然后切换HPD为高电平,Source端检测到Sink READY,开始初始化。

HDMI源端启动后生成+5V,并可通过第18根引脚向HDMI显示器端实现供电,当HDMI显示器接收到5V电压后,内部线路可以把HDMI接口的第19根引脚HPD转为高电平。

六、HDMI电路

1、HPD电路

状态检测,是输入状态还是输出状态

2、IIC双向转换电路

隔离是保证HDMI接口的电压不会影响开发板的电源,比如没有这个隔离电路,那么HDMI接口的3.3V电压直连到开发板的3.3V电源,如果在板子上电之前将外部的HDMI线连接到FPGA开发板上,外部仪器给HDMI接口供电,会导致电压倒灌到开发板内部,导致一些3.3V连接的LED之类的器件工作,但开发板此时还没供电,就会很奇怪。

3、信号部分上拉49.9R到3.3V

4、ESD防护电路

5、HDMI的Layout规则

HDMI座子尽量与芯片之间最短,从而使衰减最小化。为了使差分信号正常传输,因为不同电气长度的走线会引起信号之间的相移,也会导致严重emi,理想情况下,四对差分走线走线长度应该相等,

四组差分走线对内误差最好做到 5mil 范围之内,对与对的差分误差最好控制在 10mil 范围之内。同时,对与对之间的间距要求做到 20mil,空间充足的情情下,差分对尽量包地处理。当差分长不同时,我们采用在走线终点不匹配的地方进行绕线。差分对尽可能走TOP、BOTTOM。当差分需要当过孔时,我们尽可能在过孔的附近打下地孔。

6、HDMI的硬件设计

一般来说,接口都会人手接触,因此需要加ESD保护器件,TMDS上使用专用ESD保护,其他信号使用普通ESD。另外,为了通过EMC测试,TMDS需要串接共模电感。

7、HPD的电路设计

拉低Q4,使得设备自动进行一次training

由于在判断HDMI Sink端的HPD电路预留了一个控制端,如果HDMI Sink端的主处理器需要复位HDMI链接(包括重新HDCP握手认证),就可以拉低并再次拉高HPD来实现这个功能。

如前面介绍EDID时所述,HDMI规范规定,发送设备要检测接收设备的第一个CEAEDID 扩展块中是否包含HDMI VSDB,这个HDMI VSDB中是否包含IEEE 数据标识符0x000C03,只有包含这个数据标识符的设备,才会被认为是HDMI设备,否则,被当作DVI设备处理。

一个HDMI设备的EDID 通常包含两个模块,第一个是EDID1.3的数据模块,第二个是CEA 861B模块,这个861B模块中,一定要包含数据标示符0x000C03。HDMI发送设备(Source)检测到HPD 信号由低变高时,就会去读取Sink端的EDID数据,来确认接收装置是否出现变化,并确定是工作在HDMI模式还是DVI模式。 

如果EDID内容发生改变,HDMI规范要求接收设备/中继设备复位HPD信号至少100us,以便源设备重新读取EDID信息。(这在处理中要注意)

七、故障处理

1、显示器传来的HPD不稳定

在实现过程中再次发现FPGA输出给显示器HDMI信号时,从显示器传输过来的HPD信号竟然会不稳定,周期性的发生跳变。

纠结了半天,突然想起这个问题以前也是遇到过的,当时的情况是这样的:由于HDMI输出的PLL配置错误(隐约记得是时钟频率比较高,PLL在反复配置),测试过程发现HDMI的接收到来自显示器的HPD信号竟然周期性跳变,虽然也怀疑过是HDMI输出座子有问题,但是经过更换也不能解决。最后把时钟的问题解决之后,HPD信号也随之正常。

  今天的实验现象:下载官方的Demo直接环出的程序(其实管脚是重新配置过的,时钟也是完全一致的),当插入HDMI输入源时,HDMI输出的HPD信号出现周期性的跳变,造成一段时间内不能正常输出,但是一段时间之后会稳定并输出画面。

  个人分析:因为刚插入HDMI源时信号不稳定,时钟也不稳定,输出部分的时钟也是由源的TMDS_CLK提供的,也是一样不稳定,这样就与以前的情况相似,就是因为PLL不稳定输出,造成HPD信号不稳定。

  不明白为什么显示器会出现这样的情况,只有了解了显示内部处理HPD的原理之后才能解释清楚了。

2、HDMI点屏不了

现象:电路板一周前能够点亮,但是今天再点,HDMI接口屏幕不亮

措施:

        1)测试HPD信号,是正常的

        2)测试IIC波形,SCL引脚没有波形,怀疑是FPGA未输出

        3)剔除IIC的电平转换芯片,波形又出现了,怀疑是屏端侧到该点位的路径有短路

        4)逐步向屏端转移,剔除0R/33R等串接电阻,逐个排查

原因:双层HDMI的座子,因为引脚紧密,导致SCL引脚短路接GND,很奇怪,估计之前也有接触,不过没有完全触碰,后面有人使用或放置,引起焊锡触碰短路。

树莓派可以通过HDMI连接到笔记本电脑。首先,确保你的笔记本电脑有一个HDMI输入接口。然后,按照以下步骤进行连接: 1. 将树莓派的HDMI输出端口与笔记本电脑的HDMI输入端口相连。 2. 打开笔记本电脑,确保它已经启动并处于待机状态。 3. 如果你的笔记本电脑有多个输入源,需要切换到HDMI输入源。通常可以通过按下功能键(如Fn键)和相应的F键(如F8键)来切换输入源。 4. 确保树莓派已经正确连接到电源,并且显示器已经打开。 5. 现在,你应该能够在笔记本电脑的屏幕上看到树莓派的显示内容。 请注意,树莓派的分辨率和显示设置可能需要进行调整,以适应笔记本电脑的屏幕。你可以在树莓派的操作系统中进行相应的设置调整。 此外,如果你想在树莓派上使用GPIO(通用输入输出)引脚,你可能需要安装wiringpi库。你可以通过在树莓派上运行以下命令来安装wiringpi库:sudo wget https://project-downloads.drogon.net/wiringpi-latest.deb sudo apt --fix-broken install。这将下载并安装wiringpi库,使你能够在树莓派上进行GPIO编程。\[1\] #### 引用[.reference_title] - *1* *2* [树莓派学习笔记2——树莓派与电脑间的连接](https://blog.csdn.net/m0_53222561/article/details/122611201)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值