建议买正经芯片的stlink 或者开源的dap link
淘宝上由很廉价的stlink ,就像这样
这些stlink基本都是用的网上流传的V2.J16.S4固件,然而此固件在keil5.25以上,stm官方的stmcube上都无法使用,本人很不幸买到了一个无法使用官方程序升级的。最后参考这位大神的文章 暴力升级你的 ST-Link 及 STM32CubeIDE_Armink Studio-CSDN博客
原理 利用修改过的升级软件,规避官方升级软件检测stlink芯片这一步,注意这种方法有可能试山寨stlink变砖
步骤
方案 3 如何使用(暂不推荐)
使用前请先去项目地址下载对应文件:https://github.com/armink/HackSTLinkUpgradeSTEP1:安装 Java 运行环境
如果电脑上没有 Java 运行环境,可以看这里:https://jingyan.baidu.com/article/4e5b3e1909043f91911e2464.htmlSTEP2 :双击打开 STLinkUpgrade/STLinkUpgradeHacked.jar
STEP3: 进入升级模式
STEP4:开始升级
点击 Upgrade 即可。STEP5:确认升级成功
升级后复位下,打开 Keil MDK 看一下,如果能够正常的找到 ST-Link 并连接芯片,恭喜你,升级成功了。如果提示:ST-Link in DFU mode. Restart it or upgrade it. 如下图所示
很遗憾,本次升级失败了,不过不要害怕,下面还有救砖教程,保证 ST-Link 还能被还原。
还原后,想继续折腾的也可以重新升级试试,没准这次就成功了。实在不行,那也就只能更换主控了,祝大家好运。
救砖指南
SETP1:打开 recovery 文件夹下的 ST-LinkUpgrade_V2.J27.M15.exe
这是一个旧版本的 ST-Link 升级器,可以将我们的固件还原。STEP2:执行升级
点击 Device Connect 后,再点击 Yes 即可
————————————————
版权声明:本文为CSDN博主「armink_ztl」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/arminkztl/article/details/98382536
实测可以从V2.J16.S4上升级到V2.J33.S7,在stmcubeprogrammer2.7上使用正常,但是依旧无法使用官方程序升级到J37