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.

[参考译文] INA228:寄存器不保存写入值

Guru**** 2387830 points
Other Parts Discussed in Thread: INA228
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/amplifiers-group/amplifiers/f/amplifiers-forum/1416602/ina228-registers-do-not-save-written-values

器件型号:INA228

工具与软件:

您好!  

我目前有问题、不知道我发送到 INA228上任何寄存器的值是否保存正确。
例如、当我尝试将0x9000写入 ADC_CONFIG_REGISTER 时、芯片会确认这些值。 然后、当我尝试从 ADC_CONFIG_REGISTER 中读取值时、我只能读取0x22FF、这应该无法实现、因为位3-0是保留的且始终设置为零。

我的问题是:我在写作或阅读过程中有什么问题吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Michael、您好!

    保留位0-3用于寄存器0x0、而不是寄存器0x1、因此这仍然是寄存器0x1的可接受值。  

    我建议尝试读取 MANUFACTURER_ID 或 DEVICE_ID 寄存器、通过这种方法、您可以使用已知值确认通信。 您也可以尝试写入和读取 SHUNT_CAL、因为对该寄存器没有限制。

    我还建议查看与示波器(而不是逻辑分析仪)的通信、以确认通信。 逻辑分析仪的高低阈值可能未设置为与信号完全匹配。 I2C 通信也可能没有将足够低的值驱动到 GND、从而导致逻辑分析仪(或器件或 MCU)将一些低值寄存为高电平。

    此致、

    Mitch