大家好,
我们在“内部闪存的 EDID
仿真”模式下成功使用 PTN3460I,通过 CFG3 和 CFG4 引脚选择 EDID。
但是由于我们现在将在我们的应用程序中使用 4 个以上的显示器,因此我们希望使用显示面板上的 EEPROM 中的显示时序来运行它。为了检查它,我们:
- 得到具有 0x50 I2C 地址的 24C32 EEPROM,并从地址 0 开始仅在其中编程 128 字节 EDID
- 对 PTN3460 进行编程:
flashLvdsBridge()
{
# LVDS 配置:仅 RBR 链路速率,单总线,2 通道,VESA-24,仅奇数总线
i2ctransfer -yf 6 w3@0x60 0x80 8 1
# LVDS:使用 2.5% 扩展,150 mV 输出摆幅
i2ctransfer -yf 6 w2@0x60 0x82 0x28
# set edid emula
tion off
i2ctransfer -yf 6 w2@0x60 0x84 0
# some defaults
i2ctransfer -yf 6 w14@0x60 0x8c 0x08 0x00 0x00 0x0c 0x07 0xff 0x1d 0x0a 0x14 0x00 0x01 0x02 0x01
# use cfg3/ 4 用于 edid 选择
i2ctransfer -yf 6 w2@0x60 0x8d 0x20
# 选择 edid 0
i2ctransfer -yf 6 w2@0x60 0x85 0
# flash
i2ctransfer -yf 6 w5@0x60 0xe8 0x01 0x78 0x45 0x56
}
当系统启动时,我看到 DDC 总线上的活动(它的第一个字节显示对地址为 0x50 的 EEPROM 的访问)但是应用程序以错误的 EDID 和错误的显示设置启动。我现在很困惑哪里出了问题。我的问题:
- 是否需要在 DDC-EEPROM 中仅对 EDID 进行编程,还是我们需要更多?
- 你有任何工作手册如何让这样的案例运行吗?在 ApplicationNotes 中我找不到这种情况
- 也许你知道我们做错了什么