工具与软件:
我在 PCB 设计中使用 INA226。
İ 具有一个1R 分流电阻器、而且我也使用2.5uV LSB。 I 测量 灯和 I appyl 5V 灯上的电流。 我施加5V 电压时的灯电流为40mA。
当 I 为50mA 设置 ALERT 引脚时 (ALERT 引脚处于低电平状态)
当 I 为60mA 设置 ALERT 引脚时 (ALERT 引脚处于低电平状态)
当我 为70mA 系统设置 ALERT 引脚时无法工作(ALERT 引脚处于低电平状态)
如果我设置80mA 系统的 ALERT 引脚工作、灯闪烁。
我已检查 分流电压和电流寄存器地址。 正如我所说的40mA、我看到了我的电流。 ALSA I 用万用表测量。 我的电流正确。
当我 按照所述状态设置警报限值寄存器时、为什么我的系统无法工作。 为什么我的系统 在为80mA 设置警报限值寄存器时才起作用
我分享我的代码;
空 INA226_INA226 Config_Register ()
{
uint16_t Reg_Data;
Write_All_Devices (INA226_CONFIG_REG、CONFIG_CONFIG Reg_Data);
}
空 INA226_INA226 Calibration_Register ()
{
uint16_t CONFIG_LSB=0x800 Reg_Data;//对于100mA ->LSB== 2.5 µA /位。 Rshunt=1R (板载)。
Write_All_Devices (INA226_CALIBRATION_REG、CONFIG_CONFIG Reg_Data);
}
空 INA226_INA226 Enable_Shunt_Over_Limit ()
{
uint16_t Enable_Reg_Data = 0x8001;
Write_All_Devices (INA226_MASK_ENABLE_REG、Enable_Reg_Data);
Read_All_Devices (INA226_MASK_ENABLE_REG);
}
空 INA226_INA226 Set_Current_Alert_Limit ()
{
uint16_t ALERT_LIMIT = 0x7D00;//0x1F40= 20mA 警报限制设置、0x2710= 25mA、0x1770= 15mA、0x4E20= 50mA、0x5DC0= 60mA、0x9C40= 100mA、0x6D60= 70mA、0x7D00= 80mA
Write_All_Devices (INA226_ALERT_LIMIT_REG、ALERT_LIMIT);
}