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.

[参考译文] INA219:INA219断电模式查询

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

https://e2e.ti.com/support/amplifiers-group/amplifiers/f/amplifiers-forum/1039554/ina219-ina219-power-down-mode-query

器件型号:INA219

您好 TI 团队

我 正在使用 INA219设计总线电压监控器、该应用要求 INA219消耗的电流非常小(<100uA)。 因此、只要我不需要进行任何测量、我就一直在尝试关闭器件电源。 其数据表显示、空闲模式下的电流消耗为20uA、但尚未实现。 该器件当前消耗的电流约为1mA、同时正在进行测量。

尝试通过写入校准寄存器将其发送到断电模式的尝试是徒劳的、即使从相同寄存器读取也会返回相同的值0x399F、无论我尝试写入什么。

因此,我的问题:

1.写入和读取校准寄存器的适当方法是什么? 为什么我在读取时从校准寄存器获得相同的值?

2.如何将 INA219置于断电模式?  是否需要任何与硬件相关的更改? 是否有任何文档/指南可用于此目的?

我正在使用其中一个分线板(类似于 Adafruit)、默认器件地址为0x40H。

请提供建议。 急切地等待答复。

谢谢

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

    尊敬的工程师:

    感谢您的提问、欢迎来到 E2E 论坛。

    写入校准寄存器不会改变器件处于的模式、您实际上需要写入配置寄存器(地址00h)。

    1.读取和写入器件的方法可在此处数据表的第8.5和8.5.6节 中找到。

    不需要进行硬件更改即可将器件置于断电模式、因为这是通过编程实现的。 配置寄存器的最后3位用于设置器件模式。

    根据表6、在这些位中写入000将使器件进入断电模式、停止转换并降低电流消耗。

    只需确保器件在断电时有足够的时间(40us)从断电模式恢复、然后再次开始转换即可。

    如果您需要其他帮助、请告知我们。

    路易

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

    你(们)好

    是的、这将是配置寄存器(不是校准、很抱歉出错)。

    我们一直在使用 Adafruit 的分线板、该分线板的10K 电阻器分别从 A1和 A0下拉至 GND。 我们的 INA219器 件在仅读取总线电压的同时汲取了大约1.3mA 的电流。 请注意、分线板中包含的 IC 是 SOT-23-8 (INA219BIDCNT)。  从 TI 的 INA219 EVM 的原理图中可以看出、允许将 A1和 A0直接连接到 GND。 我们已经尝试过、发现电流消耗降至约650uA。 将 A1和 A0直接连接到 GND (器件地址0x40H)。

    我们需要 进一步降低该值、因为其数据表显示在断电模式下 、静态电流 大约为15uA。因为我们有一个要开发的低功耗应用。  

    此外、 我们在多次尝试使用 Arduino 微型板并通过 I2C 进行通信后、无需任何库(仅限 Wire.h)即可访问配置寄存器。 现在、我们进行 ALE 读取和写入配置寄存器、而读取电流时上升到大约722uA、除非我们尝试访问总线电压模式(包括触发和连续模式)、这会再次将电流增加到1.3mA。  

    请注意、我们使用5V 电源为 INA219分线板供电。

    我们的查询如下:

    1、如何将电流消耗降至20uA 或附近、如数据表中所述?

    2.将 A1和 A0直接连接到 GND 是否是低功耗应用的必要/标准?

    在不显著增加 INA219电流消耗的情况下读取总线电压的最佳可能方法是什么? 是否可以采用低功耗运行模式?

    请提供建议。 急切地等待答复。

    此致

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

    您好!

    您能否分享您测量电流的方式/时间? 我想知道器件处于什么模式以及测量1.3mA 时会发生什么情况。

    在配置寄存器的 MODE 位中写入000后、关断电流将为15uA 或更低、从而使器件处于断电模式。 在断电模式下、器件不会进行任何转换或测量、因此电流将处于其最小值。

    2.对于低功耗应用、并不绝对需要将 A0和 A1接地、因为该器件只是检查这些引脚是低电平还是高电平来确定其地址。

    此器件没有低功耗选项。 为了实现尽可能低的电流(如果只读取总线电压)、将器件置于断电模式、请将010写入配置寄存器的 Mode 位以触发总线电压的单次转换、读取总线电压、 然后通过将000写入 Mode 位将器件恢复为断电模式。 采用这种方法时唯一需要注意的是您的时序、因为正如我之前所说、器件需要40uS 才能从断电模式完全恢复。

    路易

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

    你(们)好

    当然、我可以分享。  

    INA219由5V 电源供电。 为了测量电流、我在 INA 219的+5V 电源轨和 VCC 之间的电流表模式下连接了一个 DMM。 此时、器件可能处于默认的连续测量模式。 此处的电流消耗约为1.3mA。

    可能是我一直使用的库的一个限制、即器件不会掉电。 后来、我转移到 STM32 MCU、从3.3V 电源为系统供电、并在数据表之后在 Arduino 中编写了我自己的代码。

    这非常好、根据您的建议、我能够在断电时将电流消耗降至5uA。 在总线电压模式下加电(单次测量/触发)以及读取总线电压时、电流消耗高达~ 600uA。 但现在我完全可以控制这一点、因为我 可以通过最大程度地减少总线电压读取的持续时间来减少总电荷消耗(来自电池)。 这就是为什么我还在 单次测量/触发模式下运行 INA219仅1-2秒、然后将其恢复为断电状态。

    在两个分线板上都尝试过相同的方法、例如、其中一个将 A1和 A0直接拉至 GND、另一个将 A1和 A0各拉至10K。 两者的结果几乎相同。  

    当前的结果看起来很有希望、希望它能解决我们的问题。 我们高度赞赏迅速提供的指导。  

    谢谢