
1. 项目概述为什么可穿戴设备需要BQ21061这样的“全能管家”做可穿戴设备或者小型便携式医疗仪器的硬件工程师这几年应该都深有体会PCB板上的空间是越来越金贵了。一颗主控、一颗传感器、一颗蓝牙芯片再加上电池、天线和各种被动元件留给电源管理IC的地盘往往就指甲盖那么大。但电源管理的要求却一点没降低充电要快、要准、要安全系统供电要稳、要高效还得能智能管理电池和外部电源的切换确保用户插拔充电线时设备不掉电、不重启。以前我们可能得用一颗充电IC、一颗LDO、再加一些逻辑电路和MOSFET来实现这些功能现在像TI的BQ21061这样的高度集成方案就成了我们的“救命稻草”。BQ21061本质上是一个为单节锂离子/锂聚合物电池量身定制的“电源管理中枢”。它把线性充电器、电源路径管理、一个可配置的LDO/负载开关甚至一个按钮控制器全部塞进了一个只有2mm x 1.6mm的芯片里。我之所以花时间深入研究它是因为在最近一个智能戒指的项目里空间和功耗被卡得死死的BQ21061的集成度和灵活性正好切中了要害。它不像一些简单的线性充电器只管充电它的核心价值在于通过I2C总线让你能像一个“指挥官”一样在设备运行时动态调整几乎所有关键参数充电电流、充电电压、系统电压、LDO输出、温度保护阈值等等。这对于需要精细化管理电池以延长续航、或需要适应不同电池规格的产品来说是巨大的优势。简单来说如果你正在设计TWS耳机、智能手表、健身追踪器、或者便携式医疗监测设备并且对设备的尺寸、续航和充电体验有较高要求那么理解并用好BQ21061能让你在电源设计上省下大量精力同时获得更优的性能。接下来我会结合数据手册和实际调试经验拆解它的核心功能、设计要点和那些容易踩坑的细节。2. 核心功能模块深度解析BQ21061虽然封装小巧但内部集成的功能却相当丰富。我们不能把它简单地看作一个充电芯片而应该理解为一个可编程的电源管理单元。其功能可以拆解为四个核心部分它们协同工作共同构成了完整的电源解决方案。2.1 高精度线性充电器不只是“充上电”那么简单线性充电器的原理大家都不陌生通过一个串联的调整管在BQ21061内部是MOSFET以线性方式消耗输入电压VIN和电池电压VBAT之间的压差Vdrop VIN - VBAT从而实现对电池的恒流CC或恒压CV充电。它的优点是电路简单、外围元件少、电磁干扰EMI极低。缺点也很明显就是效率不高功耗P_loss Icharge * Vdrop这个功耗会以热量的形式散发。BQ21061的线性充电器部分其“高精度”和“可编程性”是最大亮点充电电压VBATREG可编程范围3.6V至4.6V步进为10mV。0.5%的精度意味着如果你设置为4.2V实际输出电压的误差在±21mV以内。这对于充分利用电池容量、保证长期循环寿命至关重要。不同的电池化学体系如三元锂、磷酸铁锂或不同厂商的电池其满电电压可能有细微差别这个可调范围给了我们很大的灵活性。充电电流ICHARGE范围从1.25mA到500mA。为什么下限是1.25mA这是为了照顾一些容量极小的电池如某些助听器电池或需要极慢速维护充电的场景。通过I2C你可以根据电池容量C-rate、散热条件动态调整电流。例如在设备温度较高时主机可以主动降低充电电流。预充电与终止电流对于深度放电的电池VBAT VLOWV典型值2.8V-3.0V可设芯片会以更小的预充电电流IPRECHARGE 1.25-77.5mA进行恢复避免大电流冲击损坏电池。当电池接近满电电流下降到可编程的终止电流ITERM 1%-31% of ICHARGE时充电停止。这个“终止电流”的设定是个学问设得太小可能导致充电永远无法完成设得太大则会影响电池充入的电量并可能产生过充风险。通常建议设为充电电流的5%-10%。一个关键细节数据手册强调为了确保电池能被充到设定的VBATREGPMID的稳压电压必须至少比VBATREG高200mV。这是因为线性调整管需要一定的压差Headroom才能正常工作。如果你把PMID设为4.5V却想把电池充到4.45V那在CV阶段末期调整管上的压差只有50mV可能无法提供足够的电流将电池电压“顶”到4.45V导致充电无法真正完成。我的经验是通常将PMID设置为比VBATREG高300-500mV留下充足的裕量。2.2 电源路径管理Power Path Management无缝切换的艺术这是BQ21061区别于普通充电器的核心功能。普通的充电器在充电时系统由适配器供电拔掉适配器后系统断电再切换到电池这个切换过程可能导致系统瞬间掉电重启。电源路径管理就是为了解决这个问题。BQ21061的电源路径结构可以简化理解为输入VIN通过一个开关Q7/Q8连接到系统输出PMID电池BAT通过另一个开关Q5/Q6也连接到PMID。一个内部的优先级控制器管理这两个开关。有输入电源时VIN有效系统负载连接在PMID上优先由VIN供电。同时VIN也通过线性充电器给电池充电。此时电池开关BATFET是导通的电池可以随时为PMID补充电流如果需要。输入电源移除时VIN开关断开电池开关保持导通PMID无缝地由电池供电。系统完全感觉不到这个切换过程实现了“插拔无感”。动态电源路径管理DPPM当系统负载突然增大例如屏幕点亮、蓝牙传输数据导致从VIN抽取的总电流系统电流充电电流可能超过输入电流限制IILIM或导致VIN被拉低时DPPM会介入。它会首先降低甚至停止充电电流优先保障系统供电。如果PMID电压被拉低到接近电池电压VBAT 200mV就会进入“补充模式”Supplement Mode电池开始放电与VIN一起为系统供电。这里有一个非常重要的配置选项PMID的稳压模式。BQ21061提供了几种模式通过I2C寄存器PMID_REG_CTRL配置固定电压模式将PMID稳定在一个固定值4.4V至4.9V可调。这是最常用的模式为系统提供一个干净的、不受电池电压影响的电源。电池跟踪模式Battery Tracking将PMID稳定在比电池电压高一个固定偏移如1.045倍VBAT。这种模式在电池供电时效率最高因为线性调整管的压差最小但系统电压会随着电池放电而下降需要你的系统电路能承受这个电压变化范围。输入直通模式VIN Pass-ThroughPMID直接连接到VIN减去开关管的导通压降。这种模式下系统电压就是输入电压适用于对输入电压纹波不敏感且希望最大化功率传输的场景例如使用5V USB充电时系统直接用5V。注意在此模式下DPPM功能是禁用的。实操心得在大多数可穿戴设计中我推荐使用固定电压模式。比如将PMID设为3.8V或4.0V然后后级再用一个高效率的Buck降压器为内核供电。这样既能保证系统电压的稳定性又能通过后级DCDC实现更高的整体效率。电池跟踪模式更适合对功耗极其敏感、且系统能工作在宽电压范围的应用。2.3 可配置的LDO/负载开关灵活的辅助电源BQ21061还集成了一个最大输出150mA的LDO或者可以配置为一个负载开关。这个功能非常实用经常被用来给一些常电需求的低功耗外设供电比如实时时钟RTC、传感器、或作为I2C电平转换器的上拉电源VIO。LDO模式输出可编程电压VLDO范围0.6V至3.7V步进100mV。它需要一个比输出电压高至少500mV的输入VINLS。这个输入可以来自PMID也可以来自其他电源轨。其静态电流极低典型值0.9µA非常适合“永远在线”的电路。负载开关模式此时它只是一个简单的开关将VINLS直接连接到LS/LDO引脚导通电阻典型值250-450mΩ。可以用来控制后级某个模块的电源通断实现更精细的功耗管理。引脚连接注意VIO引脚是I2C、CE、LP等数字输入引脚的电平参考。如果系统中有独立的IO电源比如1.8V就接到VIO如果没有直接短接到VDD内部1.8V LDO输出。务必确保VIO电压不超过3.6V且与主机MCU的IO电平兼容。2.4 超低功耗管理与运输模式对于可穿戴设备关机或待机状态下的功耗直接决定了设备在货架上或抽屉里能放多久。BQ21061在这方面做得非常出色。低功耗模式Low-Power Mode当没有输入电源VIN无效且LP引脚被拉低时器件进入低功耗模式。此时除了维持基本监控和I2C地址响应需要先将LP拉高的电路外其他功能关闭电池静态电流可低至0.46µALDO关闭时。运输模式Ship Mode这是功耗的“终极模式”。通过I2C命令或长按MR按钮具体后面讲进入。在此模式下电池与PMID之间的开关BATFET完全断开电池的放电电流典型值只有10nA。这意味着一个100mAh的电池自放电时间常数将以年为单位计算非常适合产品出厂后的长期存储。唤醒运输模式需要重新连接有效的VIN或者通过MR按钮操作。设计要点为了实现最低的运输模式电流务必确保PMID、VDD、LS/LDO等输出引脚没有连接到任何会漏电的负载。最好在布局上预留可以将这些网络与后续电路断开的0欧姆电阻或跳线以便测试真正的运输模式电流。3. 硬件设计要点与外围电路配置理解了芯片的功能我们来看看如何把它“搭建”起来。BQ21061的外围电路相对简洁但每个元件的选型和布局都影响着最终性能。3.1 关键外围元件选型与计算根据数据手册的典型应用图和推荐我们逐一分析输入电容CIN连接在IN和GND之间推荐至少1µF陶瓷电容。它的作用是滤除输入电源线上的高频噪声并为芯片的瞬间电流需求提供缓冲。建议使用X5R或X7R材质、额定电压10V或16V的陶瓷电容并尽量靠近芯片的IN和GND引脚放置。PMID输出电容CPMID这是最重要的电容之一关系到系统电源的稳定性。数据手册推荐22µF。这个电容需要提供足够的储能以应对系统负载的瞬态变化比如射频模块发射时的电流尖峰。必须使用低ESR的陶瓷电容。由于陶瓷电容的容值会随直流偏压下降例如一个标称22µF、6.3V的电容在5V偏压下实际容值可能只有10-15µF。因此我通常会并联两个22µF电容或者选择一个额定电压更高如10V的22µF电容以确保在PMID电压下仍有足够的有效容值。同样必须紧靠芯片的PMID和GND引脚。电池端电容CBAT连接在BAT和GND之间推荐至少1µF。它主要用于稳定电池端的电压滤除充电电流纹波。通常一个1µF-10µF的陶瓷电容即可。LDO输出电容CLDO连接在LS/LDO和GND之间推荐2.2µF。用于保证LDO环路的稳定性。同样需注意直流偏压效应选用合适的规格。VDD电容CVDD连接在VDD和GND之间推荐2.2µF。这是内部数字LDO的输出为芯片内部逻辑供电必须保证稳定。VINLS输入电容如果使用LDO功能需要在VINLS引脚接至少1µF的输入电容。I2C上拉电阻SDA和SCL线需要上拉到VIO电源。典型值为10kΩ。如果总线速度较高接近400kHz或布线较长、负载电容大可以适当减小阻值如4.7kΩ以改善边沿速度但会增加功耗。TS引脚电路温度监测这是实现JEITA充电温度保护的关键。典型接法是在电池包内部一个NTC热敏电阻常用100kΩ 25°C, B3435K与一个10kΩ电阻并联。这个并联网络的一端接BAT或一个独立的热敏电阻引脚另一端通过一个10kΩ的电阻接到TS引脚。同时TS引脚通过另一个10kΩ电阻接地。这样形成了一个分压网络芯片内部的80µA恒流源会流过这个网络TS引脚上的电压就反映了NTC的阻值从而对应电池温度。如果不使用温度监测必须在TS引脚接一个5kΩ电阻到地否则芯片会认为温度传感器开路而禁止充电。3.2 布局布线黄金法则对于这种集成度高、开关电流路径清晰的电源芯片布局布线几乎和原理图设计一样重要。功率回路最小化这是首要原则。IN-CIN-GND的输入回路以及BAT-CBAT-GND的电池回路还有PMID-CPMID-GND的输出回路这些路径上的寄生电感会产生电压尖峰和噪声。必须使用短而宽的走线电容紧贴芯片引脚。地平面至关重要需要一个完整、坚实的地平面GND Plane。所有去耦电容的接地端、芯片的GND引脚都应通过多个过孔直接连接到地平面。这为高频噪声提供了低阻抗的回流路径。热设计考虑BQ21061采用DSBGA封装散热主要通过底部的焊球到PCB。芯片底部的散热焊盘Thermal Pad必须通过过孔阵列连接到内部或底层的地平面以帮助散热。在可能的情况下NC1和NC2引脚也建议接地以辅助散热。在持续大电流充电如500mA且压差较大时芯片的温升需要评估。功耗P_loss ≈ (VIN - VBAT) * ICHARGE。例如VIN5V VBAT3.7V ICHARGE500mA 功耗约为0.65W。芯片的结到环境热阻RθJA在评估板上约为36.1°C/W但在实际紧凑的PCB上可能更高。温升ΔT ≈ P_loss * RθJA 可能达到20-30°C以上。因此在空间允许的情况下在芯片顶部和周围预留一些铜皮并添加过孔有助于散热。敏感信号隔离TS、MR、INT、PG等模拟或数字信号线应远离IN、PMID等大电流开关路径避免噪声耦合。3.3 按钮控制器MR与系统控制逻辑MRManual Reset引脚是一个多功能输入配合内部可编程定时器可以实现丰富的系统控制功能而无需主控MCU干预。唤醒运输模式长按MR按钮超过tWAKE1典型125ms可以将器件从运输模式唤醒。系统硬件复位长按MR按钮超过tHW_RESET典型8s可以触发一个硬件复位信号。这个信号可以配置为直接拉低PMID使系统掉电复位或者通过PG引脚输出一个复位脉冲给主控MCU。这在系统死机时非常有用。复位警告在长按达到tHW_RESET之前例如提前1s由tRESET_WARN设定INT引脚会输出一个中断脉冲通知主机“用户已长按按钮即将复位”。主机可以借此机会保存数据或提示用户。自动唤醒在硬件复位后可以配置一个tRESTART延时典型1.2s然后自动重新开启PMID实现系统的循环上电。配置技巧MR引脚内部有一个125kΩ的上拉电阻到BAT。通常我们只需要接一个按钮到地。通过I2C配置MR_WAKE1_TIMER、MR_RESET_WARN、MR_HW_RESET等寄存器可以灵活定义短按、长按、超长按所对应的不同功能实现单按键的开关机、复位、菜单唤醒等复杂逻辑极大简化了前端设计。4. I2C寄存器配置实战指南BQ21061的强大可编程性都通过I2C接口实现。其I2C地址为0x6B7位地址。我们需要通过读写一系列寄存器来配置和监控它。下面我挑几个最关键的寄存器组结合典型场景进行说明。4.1 充电参数配置寄存器Charger Control这是配置充电行为的核心。主要涉及以下寄存器具体位域请参考数据手册第7.5节Charger_Control_1设置快充电流ICHARGE、预充电流IPRECHARGE、充电使能CHARGE_DISABLE等。Charger_Control_2设置充电电压VBATREG、预充到快充的转换阈值VLOWV、电池欠压锁定阈值VBATUVLO。Charger_Control_3设置终止电流比例ITERM、安全定时器SAFETY_TIMER、是否启用2倍定时器2X_TIMER等。配置示例为一个典型3.8V/200mAh的锂聚合物电池充电假设我们使用5V USB输入希望以0.5C100mA电流充电截止电压4.2V终止电流为快充电流的10%10mA。计算并设置快充电流ICHARGE寄存器是7位值。最大500mA对应1270x7F。所以100mA对应的值 (100 / 500) * 127 ≈ 25.4取整为250x19。写入Charger_Control_1。设置充电电压VBATREG寄存器是8位值。范围3.6V-4.6V步进10mV。4.2V对应的值 (4200mV - 3600mV) / 10mV 60 (0x3C)。写入Charger_Control_2。设置终止电流ITERM是5位值表示终止电流占ICHARGE的百分比。10%对应的值查表或计算范围1%-31%10%大约对应某个编码例如数据手册会提供映射表可能需要查一下假设10%对应编码0x0A。写入Charger_Control_3。设置PMID电压为了确保电池能充到4.2VPMID电压至少需要4.4V4.2V200mV。通过System_Control寄存器设置PMID_REG_CTRL为一个固定值比如4.5V对应某个编码。使能充电确保CE引脚为低然后向Charger_Control_1写入将CHARGE_DISABLE位清零。4.2 系统与LDO控制寄存器System_Control配置PMID稳压模式固定电压、电池跟踪、直通和电压值。LDO_Control配置LDO输出电压VLDO或使能负载开关模式。配置示例启用一个1.8V的LDO为传感器供电确保VINLS引脚有高于2.3V1.8V0.5V的输入电压通常直接连接到PMID。计算VLDO1.8V对应值 (1800mV - 600mV) / 100mV 12 (0x0C)。向LDO_Control寄存器写入相应值并设置LDO_ENABLE位为1。4.3 状态与标志位读取及时读取状态寄存器对于实现健壮的电源管理逻辑至关重要。主要状态寄存器包括Charger_Status_1Charger_Status_2包含充电状态CHRG_STAT 如消流、快充、CV、终止、故障等、电源状态PWR_STAT 如VIN有效、电池供电等、以及各种故障标志BAT_FAULT,CHRG_FAULT等。Flag1,Flag2,Flag3这些是锁存Latched标志位记录了各种事件的发生如充电完成、温度警报、输入过压、安全定时器超时等。这些标志位需要主机读取后才能清零非常适合用于中断服务程序ISR中查询事件来源。编程策略建议将INT引脚连接到MCU的中断输入。当任何故障或状态变化发生时BQ21061会发出一个128µs的低脉冲。MCU收到中断后读取Charger_Status和Flag寄存器即可判断具体原因并采取相应措施如报警、降低电流、记录日志等。5. 调试常见问题与故障排查实录即使按照数据手册设计在实际调试中也可能遇到各种问题。下面是我在多个项目中总结的一些典型问题和解决方法。5.1 充电无法启动或电流异常现象连接充电器后电池电压不上升或者充电电流远小于设定值。排查步骤检查基本条件用万用表测量VIN引脚电压是否在3.4V-5.5V范围内且高于VBAT80mV睡眠退出阈值CE引脚是否为低电平TS引脚电压是否正常约0.5V-0.8V对应室温开路或短路会导致充电禁用读取状态寄存器通过I2C读取Charger_Status_1。查看CHRG_STAT位确认充电器处于什么状态消流、快充、CV、暂停、故障。查看PWR_STAT确认输入电源是否有效。检查PMID电压测量PMID引脚电压。如果PMID电压低于设定值可能是输入电流限制IILIM或VINDPM被触发导致输入电压被拉低。尝试增大输入电源的电流能力或调整IILIM/VINDPM阈值。检查温度用手触摸芯片是否异常发烫如果压差大、电流大芯片可能因过热进入热调节Thermal Regulation自动降低充电电流。查看Flag寄存器中的THERMAL_REGULATION标志。改善散热或降低充电电流。检查DPPM如果系统负载很大可能导致DPPM激活削减充电电流。测量系统总电流或暂时断开系统负载看充电是否恢复正常。5.2 系统在电池供电时功耗过高现象设备关机或待机后电池消耗过快。排查步骤确认工作模式确保在需要低功耗时通过I2C或LP引脚正确进入了低功耗模式Low-Power Mode。测量IBAT电流。排查外围漏电即使BQ21061自身功耗很低如果PMID、VDD或LDO输出连接的后续电路存在漏电也会导致整体功耗升高。一个有效的办法是在PMID输出串联一个0欧姆电阻或磁珠在测试低功耗时将其移除单独测量BQ21061及必要外围如TS电路的电流这能快速定位问题是来自PMIC本身还是后级电路。检查I2C总线确保在低功耗模式下主控MCU已将I2C引脚设置为高阻态或输出高电平。如果I2C总线被意外拉低可能会阻止BQ21061进入最深睡眠状态。运输模式电流测试运输模式电流时务必确保通过I2C命令或MR按钮正确进入了运输模式BATFET断开并且PMID上确实没有负载。5.3 I2C通信失败现象MCU无法读写BQ21061的寄存器。排查步骤检查电源和地址确认VIO电压正确1.2V-3.6V且与MCU电平匹配。确认I2C地址为0x6B写地址0xD6 读地址0xD7。检查上拉电阻和波形用示波器观察SDA和SCL波形。看起始信号、数据、ACK信号是否清晰上升沿是否缓慢上拉电阻过大或总线电容过大。确保总线没有被意外锁死。注意LP引脚当设备仅由电池供电VIN无效时必须将LP引脚拉高I2C通信才能进行。如果LP为低器件处于低功耗模式I2C接口是不响应的。这是一个非常常见的疏忽点。看门狗定时器BQ21061默认启用了50秒的I2C看门狗定时器。如果主机超过50秒没有与它通信所有充电参数寄存器会被重置为默认值。如果你的系统有长时间休眠要么在休眠前通过I2C禁用看门狗WATCHDOG_FAULT配置要么确保休眠时间不超过50秒或者在休眠期间定期“喂狗”。5.4 PMID输出电压不稳定或纹波大现象系统运行不稳定特别是射频或模拟电路部分噪声大。排查步骤首要怀疑输出电容使用示波器测量PMID上的纹波。如果纹波过大几乎可以肯定是CPMID电容的问题。检查电容的容值、ESR是否合适布局是否贴近芯片引脚。强烈建议用网络分析仪或LCR表在PCB上实际测量PMID引脚处的阻抗确保在负载瞬态频率范围内有足够低的阻抗。检查负载瞬态观察在系统负载突变如MCU启动射频发射时PMID的跌落情况。如果跌落超过允许范围如3.3V系统跌到3.0V需要增加CPMID的容值或使用多个电容并联。输入电源质量检查VIN输入是否有大的纹波或噪声。劣质的充电器或长导线可能引入干扰。最后一点经验分享在第一次焊接BQ21061这种CSP封装的芯片后不要急于上电进行复杂测试。先用万用表二极管档或电阻档仔细检查所有电源引脚VIN,BAT,PMID,VDD对地是否短路检查相邻引脚间有无桥接。确认无误后先不接电池和系统负载只连接输入电源测量VDD应为1.8V、PMID根据配置、LDO输出是否正常。这一步“静态上电检查”能排除大部分焊接和基础配置错误避免后续损坏芯片或电池。