一、功能描述

INA226器件可以执行两种测量。流过分流电阻器的负载电流产生的电压产生分流电压,该电压在 IN 和 IN– 引脚处测量。该器件还可以通过将电源总线电压连接到VBUS引脚来测量电源总线电压。差分分流电压是相对于 IN– 引脚测量的,而总线电压是相对于地测量的。该器件通常由 2.7 V 至 5.5 V 的单独电源供电。被监控总线的电压范围为0 V至36 V。

二、使用说明

  • 连续模式 (Continuous):自动不断采样、计算并更新寄存器。

  • 单次触发模式 (Triggered):写命令触发一次测量。

  • 掉电模式 (Power-down):低功耗,停止采样。

  • 通过配置00h寄存器实现模式切换。

Alert Pin

INA226 具有单个警报限制寄存器 (07h),允许对警报引脚进行编程,以响应单个用户定义的事件或转换就绪通知。

当测得的电压超过写入警报限制寄存器中的值时,掩码/启用寄存器的第4位AFF将被置高。除了AFF被置高外,Alert Pin的引脚状态也会被置高。

Conversion Time /Number of Conversions

INA226提供可编程的转换时间及平均次数设置,这些测量的转换时间可以选择从最快的 140 μs 到长至 8.244 ms 不等。如下图6-2所示更多的平均值使设备能够更有效地降低测量的噪声分量。

在输入断可以添加RC滤波器以排除高频噪声产生的影响

三、使用步骤

1. 上电初始化

INA226 上电后,寄存器都有默认值。如果你只想读取 分流电压总线电压,直接读寄存器就行。但如果要获取 电流/功率,必须配置 校准寄存器 (05h)

配置寄存器 Configuration Register (00h)

  • 地址:0x00

  • 功能:设置 转换时间、平均次数、模式

  • 位定义:

    • AVG[2:0] (bits 9–11):平均次数(1、4、16、64、128、256、512、1024 次)

    • VBUSCT[2:0] (bits 6–8):总线电压转换时间(140µs ~ 8.244ms)

    • VSHCT[2:0] (bits 3–5):分流电压转换时间(同上)

    • MODE[2:0] (bits 0–2):工作模式

      • 111 = 连续模式(电流 + 总线电压)

      • 001/010/011 = 单次触发模式

      • 000 = 掉电模式

 一般配置举例

  • 平均 16 次

  • 分流/总线电压转换时间各 1.1ms

  • 连续模式

写入值:0x4527

校准寄存器 Calibration Register (05h)

  • 地址:0x05

  • 功能:告诉 INA226 分流电阻值 & 电流分辨率,让它能算出电流和功率。

  • 计算公式:

  • 其中:

    • RSHUNT = 你实际用的分流电阻 (Ω)

    • Current_LSB = 你选的电流分辨率 (A/bit),推荐取 最大电流 / 2¹⁵,然后再四舍五入到一个方便的数(比如 1mA/bit)。

👉 举例:

  • 最大电流 15A

  • 分流电阻 2mΩ

  • 选择 Current_LSB = 1mA/bit

  • 代入公式:

所以校准寄存器写 0x0A00

分流电压寄存器 Shunt Voltage Register (01h)

  • 地址:0x01

  • 分辨率:2.5 µV/bit

  • 用来计算电流。


总线电压寄存器 Bus Voltage Register (02h)

  • 地址:0x02

  • 分辨率:1.25 mV/bit

  • 用来计算功率。


电流寄存器 Current Register (04h)

  • 地址:0x04

  • 分辨率:由 校准寄存器决定

  • 直接读 = 实际电流值(按 Current_LSB 转换)。


 功率寄存器 Power Register (03h)

  • 地址:0x03

  • 分辨率:25 × Current_LSB (W/bit)

  • 直接读 = 实际功率。


报警寄存器(可选)

  • Mask/Enable Register (06h):选择报警类型(电压、电流、功率、数据就绪等)。

  • Alert Limit Register (07h):设置阈值。

  • Alert 引脚:当超过阈值或数据就绪时拉低。


 实际操作流程(典型 MCU 程序)

  1. I²C 写入配置寄存器 (00h) → 设定采样时间、平均次数、连续模式。

  2. I²C 写入校准寄存器 (05h) → 根据分流电阻和电流分辨率写入。

  3. 循环读取数据寄存器

    • 0x01 → 分流电压

    • 0x02 → 总线电压

    • 0x04 → 电流

    • 0x03 → 功率

  4. (可选)配置报警功能,读取 0x06/0x07 判断是否超限

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐