极客秀
搜索

STM32官方开发板遇到STlink无法使用和供电问题解决及探究,原因可能是一个滤波器?

事情的起因是这样子的,今天晚上想试一下前几日领到的STM32H7S开发板,但是遇到了一件非常奇怪的事情。

首先,这三块开发板中,分别是STM32H7S3,STM32WBA55,STM32U0C3只有右边的板子可以插上我的数据线使用并连接到STlink,这里提前剧透一下,是数据线的问题。但是这里由于有板子能识别到STlink那么开始认为通信就是没有问题的,于是我第一个排除的就是正确答案:
**_ 数据线异常 _ ** 。

而异常情况就是这样子,STlink无法识别,5V电压没有,也不能正常工作。
因此就开始排查问题,首先确认的是有没有地方虚焊什么的,虽然几率很小,但是也不是没有可能。于是用万用表一个点一个点去查,由于一开始没有找到原理图,因此开始还浪费了一些时间。
之后分析一下原理图,分析一下供电系统是如何运作的。

首先TypeC中引入了5V:VBUS_STLK,我们通常的习惯是将这部分电路直接接入LDO做降压,但是仔细看下去,ST对于电源的处理非常谨慎的加了
防浪涌保护

这里用的是TI的防浪涌芯片,它的EN引脚由STlink主控芯片来控制,这是导致 电路的5V 无法提供的直接原因!
通过飞线,将EN引脚拉高,发现5V成功的供上去了,那么基本原因就可以锁定到STlink上了。

结合STlink控制的LED并没有亮,因此判断是STlink出现了问题,但是无法确定是否是因为出现的问题。这里我还是没有怀疑我的数据线,因为我换了一根数据线虽然是同一批的。
虽然不了解STLink的内部工作原理,不过大概率因为STlink和我的这根数据线之间出现了问题,但是由于这根数据线在U0那块开发板上又可以用,所以就把我误导了。

不过,后来在STLINK的指南中找到了关于COM指示灯是可以提供错误信息的,红色常量,橙色闪烁的情况就是USB检测失败。

当然,第二个灯也是可以反馈错误信息的,不过我第二个灯没亮,主要是STlink没工作然后电源有问题。
那么,问题来了,为什么U0开发板可以正常使用和烧录呢?仔细排查原因发现,NEUCLO-U0上的STlink是V2版本,而NEUCLO-H7S上是STlink的V3版本。

可以看到,STlinkV2的TypeC是直接连接到主控芯片并且可以正常使用。

STlinkV3中不仅仅将主控芯片更换为了STM32F7,更是添加了一块 共模滤波器在通信线上。
因此问题的罪魁祸首要么是STM32F7这块主控芯片的问题,要么是那个共模滤波器。而主控芯片的问题可能性个人认为不高,因此个人猜测还是前面的共模滤波器使得我的数据线和主控之间通信出现了问题(个人猜测或者试一下把滤波器短接能不能解决问题,但是就不浪费资源了)。
不过解决问题的方法也很简单, ** 换一根靠谱的数据线 ** 。
PS:最抽象的是,我这边的数据线是一套的,按理来说用充电器是能用的,但是由于这批数据线都不能用,导致我开始都还以为是板子坏了。



当然这次发现问题和解决问题的过程还是收获良多的,也看到了ST在他们的开发板中处理的一些细节地方,从中也涨了很多见识~

1.转载请保留原文链接谢谢!
2.本站所有资源文章出自互联网收集整理,本站不参与制作,如果侵犯了您的合法权益,请联系本站我们会及时删除。
3.本站发布资源来源于互联网,可能存在水印或者引流等信息,请用户擦亮眼睛自行鉴别,做一个有主见和判断力的用户。
4.本站资源仅供研究、学习交流之用,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担。
5.联系方式(#替换成@):pm#vimge.com

  相关内容