我是ML505卡和I2C总线的新用户。
我在ML505的Virtex 5
FPGA中有一个I2C主内核,SCL和SDA信号连接到U27&
根据ML505用户指南文档(UG347第51页)的T29引脚。
当我去实验室时,我可以通过I2C总线与VGA输入设备(Analog Devices AD9980 - I2C设备ID 0x4C)进行
通信,没有任何问题。
但是,当我尝试与DVI输出设备(Chrontel CH7301C - I2C设备ID 0x76)通信时,我没有得到确认。
我决定编写代码来测试所有128个7位I2C地址,看看哪些给了我一个ACK。
除了0x4C(VGA输入设备)之外,我还从地址0x37和0x50到0x57接收到确认。然后我尝试使用其他9个其他I2C设备ID读取寄存器0x4B(Chrontel CH7301C的设备ID寄存器的地址)。
根据Chrontel文档,他们都没有返回我期望的0x17值。
谁能解释一下:
1)当文档仅列出该I2C总线上的3个设备时,为什么我会从显然有10个设备获得响应?
那些其他设备是什么?
2)3个设备中的一个是DVI输出连接器,表1-35列出了地址= N / A.
为什么设备有N / A地址?
怎么访问?
3)我可能做错了什么让我无法与CH7301C部件通信?
谢谢,
史蒂夫