十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

从BLDC吊扇驱动板识别STM8单片机型号:丝印、引脚与ST-Link确认方法

从BLDC吊扇驱动板识别STM8单片机型号:丝印、引脚与ST-Link确认方法 前几天帮朋友处理一台Atomberg吊扇这台风扇用的是BLDC无刷直流电机拆开驱动板外罩一眼就看到电源板旁边那颗20脚的单片机丝印已经被散热胶蹭得只剩一半但还是能认出“STM8”字样。我后来把整块驱动板拍了一圈照片量了板上关键点再用ST-Link接上SWIM接口确认具体型号是STM8S003F3P6。这种经历在维修第三方Atomberg风扇或拆解类似BLDC吊扇驱动板时很常见。这篇内容就是写给遇到同样情况的人拿到一块BLDC吊扇电机驱动PCB如何从外观、丝印、引脚、外围电路和编程器读取结果这几个维度一步步确认STM8单片机的具体型号同时搞清楚它在电机驱动板里到底扮演什么角色。1. 为什么Atomberg这类BLDC吊扇要用STM8——先搞清楚主控在整块板子里的位置1.1 BLDC吊扇驱动板的基本模块划分先简单过一遍BLDC吊扇驱动板的整体结构否则你只看芯片不看电路很容易认错。从交流输入端往后整块板子可以分成这么几大块交流输入和EMC滤波压敏电阻、共模电感、X电容这部分负责过压保护和电磁干扰抑制。整流滤波桥式整流后接母线电容把交流变成直流母线电压。吊扇功率不大母线电压一般在310V左右220V交流整流后。辅助电源一般用一颗非隔离的降压芯片或LDO把母线高压降到5V或3.3V给主控和栅极驱动供电。主控MCU风机控制的核心负责启动时序、转速计算、PWM生成、保护逻辑、遥控信号处理。栅极驱动和三相逆变桥由栅极驱动芯片和6颗MOS管组成把直流电变成三相交流电送给BLDC电机。位置检测和电流检测用反电动势过零检测或霍尔传感器配合采样电阻、运放/比较器把电机状态反馈给MCU。其中主控MCU这一块就是我们要识别的对象。电源板上最显眼的8脚、16脚、20脚芯片十有八九就是它。我习惯把主控看成整块驱动板的“大脑”栅极驱动和MOS管是“手脚”电源是“心脏”PCB走线是“神经和血管”。这个比喻虽然老套但对新手理解硬件构架确实好用。识别芯片之前先把这几个模块在板子上的物理位置找到后面分析会顺利很多。1.2 为什么是STM8而不是STM32很多刚接触电机驱动的朋友会问为什么不用STM32性能强很多啊。其实从产品设计角度看STM32在吊扇驱动板上有几个明显劣势。第一是成本STM32F103这样一颗Cortex-M3内核芯片价格比STM8S003高出好几倍吊扇这种利润已经很薄的消费电子产品一颗芯片省几毛钱都值得。第二是功耗STM8在低功耗模式下的电流可以做到微安级别对于需要待机的遥控风扇来说很有意义。第三是资源足够BLDC风扇控制用到的资源无非就是PWM定时器、ADC、比较器、UART/红外接收这几个外设STM8S003的8KB Flash、1KB RAM配合16MHz主频跑一个FOC或方波控制算法富余得很。第四是生态成熟ST的SWIM调试接口只要一根线就能下载和调试配合STVP或STM8CubeProgrammer开发门槛很低产线烧录也方便。当然市面上用STC、Holtek、松翰、中微等芯片的吊扇板也很常见但STM8在海外品牌和第三方替换板里出现频率非常高。Atomberg这类主打节能BLDC吊扇的品牌电机驱动板采用ST方案的案例不少。认出STM8之后下一步就是确认具体型号因为同一个系列里引脚和Flash容量差异很大直接决定你能不能替换、以及用什么方式读取。2. 识别STM8的3个关键信息丝印、封装、引脚特征2.1 从丝印和封装快速缩小范围识别芯片第一步永远是看丝印。STM8系列丝印一般会以“STM8”开头后面跟着系列字母和数字比如STM8S003F3P6、STM8L151K4T6。但实际问题往往比理想情况麻烦驱动板上的丝印可能被胶水覆盖、被磨掉、或者只露出开头几个字母。先看封装。STM8S系列常见封装如下TSSOP20STM8S003F3P6、STM8S103F3P6。SOP8STM8S001J3但很少用于电机驱动。QFN32STM8S105K4、STM8S207等高端一点的三相电机板会出现。TSSOP28/LQFP32STM8S105、STM8S207系列。吊扇驱动板由于空间有限、引脚需求不多TSSOP20最常见。如果你看到一颗20脚贴片芯片丝印有“STM8S003”或“S003”那基本可以锁定它。不过ST还有一种精简丝印的情况芯片顶面只印“S003F3P6”这类短码连“STM8”都不打完整需要结合封装和引脚定义反推。放大镜和斜射光很有用不要只靠肉眼。酒精棉签擦一下丝印区域很多被油污盖住的字能看清。另外建议第一时间拍照存档后面查资料、对比电路都用得上。2.2 借助万用表测量电源、复位、SWIM引脚来验证丝印不完整的时候万用表能帮你确认关键引脚。以STM8S003F3P6TSSOP20为例几个关键引脚VDD引脚7和VSS引脚2电源和地。正常板子上VDD对GND阻值一般在几百欧姆以上如果接近0说明板子上有短路先别上电。NRST引脚4复位脚通常有上拉电阻到VDD板上还会接一颗100nF左右的电容到GND。SWIM引脚1也叫SWIM单线调试引脚通常会通过一颗或两颗电阻、ESD保护器件连到调试接口排针或者测试点。怎么找到这些引脚对照数据手册的引脚图再用万用表蜂鸣档顺着PCB走线找。我的习惯是先在板上找VDD/VSS量一下稳压输出是否正常然后找NRST和SWIM这两个引脚往往对应着驱动板上预留的下载接口或测试点。如果驱动板上有三四个针的排针大概率就是SWIM、VDD、GND、NRST或者SWIM、GND、VDD的组合。调试接口不一定是排针有时候只是几个裸露的焊盘。看到焊盘上有规则小孔并且靠近主控芯片优先怀疑是下载接口。这个问题在维修第三方Atomberg风扇时特别常见原厂板子经常不做调试接口但第三方替换板为了返修方便会留出来。2.3 其他外围电路晶振、Boot、PWM输出STM8S003内部有HSI振荡器默认16MHz不需要外部晶振。所以一块“无晶振”设计的MCU板反而很常见不要因为在主控旁边没看到晶振就怀疑它不是单片机。判断一块芯片是不是STM8、能否正常工作还有一个方法测量它的PWM输出引脚有没有信号。BLDC驱动板的MCU必然要输出PWM到栅极驱动芯片要么是6路独立的PWM要么是利用栅极驱动芯片内部的换向逻辑输出3路PWM。具体到STM8S003它有几个带高级控制的定时器TIM1专门用于生成互补PWM和死区控制。用示波器或逻辑分析仪点一下驱动芯片的HIN/LIN输入脚如果能量到3.3V或5V电平、频率在15kHz到30kHz左右的方波说明主控在正常工作也间接证明这颗芯片和电机驱动的关系。3. PCB布局与原理图反向分析从驱动板走线反推主控型号3.1 驱动板PCB布局的普遍规律如果你手里只有裸板、没有原理图PCB布局就是最好的“天然原理图”。BLDC吊扇驱动板的布局有几个规律顺着规律看很快就能找到主控。大电流走线逆变桥MOS管和电机三相线走线明显比别人粗有的地方还会大面积铺铜或加锡条。主控通常不会直接串在这条大电流通路上而是待在整个功率区的“上游”通过细走线和驱动芯片相连。电源分区交流输入端、高压母线区、低压控制区在板子上通常有明显的物理隔离。低压控制区是MCU和辅助电源的所在地。接口和按键遥控接收头、按键、LED指示灯这类人机接口的走线最终都会回到主控。找到按键排线或遥控接收头顺着走线就能摸到主控引脚。看板子的时候不要只盯着芯片本身。板号、版次、生产日期这些丝印信息也建议记下来有时候能帮你找到同款板子的电路图或维修记录。第三方替换板一般不像原厂板那样藏着掖着板号写得比较清楚反而是很好的线索。3.2 电源拓扑与主控供电主控的工作电压决定了你查找的方向。STM8S003可以在2.95V到5.5V范围内工作所以板子上给它供电的LDO可能是3.3V也可能是5V。量一下LDO丝印和输出电压如果输出是3.3V那MCU大概率是3.3V逻辑如果是5V就要注意SWIM接口的电平匹配。驱动板上经常能看到类似ME6211、HT7550、AMS1117这类LDO。AMS1117出现在220V交流驱动的吊扇板上反而不太常见因为输入端高压不适合直接用这种LDO多数会先通过阻容降压或一颗高压降压芯片得到12V/15V再给栅极驱动芯片和LDO供电。另一个值得关注的引脚是VCAP和VDDA这类电容配置脚但STM8S003把模拟电源和数字电源已经处理得很简单外接电容不多。你只需要确认主控的供电来源正常就可以进入下一步。注意带电测量时一定要用隔离示波器或万用表220V整流后的母线电压是致命的不要为了量芯片电流去碰高压区。3.3 通过驱动电路和PWM通道数量判断主控IO需求三相BLDC电机驱动需要6路MOS管开关但MCU不一定直接输出6路PWM。有些方案用栅极驱动芯片如IR2101、IR2301、EG2134等MCU需要输出6路PWM有些集成度更高的方案会用一个带换向逻辑的驱动芯片MCU只需要给3路PWM和方向信号。观察驱动芯片的型号和引脚数量反推一下MCU至少需要多少个GPIO6路PWM 2路ADC采样 1路遥控输入 1路LED输出基本就是STM8S003这类20脚芯片的IO上限了。如果你在板上看到驱动芯片型号顺手记录下来。驱动芯片的VCC电压也决定了MCU输出电平需要多高。比如EG2134或IR2101这类高压半桥驱动MCU输出3.3V也能直接推但如果驱动芯片是5V逻辑就检查MCU供电是不是5V。这些信息凑在一起基本能画出主控的“需求画像”Flash大概多大、封装多少脚、有没有足够的PWM/ADC外设于是STM8系列里可选的型号也就剩一两个了。4. 实操连接ST-Link读取芯片ID确认STM8具体型号4.1 工具准备与接线方式如果说前面几节是“文审”这一步就是“铁证”。要用到的工具ST-Link/V2或V3仿真器支持SWIM接口。杜邦线或飞线。万用表。电脑上安装STM32CubeProgrammer或者STVPST Visual Programmer。新工具推荐STM32CubeProgrammer界面和CLI都支持SWIM连接。电路板直流供电如果主控是5V或3.3V供电可以直接给低压控制区单独供上3.3V或5V不用给整板通220V安全性高很多排查效率也高。接线方式ST-Link的SWIM接口引脚定义一般为SWIM、GND、VCC、RST不同版本顺序不同用杜邦线分别接到目标板的SWIM测试点、GND、主控VDD、NRST。接好以后先万用表确认VDD不短路、GND连通再上电连接。千万不要带电插拔SWIM接口对电平比较敏感带电插拔容易把主控或ST-Link搞坏。注意如果驱动板是装在整机里先断开电机线避免上电后电机突然转动造成事故。4.2 用STM32CubeProgrammer读取芯片信息打开STM32CubeProgrammer选择ST-LinkMode选SWIM频率选低一些比如100kHz或250kHz板上走线长或干扰大时更容易连上点击Connect。连接成功后软件会读取芯片的Device ID、Flash size、UID等信息。STM8S系列可以通过Flash大小快速区分8KB FlashSTM8S003F3P6、STM8S001J3等。16KB FlashSTM8S103F3P6。32KB FlashSTM8S105C6、STM8S105K4等。如果读出来是8KB封装是TSSOP20基本可以确定是STM8S003F3P6。需要注意的是STM8S003和STM8S103在硬件上挺接近经常互相代用但丝印、Flash大小和部分外设存在差异。以软件读到的Flash size和UID为准不要只看外观。读取的时候记得把界面截图记下选项字节区域的可读状态。如果你以后想对比不同批次的板子这些记录会很有价值。我一般会在笔记本上给每块板子建一个小档案板号、主控丝印、读出的Flash大小、UID后四位、有什么异常攒多了之后很多奇怪问题其实一眼就能看出规律。4.3 如果芯片开了读保护怎么办STM8的选项字节里有一个ROPRead-out Protection位出厂或量产时如果被设置成开启那么ST-Link只能读到Device ID和部分选项字节无法读出Flash内容。这个保护机制的主要目的就是防止固件被随意拷贝很多成熟品牌产品出厂时会默认开启。遇到这种情况首先要理解识别芯片型号并不需要读出Flash代码。软件里能看到芯片ID、Flash大小、UID就算完成目标了。如果你确实需要读取固件那必须确保你拥有相关权限和授权否则不要去尝试绕过ROP这既涉及合规问题实际也很难成功。维修场景下多数时候你只需要确认型号、供电、周边电路是否正常芯片内部代码反而是次要的。5. 常见问题与避坑指南5.1 驱动板不通电主控无供电现象直接用低压给主控供电没有任何反应或整板上电后主控供电压不正常。先量LDO的输入输出常见问题LDO输入端的降压电阻开路、二极管损坏、滤波电容短路。如果LDO输出为0但输入有电先换LDO再考虑主控。有时候主控VDD对地短路也会把LDO拉死这时不要盲目加大电压去“冲击”脉冲电压很可能烧坏更多器件还可能有安全隐患。经验量到VDD对GND阻值低于几十欧姆先不要怀疑主控坏了先把滤波电容、ESD保护管、甚至LDO输出端查一遍电容短路比主控短路的概率高得多。5.2 ST-Link连不上芯片连不上的原因非常多按出现频率排序SWIM引脚找错。不是所有靠近MCU的焊盘都是SWIM最好测量一下是否和MCU的SWIM引脚直通。供电不足。ST-Link接口的VCC只是参考电平不一定能输出足够电流给整板建议外接稳压源。接线过长。SWIM是单线通信对走线和杜邦线质量有一定要求线太长或接触不良都会导致连接失败。读保护开启。此时MCU会拒绝连接或只能读取一部分软件会提示错误。SWIM引脚被其他电路占用。有的板上SWIM会接一个下拉电阻或直接连接栅极驱动影响通信可以尝试在供电状态下断开负载。排查时先看软件提示再量接线通断不要反复去试连接。我遇到过好多次“死活连不上”最后发现是杜邦线母座接触不良这种低级的机械问题。换根线一次就通了。5.3 风扇转一下就停这种问题不完全在芯片识别范围但识别芯片时经常碰到电路是先能转一圈然后马上保护停机容易误导人以为主控坏了。原因通常是位置检测异常、母线电压采样异常、电流采样电阻虚焊。如果在驱动芯片输入侧量不到准确的PWM波形再回到主控供电、晶振如果外接和复位脚排查。排查这类问题时先把主控识别和整板故障分开。芯片型号确认无误、供电正常、SWIM能连接就说明主控本身大概率没坏问题往往在后面三级驱动链路或采样电路上。盲目换主控是最浪费时间的操作。5.4 维修中“识别芯片”之外的坑我踩过最大的坑是识别出型号后直接换了一颗同型号芯片上去结果风扇依旧不转。因为BLDC驱动板的固件不仅仅实现基本驱动还包含遥控协议、堵转保护、转速闭环参数这些都在原厂固件里。换芯片不是换硬件是连固件一起换。第三方板子如果没提供固件备份换芯基本等于白费。所以识别芯片的正确边界是帮你判断板子方案、理解电路、确认供电和外设状态而不是保证一个芯片就能修好整块板子。另外一个容易被忽略的坑拆焊和重焊过程中MOS管和栅极驱动芯片比MCU更容易损坏。有些“主控坏了”的误判其实是MOS管栅极被静电击穿或者驱动芯片虚焊。所以拿到驱动板尽量不要一上来就拆MCU先测量、先拍照、先记录确定根因再动手。最后分享一个我自己的操作习惯凡是拿到不熟悉的驱动板先花十分钟把板子正反面拍照、量一遍电源关键点、找到SWIM测试点再上电连接ST-Link。这套流程走完基本能把“识别主控型号”这件事从猜测变成确定后面不管是分析电路还是排查故障心里都有底。Atomberg这类第三方BLDC吊扇驱动板也是一样先识芯片再读电路最后动手顺序对了问题就好解决。
返回列表