DVI和HDMI的EDID设计⼩结
最近接触了⼀下DVI⾼清数字接⼝这个东东,开始感觉没什么,因为只做简单的应⽤,不涉及深层编码那些研究。不过⼀直对它的EDID数据的存储感到⼀丝神秘,研究了⼀段时间之后,现在将⼀些注意事项归纳⼀下,也算是⼀个⼩⼩的经验吧,其实这东西根本没啥技术含量,只要按照规定的协议格式写⼊数据就OK了的。
⾸先,在硬件⽅⾯⼀般是不会出什么问题的,这个我⼀开始还⼀直在怀疑,结果证明基本没必要。⼀般选⽤24C02作为EDID数据的存储器,连接也很简单,注意将三根地址线接地就可以了。选⽤24C02的原因是可以存256个字节的数据,刚好符合普通HDMI的需求,当然,如果是DVI设备的话只要128字节的容量就可以了。但这个不敢保证对以后⼀些扩展协议的⽀持了。
硬件有了之后就是怎样将数据写⼊的问题了,其实这也不是什么问题,就按照通常的操作⽅法,通过IIC总线的操作⽅式写就OK。最主要的问题还是改写什么数据,在查阅了多篇相关⽂章之后,终于搞明⽩⼀个问题。对于HDM I设备, ED ID 的第⼀个128Byte必须是符合EDID1.3的数据结构, 第⼆个128Byte必须是符合EIA/CEA-861B的CEA ED ID时序扩展数据结构。
这些字节的具体含义是很容易查到的,需要说明的是0x12, 0x13两个字节存储ED ID 的版本。例如, 0x12, 0x13 两个字节分别
为″01h″″03h″, 代表当前为113版本。以及0x7E地址处的扩展数据的数量,如果是普通DVI设备则不需要扩展(对于⽬前的情况⽽⾔,以后可能需要扩展)。填⼊0x00即可,若是HDMI设备则要扩展⼀个数据块(128字节),就需要写成0x01。最后⼀位的校验和,是将这128个字的数加起来(不考虑进位)为零就⾏了。这个很重要,开始就是没注意这个问题,随便了⼀个别⼈的模板数据写进去,⼀直调不通,后来⾃⼰验证⼀下,发现校验值不对,改过之后⽴即ok。
对于HDMI设备就需要再扩展128字节的数据,具体情况也有很多资料说明,也是注意最后的校验值就⾏了。下⾯列出⼀组我调试通过的EDID数据:
杨承熹微博unsigned charCode_EDID[256]=
{0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x0C,0xA1,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x0F,0x01,0x03,0x80,0x50,0x2D,0x78,0x0A,0x0D,0xC9,0xA0,0x57,0x47,0x98,0x27,
0x12,0x48,0x4C,0x20,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x1D,0x80,0x18,0x71,0x1C,0x16,0x20,0x58,0x2C,
高中数学知识点总结0x25,0x00,0x20,0xC2,0x31,0x00,0x00,0x9E,0x8C,0x0A,0xD0,0x8A,0x20,0xE0,0x2D,0x10,
网名大全2022最新版0x10,0x3E,0x96,0x00,0x58,0xC2,0x21,0x00,0x00,0x18,0x00,0x00,0x00,0xFC,0x00,0x48,
0x44,0x4D,0x49,0x44,0x54,0x56,0x0A,0x20,0x20,0x20,0x20,0x20,0x00,0x00,0x00,0xFD,
0x00,0x3B,0x3D,0x0F,0x2E,0x08,0x00,0x0A,0x20,0x20,0x20,0x20,0x20,0x20,0x01,0xAC, //DVI EDID
0x02,0x03,0x1A,0x71,0x47,0x85,0x02,0x03,0x04,0x06,0x07,0x01,0x23,0x09,0x07,0x07, //HDMI
熊欣欣0x83,0x01,0x00,0x00,0x65,0x03,0x0C,0x00,0x10,0x00,0x01,0x1D,0x00,0x72,0x51,0xD0,
0x1E,0x20,0x6E,0x28,0x55,0x00,0x20,0xC2,0x31,0x00,0x00,0x1E,0x8C,0x0A,0xA0,0x14,
0x51,0xF0,0x16,0x00,0x26,0x7C,0x43,0x00,0x58,0xC2,0x21,0x00,0x00,0x98,0x8C,0x0A,
0xD0,0x84,0x20,0xE0,0x2D,0x10,0x10,0x3E,0x96,0x00,0x20,0xC2,0x31,0x00,0x00,0x18,
石家庄周边旅游景点0x8C,0x0A,0xA0,0x14,0x51,0xF0,0x16,0x00,0x26,0x7C,0x43,0x00,0x20,0xC2,0x31,0x00,
0x00,0x98,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80
刘雅瑟个人资料简介};
最后,还要感谢下我的好友坤明同学,是他提醒我要常常注意总结⼀些⼼得,并记录下来。
发布评论