Thread 中讨论的其他器件: BQSTUDIO
工具与软件:
尊敬的所有人:
我正在 LFP 电池组上以16节串联配置使用 BQ76952。 第16块电池的稳态电压测量值约为15mV、而其他电池的电压测量值约为1mV、这是正常情况。 以下是固件配置和映像详细信息。
->全部单元格图像、然后选中第16个黄色单元格。

->下面是第1节与第16节

您能告诉我这可能是什么原因造成的。
//配置器件 RAM 中的所有参数
//进入 configupdate 模式(子命令0x0090)-需要处于 CONFIG_UPDATE 模式才能对器件 RAM 设置进行编程
//请参阅 TRM 以了解 CONFIG_UPDATE 模式的完整说明
CommandSubcommands (SET_CFGUPDATE);
//进入 CONFIG_UPDATE 模式后、可对 RAM 寄存器进行编程。 对 RAM 进行编程时、校验和及长度也必须相同
//编程以使更改生效。 BQ769x2 TRM 中详细介绍了所有 RAM 寄存器。
//找到描述的更简单方法是在 BQStudio Data Memory 屏幕中。 将鼠标移到寄存器名称上时、
//屏幕上将弹出对寄存器和位的完整说明。
//'Power Config'- 0x9234 = 0x2D80 //9E0
//设置 DSLP_LDO 位允许 LDO 在器件进入深度睡眠模式时保持活动状态
//将唤醒速度位设置为00以获得最佳性能
BQ769x2_SetRegister (PowerConfig、0x27A8、2);// Power Config
//'re n.0 Config'-设置 REG0_EN 位以启用前置稳压器
// BQ769x2_SetRegister (REG0Config、0x01、1);//怀疑
//'re.12 Config'-启用具有3.0V 输出的 REG1 (0x0B 为3.0V、0x0F 为5V)
BQ769x2_SetRegister (REG12Config、0x0B、1);
BQ769x2_SetRegister (REG12Config、0x0F、1);
//将 CFETOFF 引脚设置为 Config (将 AFE_CS 设置为 OIN 使能)
BQ769x2_SetRegister (CFETOFFPinConfig、0x4A、1);
//设置 DFETOFF 引脚以测量电芯温度- 0x92FB = 0x87 (设置为0x00以禁用)//设置 TS4以测量电芯温度
BQ769x2_SetRegister (DFETOFFPinConfig、0x07、1);
//设置 ALERT 引脚- 0x92FC = 0x2A // 0x22
//这会将 ALERT 引脚配置为在启用时驱动高电平(REG1电压)。
//当保护已触发或有新的测量可用时、ALERT 引脚可用作 MCU 的中断
//用于测量数据就绪的警报引脚
BQ769x2_SetRegister (ALERTPinConfig、0x22、1);
// DA 配置。
BQ769x2_SetRegister (DaConfiguration、0x06、1);//为用户安培选择设置百安(10 mA)单位。
//当前校准 CC 增益。
BQ769x2_SetRegister_f (CCGain、CC_GainValue、4);
//当前校准容量增益。
Capacity_Gain =4.11CC_GainValue * 298261.6178;
BQ769x2_SetRegister_f (CapacityGain、Capacity_Gain 频繁、4);
子命令(CCGain、0x00、R);
子命令(CapacityGain、0x00、R);
//设置 TS1以测量电芯温度- 0x92FD = 0x87 //0x87
BQ769x2_SetRegister (TS1Config、0x07、1);
//设置 TS2以测量电芯温度- 0x92FE = 0x87
BQ769x2_SetRegister (TS2Config、0x07、1);
//设置 TS3以测量电芯温度- 0x92FF = 0x87
BQ769x2_SetRegister (TS3Config、0x07、1);
//设置 HDQ 以测量主输出从输入- 0x9300 = 0x00
// BQ769x2_SetRegister (HDQPinConfig、0x00、1);// EVM HDQ 引脚上未安装热敏电阻、因此设置为0x00
//设置 DDSG 以测量短路检测
BQ769x2_SetRegister (DDSGPinConfig、0xA2、1);
//"VCell Mode"-启用16个单元- 0x9304 = 0xFFFF;写入0xFFFF 会设置16个单元
BQ769x2_SetRegister (VCellMode、0xFFFF、2);
//设置保护配置寄存器字段说明禁用所有
BQ769x2_SetRegister (ProtectionConfiguration、0x0000、2);
//在"Enabled Protections A"中启用保护0x9261 = 0xBC
//启用 SCD (短路)、OCD1 (放电过流)、OCC (充电过流)、
// COV (过压)、CUV (欠压)
BQ769x2_SetRegister (EnableedProtectionsA、0x80、1);
//启用"Enabled Protections B"中的所有保护0x9262 = 0xF7
//启用 OTF (过热 FET)、OTINT (内部过热)、OTD (放电过热)、
// OTC (充电过热)、UTINT (内部欠温)、UTD (放电欠温)、UTC (充电欠温)
BQ769x2_SetRegister (EnableedProtectionsB、0x00、1);
//启用"Enabled Protections C" 0x9263 = 0x4F 中的保护
BQ769x2_SetRegister (EnableedProtectionsC、0x41、1);
//"默认报警屏蔽"- 0x..82启用 FullScan 和 ADSCAN 位、默认值= 0xF800
BQ769x2_SetRegister (DefaultAlarmMask、0xF882、2);
//设置电芯平衡配置- 0x9335 = 0x0B -在 RELAX 或 CHARGE 模式下自动平衡
//另请参阅 TI.com 上的"BQ769x2电池监控器的电池平衡"文档
BQ769x2_SetRegister (BalancingConfiguration、0x03、1);
BQ769x2_SetRegister (CellBalanceInterval、0x02、1);// Cell Balance Interval 5秒
BQ769x2_SetRegister (CellBalanceMaxCells、0x06、1);// Cell Balance Max Cells 5个电池
BQ769x2_SetRegister (CellBalanceMinCellVCharge、CombineConfigPacketails.BMSDetailsConfiguration.BalanceStartVoltage、2);// Cell Balance Min Cell V (Charge) 3100mV
BQ769x2_SetRegister (CellBalanceMinDeltaCharge、CombineConfigPacket.BMSDetailsConfiguration.BalanceWindow、1);//Cell Balance Min Delta (Charge) 30mV
BQ769x2_SetRegister (CellBalanceStopDeltaCharge、(CombineConfigPacket.BMSDetailsConfiguration.BalanceWindow - 10)、1);//电芯平衡停止增量(充电) 20mV
BQ769x2_SetRegister (CellBalanceMinCellVRelax、CombineConfigPacketailsConfiguration.BalanceStartVoltage、2);// Cell Balance Min Cell V (Relax) 3200mV
BQ769x2_SetRegister (CellBalanceMinDeltaRelax、CombineConfigPacketails.BMSDetailsConfiguration.BalanceWindow、1);//电芯平衡最小值差(休息) 30mV
BQ769x2_SetRegister (CellBalanceStopDeltaRelax、(CombineConfigPacket.BMSDetailsConfiguration.BalanceWindow - 10)、1);//电芯平衡停止增量(休息) 15mV
//设置 CUV (欠压)阈值- 0x9275 = 0x31 (2479mV)
// CUV Threshold 是该值乘以50.6mV
BQ769x2_SetRegister (CUVThreshold、0x31、1);
//设置 COV (过压)阈值- 0x9278 = 0x55 (4301mV)
// COV Threshold 是该值乘以50.6mV
BQ769x2_SetRegister (COVThreshold、0x55、1);
//设置 OCC (充电过流)阈值- 0x9280 = 0x05 (1m Ω 检测电阻上为10mV = 10A)、单位为2mV
BQ769x2_SetRegister (OCCThreshold、0x05、1);
//设置 OCD1阈值- 0x9282 = 0x0A (1m Ω 检测电阻上的20mV = 20A)、单位为2mV
BQ769x2_SetRegister (OCD1Threshold、0x0A、1);
//设置 SCD 阈值- 0x9286 = 0x05 (1m Ω 检测电阻上的100mV = 100A) 0x05=100mV // 0x02=40mV (31mV)
BQ769x2_SetRegister (SCDThreshold、0x06、1);
//设置 SCD 延迟- 0x9287 = 0x03 (30us)启用、延迟为(值- 1)* 15 µs;最小值为1
BQ769x2_SetRegister (SCDDelay、0x02、1);
//将 SCDL 锁存限制设置为1、以便将 SCD 恢复设置为仅移除负载0x9295 = 0x01
//如果未设置此设置、则 SCD 将根据时间进行恢复(SCD 恢复时间参数)。
BQ769x2_SetRegister (SCDLLatchLimit、0x01、1);
// Exit configupdate mode -子命令0x0092
CommandSubcommands (EXIT_CFGUPDATE);





