您好!
我有一个通过 I2C (两线制)协议与 PGA309的内部寄存器进行对接的问题。 我想完全控制 PGA309、因为我想根据需要改变增益/偏移值、而不是使用 EEPROM 来改变。 因此、我阅读了用户指南和数据表、并且了解到我必须将 PGA309的测试引脚驱动至高电平、以便通过 I2C 进行全面控制和通信。 但是、我不能与 PGA309通信。 我正确发送了器件地址、但 IC 没有响应(NACK、它没有下拉第9条中的 SDA 线。 时钟)。 我通过示波器分析了 SCL 和 SDA 线、没有问题、图看起来不错。 此外、我更改了 I2C 时钟频率、例如400,200和100 KHz、但仍有同样的问题。 顺便说一下、我在输入上没有信号的情况下检查了 PGA309、它正在工作。 我测量 PGA309的输出、并在用户指南中使用默认寄存器值(零 DAC 偏移为1.25V、输出放大器增益为2、增益 DAC 为0.5、所以输出必须为1.25V)、它的显示电压为1.25V、所以看起来不错。
之后、在同样的设置下、我尝试与 EEPROOM 连接(PGA309和 EEPROM 时序图相同)、并且我可以读取 EEPRROM (像第一个地址数据是5449、TI 为 ASCII)。 当我尝试写入 EEPROM 时、我无法写入、但我想这是因为有一些其他东西)。
"我不知道你在胡说什么,我不知道你在胡说什么。"
注意:我正在将 PGA309评估模块(PGA309EVM-USB)的 PGA309测试板与我的控制器单元一起使用。
注2:当我尝试使用网站上的软件来测试完整的 PGA309评估模块时、我可以通过一根线来设置寄存器值、但同样、我不能通过 I2C 与 thw PGA309进行交互。 在数字接口部分选中"One-Wire sele"的情况下、按下"Read All Reg"按钮时、我可以读取/写入所有寄存器。 不过、如果我选择了"I2C 选择"、则无法读取、当我按下"Read"按钮时、所有寄存器值都会显示 FFFF。 我不知道为什么我不能通过 I2C 进行连接。 (我在测试引脚打开和关闭时尝试了这两种方法)。