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.

[参考译文] BQ76942:警报/警报状态寄存器

Guru**** 2553260 points
Other Parts Discussed in Thread: BQSTUDIO

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1178349/bq76942-alert-alarm-status-register

器件型号:BQ76942
主题中讨论的其他器件:BQSTUDIO

BQ769x2_SetRegister (ALERTPinConfig、0x2A、1);// ALERT
BQ769x2_SetRegister (EnabledProtectsA、0x10、1);//启用 OCD1
BQ769x2_SetRegister (DefaultAlarmMask、0x4000、2); //启用 SSA 位14
BQ769x2_SetRegister (OCD1Threshold、0x02、1);// 电流4A
BQ769x2_SetRegister (OCDRecoveryThreshold、0x00002);//清除 OCD 的当前值 为0A!!!          
BQ769x2_SetRegister (EnabledProtectsA、0x20、1);//启用保护


然后、我们测试 BMS 是否将电流负载增加到阈值限制 OCD 以上

我们成功地触发了 OCD 警报、警报变为高电平(有效)。

我们还成功地从故障中恢复(清除警报原始状态)。

要删除警报状态寄存器中的活动位、我们执行以下步骤。

 BQ769x2_ReadSafetyStatus (); //读取寄存器
   如果(value_SafetyStatusA &&(1<<5))检查 OCD 是否处于活动状态
 {
    delayUS(5000);  
    BQ769x2_SetRegister (AlarmStatus、0xFFFF、2);根据第62页的文档"技术参考手册"清除 SSA 寄存器写入"1"
    _NOP();
 }

尽管如此、我们仍无法清除警报状态寄存器、警报引脚也无法清除。

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

    您好、Guenter、

    我使用 BQStudio 测试了您的设置、并且能够清除警报状态寄存器、并看到警报引脚恢复为低电平。 我假设您使用 CONFIG_UPDATE 模式对寄存器设置进行编程?  

    此致、

    Matt