我已使用 APB 成功读取默认 EDID。
似乎无法使用 APB (单次或自动递增)将我的新 EDID 写入 SRAM。 始终读回默认值。
我已阅读以下页面:
其他。
有人知道我遗漏了什么?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我已使用 APB 成功读取默认 EDID。
似乎无法使用 APB (单次或自动递增)将我的新 EDID 写入 SRAM。 始终读回默认值。
我已阅读以下页面:
其他。
有人知道我遗漏了什么?
感谢您的回复。
希望伪代码是合理的。
若要读取 EDID (结果与数据表100%匹配、适用于所有256个默认 EDID 字节)、请执行以下操作:
将0x00写入 ADR0_0x49。
循环以下256次:
{将0x0F 写入 APB_CTL_0x48
从 APB_DATA0_0x4B 读取数据}
这包括所有预期的在 I2C 上进行的插孔和重新启动。
对于写入 EDID、我尝试了一次和多次写入(使用自动递增)。 下面是我要尝试多个器件的情况:
将0x00写入 ADR0_0x49。
循环以下 n 次(我最初尝试 n=8次写入以验证):
{将0x0D 写入 APB_CTL_0x48
将 EDID[n]写入 APB_DATA_0x4B}
同样、我将看到所有预期的"黑客"和"循环"、毫无例外。
我觉得一定会有一些容易遗漏的东西。
谢谢。
由于我正在从 NXP LPC 运行单个主 I2C 总线、因此不确定我可以发送的内容是否适用于您的 EVM。
总之、目前没有任何东西可以解锁 EDID 的写入或将写入的数据提交到 EDID? 进行更改确实像听起来一样简单?
我觉得在 ctrl 中设置读取标志对于读取很重要、但没有这样的障碍需要写入、这一点很有趣。
我还没有尝试在8位地址0xA0向 EDID 从器件 I2C 发送更新、也没有使用自动增量。 我想使用这个方法、我必须循环写入 EDID 索引、然后写入数据...因此相对于自动递增没有太多优势?