2026/9/24 4:29:54

DIY锂电池保护板全流程:基于中颖SH367309从原理图到代码实测

DIY锂电池保护板全流程:基于中颖SH367309从原理图到代码实测 年初帮朋友做了一个48V锂电池组的保护板电芯是全新的力神大单体pack工艺和数据都挺顺利结果卡在了保护板上。朋友原来图便宜买了一块不知名硬件保护板用了不到两个月过放保护没动作一串电芯直接饿到1.8V拆开一看里面连温度检测都没有MOS管和采样电阻也明显缩水。正是这次返工让我下定决心用中颖SH367309从头到尾自己走一遍完整流程原理图自己画PCB自己layout代码自己编译烧录。这篇把从原理图到代码烧录的全过程、踩过的坑和排查思路整理出来希望对打算自己做锂电池保护板的朋友有帮助。DIY锂电池保护板最忌讳的就是把保护板当成“黑盒子”买来插上就完事。真正出问题的时候你连从哪里查起都不知道。SH367309这类的方案之所以值得折腾是因为它把电压采样、温度采样、充放电保护逻辑都做在了前端芯片里同时留了通信接口给MCU做上层控制。你既能掌握保护阈值怎么设又能实时看到每一串电芯的电压这才是做电池管理系统该有的状态。1. 选型决策为什么是中颖SH367309而不是BQ系列或纯硬件保护板1.1 SH367309的定位AFE加保护逻辑再加MCU协作的架构SH367309属于锂电池保护前端芯片行业内一般叫AFEAnalog Front End模拟前端。它不是那种单节保护IC也不是一颗把所有事情都包圆的SoC。它内部集成了多串电芯的电压采集通道、电流采集通道、温度采集通道以及比较完整的硬件保护逻辑同时留了I2C这样的通信接口让外部MCU可以读写寄存器、配置保护参数、读取实时数据。我第一次接触这个架构的时候最不适应的就是“原来保护逻辑不一定要MCU参与”。很多DIY玩家习惯把MCU当成万能控制器觉得所有保护都应该写在代码里。实际上SH367309这类AFE芯片内部有一套独立的硬件保护电路即使MCU死机或者代码跑飞只要电压超过寄存器里配置的阈值芯片自己就会拉断充放电MOS。这种“硬件兜底、软件增强”的思路才是BMS该有的设计安全等级完全不同。用生活化的方式来理解AFE就像大楼里的消防喷洒系统靠温感和压力开关自动工作不需要物业的电脑主机来发指令MCU则像物业的监控中心负责看数据、做记录、发警报。两者各司其职又不能互相依赖过头。1.2 常见替代方案对比从DW01到BQ76940做选型的时候我把市面上几种常见方案放在一起比过对比维度包括保护参数可配置性、均衡能力、通信接口、开发门槛、单板成本和供货稳定性。方案保护参数配置均衡通信接口开发门槛单板成本供应链情况纯硬件保护ICDW01/BM3451等固定或电阻配置基本无无极低最低稳定但功能简陋SH367309 MCU寄存器可配可做被动均衡I2C中等中低国产供货较稳资料相对开放TI BQ769x0 MCU寄存器可配可做被动均衡I2C/SPI中高较高采购周期和价格波动是个问题纯硬件保护IC的局限性很明显保护阈值出厂就定死了不同电芯的规格书要求不同你想微调过充保护电压或者过放恢复电压基本没戏。而且没有通信接口你不知道每一串当前到底是多少伏只能等保护动作了才知道出问题。TI的BQ系列性能确实强ADS、库仑计、各种高级功能都有但价格高芯片不好买烧录工具和软件授权又是一笔成本对DIY玩家和中小批量项目来说不太友好。SH367309的方案正好卡在中间。价格和供货比TI亲民功能比纯硬件IC强出一大截寄存器配置灵活原厂SDK里也能找到不少参考例程。对于想做一两块样板或者小批量给电动自行车、储能、电动工具配套的玩家来说这个平衡点很关键。1.3 选型时容易被忽略的隐性成本芯片本身便宜不代表整套方案便宜。我第一次做的时候只算了芯片价格忽略了几个隐藏开销这里给后来者提个醒。第一需要一个配套的MCU。SH367309是前端芯片不是主控你至少得有一颗带I2C接口的单片机来读写它的寄存器。中颖自己的8位MCU可以配STM32也能配关键是你会哪颗用哪颗没必要为了“配套”强行换平台。第二烧录器是必需的。虽然有些型号支持ISP串口下载但最稳妥的还是官方烧录器加调试器。这笔钱省不了买兼容的也能用但驱动和固件版本兼容性要提前确认好。第三SH367309的寄存器手册和SDK需要通过正规渠道获取。找原厂或者代理申请一般会给你完整资料包包括数据手册、参考原理图、PCB封装、例程代码。别去网上找那种来路不明的旧版本芯片版本和SDK版本对不上会浪费大量时间。第四也是最容易被低估的——你自己得有一点单片机开发和PCB设计的基础。这不是买散件组装是一套完整的硬件开发流程。如果你只会用现成的模块建议先补一补基础再上手。2. 原理图设计外围网络的计算逻辑与易错点2.1 芯片供电与采样网络RC滤波和分压电阻的精度账原理图设计是整个项目的龙头这里出问题后面全部白干。我这次的样板是13串48V电池组每个环节都以这个为例来展开。SH367309这类前端芯片的供电一般不是直接用电池总电压而是经过稳压电路降到芯片工作电压范围内。上电瞬间的冲击电流和电池组总电压的波动都要考虑否则芯片容易被“电”坏。我第一版原理图用的是简单线性稳压结果电池组刚接上稳压器输入端的电容耐压不够直接鼓包后来换成耐压足够的高压差稳压电路才算稳住。采样网络是原理图里的重点。每一串电芯的电压都要经过分压电阻网络才能进入ADC采样范围。分压电阻的精度直接影响最终的电压读数——1%精度的电阻和0.1%精度的电阻价格差不少但误差表现完全不在一个级别。以一节满电4.2V的电芯为例如果分压网络用的是1%电阻最坏情况下采样误差可能到几十毫伏对一致性要求高的电池组来说这个偏差会让均衡逻辑误判也会让保护阈值实际动作点偏离设定值很多。具体计算起来并不复杂如果芯片ADC的满量程是3.6V而单串电芯电压是4.2V分压比就是4.2比3.6也就是1.167倍。你用两颗电阻搭这个比例1%精度的两颗电阻串联误差是最坏叠加的。算下来你读到的电压可能比实际高或者低几十毫伏这还只是一串如果每串都偏整体一致性数据就乱了。所以采样分压电阻我建议用0.1%甚至更高精度的薄膜电阻成本多不了几块钱但调试时省下的时间远超这个价。RC滤波电路也不能忽略。采样引脚前面加RC滤波是必要的用来滤掉开关电源或者MOS开关带来的高频噪声但R和C的取值不能拍脑袋。电容太大会让电压变化时间常数变大ADC读到的是“滞后”的电压R太大又会产生额外的压降。按照官方手册的推荐值来最好再根据实际波形微调。我第一次选了比较大的滤波电容结果放电瞬间电压读数“粘”住了保护动作延后了上百毫秒这种偏差在过放保护场景下是很危险的。2.2 充放电MOS驱动为什么是N-MOS对管加栅极泄放电阻锂电池保护板的充放电回路里MOS管扮演的是开关角色。这里用的一定是“背靠背”连接的两个N-MOS管两个管子的源极接在一起一个管控制充电回路一个管控制放电回路。为什么要背靠背因为单个MOS管自带一个体二极管如果只用一个管子电流会从体二极管漏过去相当于开关失效一半。两个管子对头接体二极管的导通方向互相抵消充电和放电两个方向都能被真正切断。用一道双向闸门来理解就很容易了一道门管“进”的方向一道门管“出”的方向平时两道门都关上电芯既充不进去也放不出来。护板唤醒后根据充放电状态分别打开对应的门。MOS管驱动电路里有几个细节很容易抄错。栅极串联电阻用来抑制开关瞬间的振铃一般取10欧到100欧具体值要根据PCB走线电感来调不是越大越好。栅源之间必须并联一个几十千欧的泄放电阻作用是保证上电瞬间MOS管栅极是确定的低电平处于关断状态。这个泄放电阻相当于是保险丝如果省了上电瞬间MOS管可能因为栅极悬空而误导通电池正负极直接短路能量瞬间释放出来板子和电芯都完蛋。我踩过的一个坑是MOS管的型号选小了。当时算的是持续放电电流30A选的MOS管标称电流也够但没仔细看SOA安全工作区曲线。实际测试时瞬间过流达到标称的两倍以上管子直接进了放大区热量来不及散掉就烧穿了。后来换成更大电流余量的管子并且在软件里把过流保护的延时调短才算稳定下来。2.3 被动均衡与NTC测温功耗算不明白会出大事均衡电路是BMS的核心功能之一SH367309方案做的是被动均衡——把高电压那串电芯的电能通过电阻放掉等电压降下来从而让整组电芯电压趋于一致。这个逻辑很简单但均衡电阻的功耗计算必须严谨。以单节电芯4.2V为例如果用100欧姆的均衡电阻均衡电流就是4.2V除以100欧也就是42mA功率则是电流乘以电压约0.176W。普通0603封装的电阻额定功率只有0.1W直接超了用一段时间就会变色甚至开路。至少要用1206封装额定0.25W或者0805封装额定0.125W都偏紧——我建议直接上1206留够余量。如果是多路均衡同时开启整个均衡区域的发热量不可小觑PCB上要给这块铜皮留出散热面积不要让均衡电阻紧挨着采样电阻和芯片否则热量会让ADC读数漂移。NTC测温电路的设计也不难但容易在细节上出错。常见的接法是10k NTC配合10k上拉电阻从分压点读取电压来换算温度。注意NTC的B值和25℃阻值必须和软件里的查表数据对应差一个B值温度就能偏好几度。另一个坑是NTC探头的位置一定要贴近电芯本体或极耳走线要远离大电流回路否则测到的是环境温度而非电芯温度过温保护就没有意义了。2.4 参考电路不是万能TVS方向、电容耐压、0欧电阻的作用原厂给的参考原理图是很好的起点但“照抄”也会抄出问题。我见过不少童鞋把参考图里的TVS管方向画反了——原理图符号库里某个器件的引脚定义和实际封装不一致或者纯粹是封装旋转角度搞错上电瞬间TVS直接反向导通钳位轻则保护板不工作重则烧毁电源。画完原理图后一定要逐个核对TVS、二极管、电解电容的方向这种低级错误在样板阶段极难排查。电容耐压是另一个高频坑点。采样引脚上的滤波电容如果只看到参考图上标了“0.1uF”就顺手选了6.3V耐压的瓷片电容真正接到几十伏的电池组上上电瞬间电容就击穿漏电了。我当时遇到的现象是“电压读取永远不对而且数值随负载变化乱跳”排查了半天才发现是采样端的滤波电容击穿。所有电容的耐压至少按实际工作电压的两倍来选高压侧的分压电阻节点更要仔细检查。还有那些看起来不起眼的0欧电阻和跳线千万别随便删。参考图中的0欧电阻往往承担了两个作用一是作为模拟地和功率地的单点连接点二是给调试时断开采样线用的。你把它删了地平面回流路径变了ADC参考地不干净各种奇怪问题都会冒出来。3. PCB Layout采样线、地线、热设计这三件事决定成败3.1 开尔文接法大电流回路和电压采样线必须分家原理图没问题PCB Layout上翻车是DIY玩家最常见的情况。这块板子我前后打样了两版第一版就是死在采样线上。第一版我把采样线直接连到了功率走线的输出端觉得“反正都是同一个网络连哪都一样”。结果负载一切入MCU读到的电压值跳动超过100mV过流保护阈值完全不稳定好几次误触发。原因在于功率电流流经采样线那一段铜皮时产生了压降把功率路径上的噪声和压降一起送进了ADC采样引脚。解决办法就是开尔文接法Kelvin Sensing。采样线必须从采样电阻的两端单独引出而且要从电阻焊盘的内侧引出尽量避开大电流路径。采样线本身不需要粗细线反而好这样可以减少和功率线之间的寄生耦合。这样设计之后功率电流通过铜皮产生的压降只会影响功率路径本身不会叠加到采样信号里。用测体重的例子来说你站上体重秤如果脚下还踩着电线杆上的拉线身体的重量会顺着拉线传走一部分读数自然不准。开尔文接法就是让信号回路独立不在功率回路上搭便车。另一个注意点是采样线尽量短而且要远离MOS的驱动信号线。MOS开关瞬间的dv/dt很高采样线如果和驱动线并行走线会耦合出大量噪声导致ADC读数漂移。3.2 模拟地与功率地的单点连接地线设计是决定信号完整性的关键。锂电池保护板上同时存在两种“地”一种是承载几十安培电流的功率地另一种是承接芯片、ADC、通信信号的模拟地。如果把这两种地用一整块铜皮直接铺在一起功率地上的高频噪声就会直接灌进模拟地ADC参考地电位不稳所有采样数据都会跟着漂。这次我采用的是模拟地和功率地单点连接连接点用一颗0欧电阻或者一个磁珠。磁珠可以吸收高频噪声但在大电流回流场景下要确认它的额定电流够不够不然磁珠本身会发热。0欧电阻更简单直接注意焊盘要留够。布局上还有一点要养成习惯MOS开关瞬间的di/dt很大所以功率地的回流路径面积要尽可能小输入和输出电容要紧贴着MOS管放置让高频回路形成一个紧凑的环。环面积越小对外辐射和拾取噪声的能力就越弱。3.3 高压间距与散热锂电串数越高越不能图省事电池串数越高系统电压越高PCB上的爬电间距要求也越严格。13串电池组满电电压大约是54.6V这个电压等级虽然不算超高但PCB表面在高湿度环境下很容易出现爬电现象。我自己的习惯是低压信号线上的间距至少留0.5mm功率节点之间的间距至少留到1mm以上如果空间允许就按更保守的2mm来做。对于更高串数的系统比如16串或者20串建议在电池正负极之间开槽槽缝能有效增加爬电距离这是低成本又有效的做法。散热设计上MOS管是最大的发热源。以Rds(on)为5毫欧的管子为例持续通过30A电流时功耗等于电流平方乘以导通电阻也就是30乘以30再乘以0.005等于4.5W。这个功耗放在TO-252封装上如果不加散热铜皮管子的结温会迅速上升。实际Layout的时候我给每个MOS管下面都铺了大面积铜皮并打了两排过孔阵列把热量导到背面的铜皮去。均衡电阻区域也同样处理但注意不要让均衡电阻的热量传回采样电阻和AFE芯片附近。3.4 打样回来的第一轮检查与上电前准备PCB打样回来后不要急着焊芯片。先用万用表做一轮低成本的检查测电源输入端的正负极是否短路测MOS管的栅源、漏源之间有没有击穿测关键IC供电引脚对地电阻是否正常。这些检查只需要几分钟能筛掉大部分“低级故障”。焊接顺序上我建议先焊电源部分再焊MCU和AFE最后焊MOS管。这样如果你用的稳压电路有设计问题上电检查时芯片还没焊上去不会连芯片一起带走。上电前把可调电源限流调到100mA左右再给板子供电。如果电流异常大立即断电排查而不是直接接上电池组。这个习惯我养成了很多年救过我好几块板子。直接接电池组的问题是电池内阻极低电流上来了就是几百安芯片瞬间就报废了。4. 代码编译与烧录从中颖IDE到ISP下载器最容易卡住的几个环节4.1 建工程选芯片不同版本SDK的差异必须看清楚原理图和板子都搞定后进入软件环节。我用中颖自带IDE配合Keil工程来做开发。这里第一个坑是芯片型号的选择。中颖的MCU型号后缀差别很大Flash和RAM容量不同选错了型号编译出来的代码可能烧进去根本不跑。第二个坑是SDK版本。不同版本的SDK里寄存器定义、示例代码的接口函数可能有差异尤其是SH367309这颗AFE的不同批次芯片寄存器的默认值和兼容性也可能不一样。拿到SDK后先看版本号再对着芯片丝印确认版本一定要确保SDK里的头文件和寄存器定义跟手册一致。如果拿旧SDK配新芯片I2C通信时序对不上读出来的数据全是错的。建工程的时候还有个细节初始化代码里对系统时钟的配置。中颖的8位MCU内部振荡器可能默认不是最终工作频率如果启动代码没有正确配置时钟I2C的波特率就是错的通信自然失败。先把一个简单的LED闪烁例程跑起来确认时钟正确再继续后面的AFE调试这是比较稳妥的顺序。4.2 ISP下载接线与供电要求ISP下载接口一般需要VDD、GND、CLK、DIO、RST这几根线。目标板的供电最好是独立的稳压电源不要依赖电池组供电尤其是电池组处于欠压状态时MCU供电不稳会导致下载握手失败。接线要短杜邦线不要超过15厘米越短越好。下载线周围如果有大电流导线特别是MOS的驱动信号线干扰会耦合进去导致烧录假死。我之前有一块板子烧录总失败换了短线和USB隔离口就正常了其实就是干扰问题。如果板上有大容量的电解电容下载时可能会拉低VDD导致握手失败。这时候要么把电容断开要么用一个缓启动的供电方式让电压先慢慢爬升再开始烧录。烧录器本身如果支持目标板供电要注意供电电流是否够不够的话还是外部供电更稳。4.3 烧录失败排查接触不良、供电不稳、读保护三座大山烧录失败是新手最容易崩溃的环节但绝大多数问题其实集中在三个方面。接触不良排名第一。杜邦线插接氧化、排针虚焊、转接板的触点脏了都会造成下载线时通时断。排查方法很简单把线重插一次或者换一根线经常就好了。我家里常备一把好的杜邦线省了很多时间。供电不稳排名第二。电池组电压低、稳压电路本身有问题、下载瞬间电流冲击导致电压跌落都会让ISP握手失败。用稳压电源直接给板子供电把电压调到芯片工作范围内再试一次基本能解决。读保护排名第三。如果你之前给芯片设置过读保护或者芯片是带代码保护状态出厂ISP工具会提示ID错误或者连接失败。这时候需要先执行全擦除或者解锁流程把保护位清掉。具体操作每个烧录工具不一样但逻辑是一致的先解锁再烧录。我遇到过一个特别隐蔽的问题选项字节里看门狗默认开启而我的主循环里没有喂狗烧录后代码运行几秒就复位一次表现是“闪烁的LED节奏不对”。排查了很久才发现是选项字节的问题关闭看门狗才正常。烧录前花五分钟检查选项字节配置能省下好几个小时的排查时间。4.4 不要从零造轮子基于原厂例程改保护参数很多DIY玩家喜欢从零开始写代码觉得这样才能锻炼能力。但在锂电池保护板这个场景下我强烈建议不要从零造轮子。SH367309的保护逻辑很成熟原厂SDK里提供了完整的初始化流程、I2C读写函数、状态读取函数你只需要在此基础上修改保护参数和增加自己的显示逻辑。核心思路是这样的AFE芯片本身的硬件保护逻辑不需要MCU干预。你只需要在初始化的时候把过充保护电压、过放保护电压、过流保护电流、各保护项的延时时间通过I2C寄存器写进去AFE就会自动执行。MCU的工作是定期读取各串电压、温度、状态位做显示和告警以及在特殊场景下发控制指令比如主动关断MOS、触发均衡等。把保护参数做成宏定义或者常量数组放在代码头部调试的时候改一个值编译烧录一次一目了然。寄存器位的定义一定要对着官方手册逐位确认尤其是“使能位”和“延时时间位”有的位是反逻辑设错了会把保护功能关闭那是非常危险的事。另一个容易忽视的点是均衡策略。是充电末端均衡还是任意时刻电压差超阈值就均衡这个逻辑写在MCU代码里可以按自己的需求来实现。我用的策略是充电状态下某一串电压高于平均电压一定值且总电压大于某个阈值时开启对应串的均衡MOS退出条件也设好防止反复开关。5. 上电实测与联调保护误触发、静态功耗异常、精度校准的实战记录5.1 先不进电池用可调电源模拟电芯验证通信整板焊接完成、代码烧录成功之后先不要急着接真实电池组。我强烈建议用多个可调电源串联来模拟电芯组比如做13串就先准备几组稳压源每组调到3.5V左右串联起来接到保护板的采样输入端。每组电源的线径电流能力要求不高因为只是用来验证采样和通信不是真实充放电。上电后第一件事是确认MCU和AFE之间的I2C通信能正常建立。可以通过读设备ID或者状态寄存器的默认值来判断。如果读出来全是0xFF或者0x00大概率是通信时序问题如果答非所问可能I2C地址不对或者芯片供电有问题。确认通信正常后逐串读取电压和电源上显示的电压对比看看偏差有多大。这一步能提前发现原理图或者layout上的电压采样问题比接真实电池后再排查安全得多。用可调电源模拟的优势是可以随时把某串电压调到异常值来验证过压保护是否动作。把某一路电源电压慢慢调高超过过充保护阈值后观察MOS是否关断状态寄存器是否置位MCU是否触发了告警逻辑。这个过程可以反复进行不会损耗电芯。5.2 保护功能逐项实测过充、过放、过流、短路的模拟方法保护功能是保护板的灵魂每一项都要实测确认。过充保护测试在模拟电芯模式下把某串电压抬到设定值以上观察充电MOS是否关断延时是否符合预期。过放保护测试则反过来把某串电压拉到保护阈值以下观察放电MOS是否关断。过流保护和短路保护的实测要更谨慎。用电子负载把放电电流拉高到过流保护点之上观察保护动作的时间和电流曲线。如果你有一台带录制功能的电子负载能看到瞬间的电流波形最好没有的话用万用表测电压变化也能判断。短路测试比较刺激操作前先把供电电流限制在一个安全值比如5A然后直接短路输出端观察MOS能不能在几十微秒内快速断开。不要直接用动力电池去短路测试那相当于把能量瞬间灌到MOS上管子扛不住就炸了。延时时间的验证需要示波器。把示波器的两个通道分别接在触发源和MOS栅极上观察从异常发生到MOS关断的延时和寄存器配置的值对比。没有示波器的话可以用MCU的GPIO做一个时间标记在读取到保护状态位时翻转一个引脚然后用逻辑分析仪或者万用表记录。精度差一些但至少能确认延时的大致范围。5.3 静态功耗异常排查LED、均衡电阻、电容漏电都是嫌疑犯电池供电场景下保护板自身的静态功耗非常重要尤其是长期待机应用。我遇到过一块板子休眠电流高达几十毫安这意味着一节100Ah的大电池放几个月也会被保护板自己耗光。第一轮排查锁定在均衡MOS上。均衡电阻一端是直接接在电池正极的如果均衡MOS没有完全关断漏电流会通过电阻到地虽然单路不大但十几串加一起就多了。用万用表量每个均衡MOS的栅源电压确认关断状态是否正常。第二轮排查指向LED指示灯。很多DIY设计喜欢加上充电、放电指示灯如果LED的限流电阻选太小或者LED的供电没做休眠切断那休眠电流就直接从LED走了。别小看这一个灯几毫安的泄漏对静态功耗来说已经很大了。第三轮是电容漏电。电解电容在长期工作后漏电流会变大一些质量不好的MLCC在高温高湿环境下也有漏电问题。排查的方法是断开外围模块只保留芯片和电容用微安表串在供电回路上从大到小逐个摘除电容看电流变化。虽然麻烦但最后总能找到元凶。5.4 电压采样精度校准别急着改代码先查电阻最后一步是校准。你会发现MCU读到的电压和万用表实测电压之间总是有偏差这是一个系统性误差来源包括分压电阻的精度偏差、芯片ADC的参考电压偏差等。校准之前先做一件事用万用表实际测量每一串的电压和板子上读到的值一一对比。如果所有串的偏差方向一致比如都偏低30mV那大概率是芯片ADC参考电压的偏差可以在软件里做一个加性校准。如果只有某几串偏差特别大那不是ADC的问题而是那一串的分压电阻精度差或者这一路的采样线layout有问题。这时候改代码没有意义换一颗高精度电阻反而立竿见影。软件校准的思路是增益校准加偏置校准。采集多个点位的实际电压和ADC读数用最小二乘拟合一条直线得到增益系数和偏置量写进Flash。出厂时做一两个点位的校准就够了想要更精确就多取几个点。校准完成后把Flash里的系数加进计算公式读出来的电压就和万用表基本一致了。温度校准的思路也类似。用标准温度计和NTC读数对比在几个典型温度点记录数据做查表修正。NTC的B值不准导致的偏差在低温端会特别明显如果你在低温环境下使用电池组这一步不要省。整个流程走下来从画原理图到最终校准通过大概花了两周时间其中一半时间花在Layout改版和烧录失败排查上。做完之后我的一个习惯改变了每次上电之前先在脑子里过一遍“先短接检查、再限流上电、最后接电池”这三步缺一步都不动手。还有一个心得是锂电池保护板这个东西功能越丰富越要关注失效模式——如果MCU死机了保护逻辑还work不work如果你选的方案里保护完全依赖MCU软件那这根安全弦就绷得太紧了。SH367309这种“硬件保护兜底、MCU做增强”的架构从安全角度来说是很值得推荐的。做完这套方案之后我自己留了一块板子当测试工装后面再做电池组的时候每一串的电压和温度心里都有底了。