完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
做为HDMI的接收端口,都要给HDMI发送端提供EDID信息,用于向HDMI发送端表明接收端可以接收哪种格式和分辨率的HDMI信号。
在以前的设计中,EDID信息都是存储在接收端的一块EEPROM芯片中。我看到ADV7619的FEATURE中提到支持内部的EDID,并且从UG237文档中看到ADV7619内部确实有一块RAM用于存储EDID信息。 我的问题是,有了这块内部的EDID存储区,是否就可以省去原来设计中的EEPROM芯片?虽然ADV7619掉电后,这片RAM中的EDID信息会丢失,但是在ADV7619上电后,可以再通过ADV7619的IIC接口给这片RAM重新写入EDID信息。 |
|
相关推荐
23个回答
|
|
您好,您的问题已经提交给ADI相关专家,将邀请专家尽快回答您的问题。谢谢!
|
|
|
|
内部的RAM就是为了取代外部的EEPROM的. 但诚如你所说, 需要每次上电通过IIC写入EDID信号. 在EDID信息准备好之前, 请记住要拉低HDMI接口上的HPD管脚. 可以参看ADV7619的参考原理图.
|
|
|
|
你好:
初次使用这款芯片,用Verilog搭建的IIC读写时序(程序应该是没问题的,之前用在其他芯片上是可以配置的),可我按照这样的配置顺序(采用Free Run模式):
98 33 40 ; LLC DLL enable 通过chipscope查看,发现只将第一个寄存器写进去了,剩下的都写不进去,不知道是什么原因? 通过阅读UG-237中说道:“ The contents of the EDID RAM are not to be trusted after power up or hardware reset. User should write proper contents to the EDID RAM memory inside the ADV7619 via an external MCU”. 好像说是要在复位后要通过DDC端口向EDID中写内容,但是不知道要写什么啊,还望好好指教一下,不甚感激,期待你的回复。 |
||
|
||
简约之约 发表于 2018-10-31 15:49 主I2C寄存器和EDID是两个不同的部分。您现在的问题是说主I2C寄存器无法写入?如果是这样的话,请将您写I2C的波形(用示波器)采集下来发给我们查看一下。并告知您的ALSB管脚是如何连接的? 后面的EDID问题,EDID也是通过主I2C写入的。EDID里的内容是告知发送端,接收设备可以支持哪些timing。具体您可以参考一下关于EDID的标准。 |
|
|
|
yweyerwq 发表于 2018-10-31 16:04 现在的测试条件是:系统复位后,给ADV7619一个10ms左右的低电平,之后一直保持为高电平;ADV7619的片选信号/CS一直为0;ALSB管脚通过一个22欧姆的电阻连接到FPGA 现在的问题如下: (1)现在只能写第一个寄存器98 FF 80 ; I2C reset,写第二个寄存器时,写0x98就没有反应了,状态机就不不往下走了,I2C的SCL为40K左右;程序里面是顺序写寄存器,再顺序读。写前后两个寄存器之间是不是要延迟一段时间? (2)“EDID是通过主I2C写入的。。。”那DDC_IIC是? (3)EDID的标准有没有什么文档之类的? (4)我手头只有UG-237,AN-1180和ADV7619的datasheet,其他没什么资料 (5)您说的I2C波形应该可以的,之前用这个代码配置过其他芯片,并且芯片能用起来 期待您的回复,非常感谢! |
|
|
|
简约之约 发表于 2018-10-31 16:13 1) 要确定ALSB管脚从FPGA那边给过来的是高电平还是低电平,这个管脚的状态决定了I2C的器件地址,请用示波器测量一下。 2)DDC_IIC是发送芯片用来读取EDID用的。 3)Extended Display Identification Data(扩展显示标识数据)是一种VESA 标准数据格式,可以参考VESA标准。 4)下面链接是所有关于ADV7619的文档,供您参考:ADV7619 Design Support files | EngineerZone 5)希望您将SCL和SDA的波形用示波器一起显示出来,上传上来,是最直观的调试方式了。 |
|
|
|
yweyerwq 发表于 2018-10-31 16:28 您好! 现在能配置了需要跨过第一个寄存器,从第二个寄存器 98 FD 44 ; CP 开始顺序写就没问题 (1)这个寄存器98 FF 80 ; I2C reset,是不是可以不写,硬件复位后,可以不进行软件复位? (2)我看到ADV7619-VER.1.4c.zip这个文件中好像没有配置6c xx xx这样的寄存器,也可以不配置? 再次感谢您的帮助!期待您的回复! |
|
|
|
1)如果您使用了硬件管脚的reset功能,也是可以不用使用软件复位功能的; 2)关于这部分的寄存器,没有在script中配置,那么我们都是使用这些寄存器的缺省值的。您需要仔细查看这些寄存器的内容,然后与您具体的应用来匹配。 |
|
|
|
yweyerwq 发表于 2018-10-31 16:40 谢谢您,原来是这样啊。我的视频源是1280x720P@50Hz 8bit 4:2:2 YUV,不过现在又出现了这样的问题,我按照下面的配置方式顺序配置,可以出图像,不过图像发绿啊,尝试着改变配置寄存器的值,不过还是不能解决。麻烦您看看,那些寄存器还需要注意一下;另外,前面都是用串口手动配置的,而用Verilog程序配置不出图像(SCL为40KHz左右) 98 FD 44 98 FB 68 68 C0 03 98 01 15 //PRIM_MODE; 50Hz; HDMI CP 98 02 F3 98 03 20 //OP_FORMAT_SEL = 0x20; 8-bit 4:2:2 DDR Mode 98 05 28 98 06 A6 98 0C 42 98 15 80 98 19 C3 98 33 40 44 BA 01 44 6C 00 68 C0 03 //都配置了两次了,读出来的还是0xFF 68 00 01 68 02 03 68 45 04 68 97 C0 68 3D 10 68 3E 69 68 3F 46 68 4E FE 68 4F 08 68 50 00 68 57 A3 68 58 07 68 83 FC 68 84 03 68 85 10 68 86 9B 68 89 03 68 9B 03 68 93 03 68 5A 80 //读出来是0x00 |
|
|
|
简约之约 发表于 2018-10-31 16:52 有关于颜色的问题,您需要查看送进ADV7619的视频源是什么颜色空间的?RGB的还是YUV的,然后ADV7619后面的芯片的颜色空间设置是否与ADV7619输出的颜色匹配? |
|
|
|
yweyerwq 发表于 2018-10-31 17:06 您好: 给ADV7619的视频源是YUV的,输出HDMI的芯片也是按照YUV配置的。目前我的硬件搭建为:只在调试ADV7619的PORTB,PORTA没接。 (1)发现如果不配置98 33 40,则显示器上没有视频。 (2)如果将68 00 01配置为68 00 00,则显示器上只显示绿色的竖条纹。感觉这个绿色的竖条纹像是视频的背景色似的。 (3)在文件ADV7619-VER.1.4c.zip中写的是98 01 06----HDMI-GR,如果这么配置,则没有视频;而我配置的是98 01 15----HDMI-CP,这样配置才会有视频,不知是什么原因。 麻烦您看看,期待您的回复,非常感谢! |
|
|
|
简约之约 发表于 2018-10-31 17:24 (1)发现如果不配置98 33 40,则显示器上没有视频。 这个寄存器不配置, 时钟就不是为DDR模式用的了. 所以你会采不对图像. (2)如果将68 00 01配置为68 00 00,则显示器上只显示绿色的竖条纹。感觉这个绿色的竖条纹像是视频的背景色似的。 这个寄存器是在选择HDMI端口. 00就选了PortA, 你现在不是在用portB吗? 建议仔细查阅SW_manual这个文档. (3)在文件ADV7619-VER.1.4c.zip中写的是98 01 06----HDMI-GR,如果这么配置,则没有视频;而我配置的是98 01 15----HDMI-CP,这样配置才会有视频,不知是什么原因。 其实配置成GR或者CP对于正常解码来说, 没有什么区别. 只是在free-run的时候才会有区别. 请参阅ADV7619_RecSettings.pdf这个文档中关于free-run的描述. 你配置成HDMI-CP的时候, 有视频是什么视频? 是输入对的图像吗? 还是单色? |
|
|
|
您好!之前一直配置的视频输出格式是1280x720P@50Hz 8bit 4:2:2 YUV,可能是pclk高的缘故。现在用的是RGB输出,寄存器配置如下: 0x98 0xf8 0x4cw; 0x98 0xf9 0x64w; 0x98 0xfb 0x68w; 0x98 0xfd 0x44w; 0x68 0xc0 0x03w; read--0xff 0x98 0x01 0x16w; //HDMI-GR 0x98 0x02 0x05w; // 0x98 0x03 0x40w; //24-bit 4:4:4 SDR Mode 0x98 0x05 0x28w; 0x98 0x06 0xa6w; 0x98 0x0c 0x42w; 0x98 0x15 0x80w; 0x98 0x19 0x83w; 0x98 0x33 0x40w; 0x44 0xba 0x01w; 0x44 0x6c 0x00w; 0x64 0x40 0x81w; 0x4c 0xb5 0x01w; 0x68 0xc0 0x03w; read--0xff 0x68 0x00 0x01w; 0x68 0x02 0x03w; 0x68 0x03 0x98w; 0x68 0x10 0xa5w; 0x68 0x45 0x04w; 0x68 0x97 0xc0w; 0x68 0x3d 0x10w; 0x68 0x3e 0x69w; 0x68 0x3f 0x46w; 0x68 0x4e 0xfew; 0x68 0x4f 0x08w; 0x68 0x50 0x00w; 0x68 0x57 0xa3w; 0x68 0x58 0x07w; 0x68 0x83 0xfcw; 0x68 0x84 0x03w; 0x68 0x85 0x10w; 0x68 0x86 0x9bw; 0x68 0x89 0x03w; 0x68 0x9b 0x03w; 0x68 0x93 0x03w; 0x68 0x5a 0x80w; read--0x00 现在视频的颜色泛绿,但是可以看到彩色,但是会变色,比如红色的东西呈现橘黄色;用chipscope抓取ADV7619的输出数据,发现绿色分量又一直为0xfe。 您看看是什么原因造成的?期待您的回复,非常感谢! |
|
|
|
简约之约 发表于 2018-10-31 17:52 如果您要求RGB输出的话,IO Map 0x02【1】要设置为1。您现在设置为0:0x98 0x02 0x05w |
|
|
|
您好: 您说的对,UG237中也是这么写的: IO, Address 0x02[1]----0:YPbPr color space output;1:RGB color space output 但是如果配置成1的话,图像颜色更绿,而配置成0的话,效果好些,我感觉也挺纳闷的。另外: (1)RGB中的绿色分量为什么一直为0xfe? R和B分量挺正常的 (2)HDMI, Address 0x53----读这个寄存器,值为0x00,HDMI_COLORSPACE为RGB_LIMITED (3)还需要读那些寄存器来获得输入源的视频信息,是不是哪儿的寄存器配置不对? (4)由于使用ADV7619时,只用PortB(接入HDMI输入源)来调试,而PortA没有接任何设备,不知道这个会不会有影响? (5)还有 0x68 0x00 0x01w; 0x68 0x02 0x03w; 0x68 0x83 0xfcw;这三个寄存器配置的对不对,对于其中的background mode看得有点儿不理解 期待您的回复,非常感谢! |
|
|
|
简约之约 发表于 2018-10-31 18:04 1) 首先应该先把ADV7619的寄存器要配置正确,如果您期望RGB输出,那么就应该设置为RGB输出。至于颜色为什么还不正确,那就需要从另外的方面查看。 2)如果您设置为RGB输出,发现ADV7619的输出内容不正确,那么需要从源头查看: 1. IO Map R0x6F[0]、R0x6A[7]是否为1 (是否检测到cable接入) 2. IO Map R0x6A[4]/R0x6A[3]是否为1 (是否检测到HDMI Clock) 3. HDMI Map R0x04[1]是否为1 (是否HDMI PLL lock) 4. HDMI Map R0x05[6]是否为1 (HDMI 内容是否加密) 5. HDMI Map R0x07[5]是否为1 (De generation是否锁定) 如果这些都没有问题。 3)那么请参考数据手册HDMI AutomaticCSC Operation一章节 4)不影响 5)ADV7619的output pin mapping您是如何设计的? |
|
|
|
yweyerwq 发表于 2018-10-31 18:18 您好: 谢谢您的帮助!之前可能是HDMI输入源的问题,现在换了一种输入源(输入源是用另外一块电路板产生的一副图片1280x720p@50Hz),寄存器配置的是RGB输出(即IO, Address 0x02[1]配置成1),现在显示器输出图片的颜色是正确的(条纹、全红、黑均测过)。 (1)ADV7619的HDMI输入源有特殊要求吗?感觉我们这个输入源可能不行。 (2)通过读取下面几个寄存器,发现: 1. IO Map R0x6A[7]为1 (检测到cable接入) 2. IO Map R0x6F为0x00(没用到PORTA,应该也正常吧!) 3. IO Map R0x6A[3]为1 (检测到HDMI Clock) 4. HDMI Map R0x04[1]为1 (是HDMI PLL lock) 5. HDMI Map R0x05[6]为1 (HDMI 内容是没有加密) 6. HDMI Map R0x07[5]为1 (De generation锁定) 不过之前的HDMI输入源(SDI-HDMI的视频源),读取以上几个寄存器的值,和现在一样 5)ADV7619的output pin mapping您是如何设计的? 都是直连的(wire连接方式) 期待您的回复,非常感谢! |
|
|
|
简约之约 发表于 2018-10-31 18:38 检查这些寄存器只是第一步,之后还需要确认输入给ADV7619信号的颜色是什么?您可以参考ADV7619 hardware manual中HDMI Automatics CSC Operation一章中介绍的流程。 |
|
|
|
yweyerwq 发表于 2018-10-31 18:53 您好: (1)现在读取HDMI Map R0x53的值为0x00,HDMI_COLORSPACE是RGB_LIMITED (2)我用的这个SDI转HDMI的盒子,输出的是HDMI1.3标准的,这和标准有关吗? 期待您的回复,非常感谢! |
|
|
|
只有小组成员才能发言,加入小组>>
985 浏览 2 评论
给ADUM4223 增加信号驱动15V电压就不正常, 波动很大会被烧是什么情况?
1382 浏览 2 评论
ADP5092 SYS端口为2.09V,但是REG_OUT为0是什么原因?
1937 浏览 1 评论
ad7193差分输入ain1与ain2差是正值时,读到电压与实际值误差小,但为负值值,误差就变的很大
4266 浏览 2 评论
9057 浏览 1 评论
ADC3442采集,分析数据出现有规则毛刺,请问是哪方面的问题啊?
1514浏览 3评论
AD7190状态寄存器一直是0x80,连续转换模式下RDY不拉低
1691浏览 2评论
987浏览 2评论
1665浏览 2评论
给ADUM4223 增加信号驱动15V电压就不正常, 波动很大会被烧是什么情况?
1383浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 01:09 , Processed in 1.150412 second(s), Total 85, Slave 76 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号