You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

BQ7693003 BMS逆向工程中两款适配库无法运行的技术求助

解决BQ7693003搭配STM32F103C8时第三方库运行卡顿问题

问题背景

  • 硬件配置:搭载STM32F103C8与带CRC校验的BQ7693003的BMS,已完成硬件连接
  • 库1(10s_Ti_BQ76930_BMS):取消bq769x0.cpp中BootPin代码注释后芯片可启动,但串口停留在“Address and CRC detection successful”;编译需将abs替换为fabs才能通过,添加延迟无效
  • 库2(LibreSolar bq769x0-arduino-library):可执行到清除XR、Alert、UV、OV等错误步骤,但卡在清除XR错误之后

排查与解决步骤

一、先确认I2C硬件通信有效性

  • 抓波形查时序:用示波器或逻辑分析仪抓取SDA/SCL总线波形,确认电平(需为3.3V)、速率(最高400kHz,STM32端配置要匹配)符合BQ7693003手册要求
  • 检查上拉电阻:SDA/SCL引脚必须外接4.7k~10k上拉电阻到3.3V,无拉电阻会导致I2C通信不稳定
  • BootPin接线验证:BQ7693003的BOOT引脚启动模式需与代码配置一致(手册中BOOT引脚拉低为工厂模式,拉高为正常模式,确认硬件接线和代码里的电平设置匹配)

二、针对10s_Ti_BQ76930_BMS库的问题

  • abs替换为fabs的后续检查:替换后确认相关变量类型为浮点型,避免隐式转换导致逻辑错误,比如原代码中用abs处理的变量是否确实是浮点值
  • 卡在地址CRC检测后的调试:在检测成功后的代码段添加I2C读写返回值打印,比如每次调用read_register或write_register时,输出函数返回的成功/失败状态,定位具体哪一步通信中断
  • CRC功能配置检查:BQ7693003默认可能启用CRC校验,需确认库代码中是否正确设置了CONFIG2寄存器的CRC_EN位(置1启用),未开启CRC会导致后续寄存器读写失败

三、针对LibreSolar库卡在清除XR错误的问题

  • XR错误触发原因排查:查BQ7693003手册,XR错误关联芯片复位、欠压、过热、通信故障等,清除错误前先读取FAULT寄存器(地址0x02),确认具体错误源
  • 添加调试输出:在清除XR错误的代码后,添加读取STATUS(0x01)、FAULT寄存器的代码并打印值,看是否仍有未清除的错误,或是后续I2C读取操作失败
  • 芯片型号适配检查:确认LibreSolar库是否支持BQ7693003,部分库默认适配BQ76920/30等型号,需修改代码中的寄存器定义、I2C地址(BQ7693003默认7位地址为0x08)匹配目标芯片

四、新手友好的基础I2C调试方法

先跳过第三方库,用底层I2C代码验证通信是否正常:

#include <Wire.h>

void setup() {
  Serial.begin(115200);
  Wire.begin(); // 初始化I2C,注意STM32引脚映射是否正确(如PB6=SCL,PB7=SDA)
}

void loop() {
  // 读取BQ7693003的DEVICE_ID寄存器(地址0x00,固定值0x30)
  Wire.beginTransmission(0x08); // 7位I2C地址
  Wire.write(0x00); // 寄存器地址
  if (Wire.endTransmission(false) != 0) { // 发送后不释放总线
    Serial.println("I2C write failed");
    delay(1000);
    return;
  }
  if (Wire.requestFrom(0x08, 1) != 1) { // 请求读取1字节
    Serial.println("I2C read failed");
    delay(1000);
    return;
  }
  byte dev_id = Wire.read();
  Serial.print("DEVICE_ID: 0x");
  Serial.println(dev_id, HEX); // 正常应输出0x30
  delay(1000);
}
  • 若此代码能正常输出0x30,说明硬件I2C通信正常,问题出在库的逻辑或配置;若失败,继续排查硬件接线、引脚映射

内容的提问来源于stack exchange,提问作者ManeGote

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 03:28:17