由于STLink是在淘宝购买的非ST正版STLink,所以质量都不咋滴,总是出现使用一段时间后就开始出现写程序不稳定偶尔能写进,偶尔不能写进,并且仿真报错,但是可以确定的是STLInk硬件没有坏,因此很有可能是STLink的底层固件出错导致。
1.问题现象:
我手上有两个STLink就是这种情况,仿真开始后几秒钟就报错,排除是目标板问题。
下载程序偶尔提示连接 Mxx连接失败的问题。
2.解决办法:
我们找一个好的STLink,给出问题的这个STLInk烧写底层固件,亲测相当有效,方法如下:
2.1 安装 《ST Visual Programmer》
2.2 准备《ST-Link固件V2.J16.S4》,版本任意,下载连接:
2.3 用能下载程序的STLink使用SWD接口连接出问题的这个STLInk。
2.4 选择下载方式及目标芯片型号:
2.5 先关闭目标芯片的读保护位
2.6 下载准备好的固件:
2.7 读保护位想开就开,不开就不用管它:
2.8 然后将写好固件的STLink连接到电脑上,记得取下给这个STLInk写固件的STLink。
2.9 测试STLink是否能够连接Keil5,用Keil5自带的STLink升级软件。
然后等待升级成功,就可以了,我这两个STLink就是这样,互相写了底层固件,弄好了的。
开始还老是觉得是硬件问题,后面拆开发现就那么几个元件,测了都是好的,所以就排除了硬件问题。在网上研究了下,重写个底层固件就OK了,如果直接用Keil的这个固件升级软件,刷了后不能解决。