ZHCU948B September 2020 – May 2022 BQ76952
ALERT 引脚是一个多功能引脚,可配置为 ALERT(为主机处理器提供中断)、热敏电阻输入、通用 ADC 输入、通用数字输出或 HDQ 串行通信接口。该引脚可配置为高电平有效、低电平有效或开漏,以适应不同的系统设计偏好。当配置为 HDQ 接口引脚时,该引脚将在开漏模式下工作。
当引脚配置为驱动高电平有效输出时,输出电压由 REG18 1.8V LDO 或 REG1 LDO(可在 1.8V 至 5.0V 范围内编程)驱动。注意:如果该引脚可以驱动直流或很大的瞬态电流,则应将输出配置为使用 REG1 LDO(而不是 REG18 LDO)驱动。
BQ76952 器件包含在 ALERT 引脚上生成警报信号的功能,该信号可用作主机处理器的中断。该功能是可选的,其可以通过设置 Settings:Configuration:ALERT Pin Config[PIN_FXN1:0] = 0b10 来启用。当用于报警功能时,该引脚可通过编程将信号驱动为低电平有效或高阻态信号、高电平有效或低电平信号,或者低电平有效或高电平信号(即反极性)。BQ76952 器件中的警报功能包含一个可编程掩码,允许客户决定哪个标志或事件可以触发警报。0x64 Alarm Raw Status() 命令提供下面说明的位的当前(未锁存)值:
位 | 名称 | 说明 |
---|---|---|
15 | SSBC | 安全状态 - 如果 Safety Status B–C() 中设置了某个位,则会设置该安全状态。 |
14 | SSA | 硬件安全状态 - 如果设置了 Safety Status A() 中的某个位,则会设置该硬件安全状态。 |
13 | PF | 永久失效状态 - 如果设置了 PF Status A–D() 中的某个位,则会设置该永久失效状态。 |
12 | MSK_SFALERT | 已屏蔽安全警报 - 如果在 Safety Alert A–C() 中设置了某个位且设置了 Settings:Alarm:SF Alert Mask A–C 中相应的位,则会设置该安全警报。 |
11 | MSK_PFALERT | 已屏蔽永久失效警报 - 如果在 PF Alert A–D() 中设置了某个位且设置了 Settings:Alarm:PF Alert Mask A–D 中相应的位,则会设置该永久失效警报。 |
10 | INITSTART | 初始化已开始(器件上电后快速设置)。 |
9 | INITCOMP | 初始化已完成(在器件通电并完成一次测量扫描后设置)。 |
8 | RSVD | 保留 |
7 | FULLSCAN | 完整电压扫描完成。已完成必要的多次 ADC 扫描来收集完整的电压测量环路数据(包括电芯电压、引脚或热敏电阻电压等)。在首次完整扫描完成后会设置该位,然后该位保持设置状态。 |
6 | XCHG | CHG FET 已关断。 |
5 | XDSG | DSG FET 已关断。 |
4 | SHUTV | 电池组电压低于 Power:Shutdown:Shutdown Stack Voltage。 |
3 | FUSE | 驱动 FUSE 引脚。FUSE 引脚由 BQ76952 器件或次级保护器驱动。 |
2 | CB | 电芯平衡处于活动状态。 |
1 | ADSCAN | 电压 ADC 扫描完成。已完成一次 ADC 扫描(每次扫描时都要测量电芯电压)。在首次 ADC 扫描完成后会设置该位,然后该位保持设置状态。 |
0 | WAKE | 唤醒。器件从 SLEEP 模式唤醒。 |
可以选择锁存 0x64 Alarm Raw Status() 中的位并将其包含在基于屏蔽寄存器的警报中断输出中。
当某个屏蔽的标志从低电平转换为高电平时,该标志会锁存 0x62 Alarm Status() 中的相应位。[ADSCAN] 和 [FULLSCAN] 位是例外情况。如果被屏蔽,当扫描完成时,它们将被锁存在 0x62 Alarm Status() 中,即使 0x64 Alarm Raw Status() 中的相应位不切换也是如此。
如果在 Settings:Alarm:Default Alarm Mask、Settings:Alarm:SF Alert Mask A–C 和 Settings:Alarm:PF Alert Mask A–D 配置寄存器中设置了相应的屏蔽位,则确定屏蔽。主机可以轮询 0x62 Alarm Status(),或使用映射到 ALERT 引脚的警报中断信号(对 0x62 Alarm Status() 中所有位执行“或”运算)。
当位被锁存到 0x62 Alarm Status() 中时,主机可以通过写入 0x62 Alarm Status() 命令来读取状态并清除这些锁存的位,其中该命令在一个或多个待清除的位中使用“1”,在所有其他位中使用“0”(使其他位保持不变)。这可以防止意外地清除任何在从主机处理器发送清除信号之前已设置的其他 0x62 Alarm Status() 位。
可以读取 0x66 Alarm Enable() 命令以查看当前应用于 0x64 Alarm Raw Status() 位的掩码。主机也可以写入 0x66 Alarm Enable() 命令以更改操作期间的屏蔽。
0x7F FET Status()[ALRT_PIN] 寄存器位提供 ALERT 引脚的状态。