【硬件】HDMI接口HPD原理
由于项目需要通过HDMI获取EDID的数据,需要学习一下其获取的工作原理,所以在这里记录下。
一、什么是HPD?#
HPD是一种从HDMI显示器端生成并传输至HDMI源端的检测信号。HDMI中的Pin 19引脚的功能是检测热插拔,即HPD,Pin 19引脚上传输的信号是判断HDMI源端是否发起EDID读与发送TMDS信号的凭证标准。
热插拔检测(HPD)可以在配有HDMI接口的显示设备信号中,当HDMI接口与源端相连或断开时,确保HDMI源端可通过HDMI的HPD引脚检测出这一过程并响应。
二、HDMI的HPD(热插拔)原理#
- 显示器与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接口读取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信号进行电路发送工作。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY