通过HDMI获取显示器EDID数据

通过HDMI获取显示器EDID数据

转载请注明地址 :http://blog.csdn.net/u012890170/article/details/71513059

本文简要的分析HDMI的E一DID数据,抛砖引玉。

问题一:EDID是什么?
市场上显示器五花八门,一般我们连接电脑之后都是十分方便的适配,甚至连分辨率啥的都不用调。这就是因为我们EDID的功劳 ,EDID是显示器存储的关于显示器的一些基本信息,例如分辨率,声音支持的格式,厂商ID,机器型号等。

问题二:EDID内容具体解析?
###EDID由两部分组成,基础部分和扩展部分;
###基础部分:由128个字节组成,
00H-07H 是起止为,为 00 FF FF FF FF FF FF 00
08H-09H 牌子或生产的厂商
0AH-0BH 机器型号或ID
0CH-0FH 序列号
10H-11H 生产时间
12H-13H 版本号
14H 输入数据类型数字信号还是模拟信号
15H 横向图像的最大宽度
16H 竖向图像的最大宽度
17H 显示Gamma的版本
18H DPMS和支持的属性,比如显示类型是RGB
19H-22H 色度信息
23H 支持的基本timing表1,比如640x480@60HZ(IBM,VGA),800x600@60HZ(VESA)
24H 支持的基本timing表2, 比如1024x768@60HZ(VESA)
25H 生产商保留的timing信息
26H-35H 支持的标准timing表
36H-47H timing的详细信息描述1,这个段是一个timing的更详细的描述,比如横向,竖向图像大小,刷新模式是隔行还是逐行等
48H-59H timing的详细信息描述2
5AH-6BH timing的详细信息描述3
6CH-7DH timing的详细信息描述4,这四个段用来描述不同timing的详细信息,描述1必须有,其它的可以为空
7EH 扩展EDID的标志位,如果为0则不存在扩展EDID,如果为1则后面还存在扩展EDID段
7FH CheckSum

###扩展EDID也具有128字节
一些声道和颜色的信息等。

附加
这里重点对 08H-09H 牌子或生产的厂商 进行详细介绍;
两个字节的数据:例如 0x05, 0xe3
写成二进制格式是:
0000 0101 1110 0011

从左到右存储着3位数据:
0|000 01|01 111|0 0011
第一位默认是0 ,接下去5位为一个数据。

再根据数据转化成字母:
00001=A
00010=B
......
11010=Z

实验测试:
具体代码就不贴了,获取到几个牌子的厂商ID
创维的 : YKS
小米的 : DMX

如果有遇到这方面问题的可以留言大家一起探讨。
本文参考网页:http://blog.csdn.net/wowo1109/article/details/8805045

你可能感兴趣的:(嵌入式)