自制ST-Link V2.1教程(SWD调试+虚拟串口+虚拟U盘)

一. 关于ST-LINK

ST-LINK是ST公司开发的一款专门用于STM8STM32单片机调试的硬件设备,截至到现在官方已经推出三代产品:V1V2V3

ST-LINK V1 是比较老的版本,官网上显示已经停产。目前市面上很少看见有V1版,基本被V2版取代了。

ST-LINK V2 是目前比较主流的版本,第一款V2产品诞生于2011年,相比于V1有着更高的通信速率。V2 包含两个版本,分别为:ST-LINK V2 与 ST-LINK V2-1。

  • ST-LINK V2 : 支持STM32和STM8调试,不带虚拟串口,淘宝大多数卖的都是这种。
  • ST-LINK V2-1 : 仅支持STM32调试,带虚拟串口和虚拟U盘下载,目前ST官方的Nucleo系列评估板上面板载的ST-Link就是这个版本。本文自制ST-LINK就是围绕V2-1版本展开。

ST-LINK V3 诞生于2018年
,目前在市面上普及率还不是很高。ST-LINK V3是针对STM8和STM32的新一代模块化在线调试兼编程功能的工具。STLINK-V3包含三个版本:STLINK-V3SET、STLINK-V3MINI、STLINK-V3MODS。V3 相较于 V2 有着更高的数据传输速率,同时具备更高灵活性和扩展性,满足定制化需求。

关于ST-LINK、J-LINK、DAP-LINK:

  1. ST-LINK: ST公司开发的调试烧录器,用于STM8、STM32微控制器(MCU)的调试工具。
  2. J-LINK : J-LINK 是SEGGER公司为支持仿真ARM内核芯片推出的JTAG仿真器。配合IAR EWAR,ADS,KEIL,WINARM,RealView等集成开发环境支持所有ARM7、ARM9、ARM11、Cortex M0/M1/M3/M4、Cortex A5/A8/A9等内核芯片的仿真。
  3. DAP-LINK: DAP-LINK是ARM官方开源的一款调试烧录器,以前叫CMSIS DAP,现在改名叫DAPLink,并在功能上做了提升。DAP-LINK可以调试Arm Cortex全系列MCU,所以相比ST-LINK和J-LINK这方面更具优势。 官方的维护一直在更新,未来也会扩充更多功能。

二. 自制ST-LINK硬件


开发环境 :Altium Designer 20

1. 原理图

硬件电路非常简单,废话不说,直接放图:


2. PCB图

PCB图因为时间有限,做得非常粗糙,但板子经过打版测试,功能均正常。为了避免每次都需要接插杜邦线调试,接口使用的是 XH2.54-4P 接口。STM32F103C8T6由于Flash空间不够,需换成STM32F103CBT6。

3. BOM表

三. 固件烧录

用淘宝买的ST-LINK V2连接自制的ST-LINK,使用 STM32 ST-LINK Utility下载链接)进行烧录固件,操作步骤如下:

  1. 连接ST-LINK。
  2. 打开需要烧录的二进制文件,这里选择的是STLink V2.J28.M18下载链接)。
  3. 开始烧录。按照默认配置,点击 Start 即可。

烧录成功后,将自制的ST-LINK通过USB连接电脑,打开设备管理器,如果能够识别出STLink证明烧录成功。

四. 固件更新

烧录完固件后还需要对固件进行升级,这里使用的是 Keil MDK-ARM 内置的升级工具进行升级,当ST-link 的版本低于MDK内置的版本时,会提示进行升级。除了使用Keil以外还可以使用:STSW-LINK007下载链接) 、STM32 ST-LINK utility下载链接)进行固件升级。


将自制的ST-LINK通过USB连接电脑,打开Keil,按照上面的指示打开Keil内置的ST-LINK固件升级工具。


如果芯片使用的是STM32F103C8T6 则会提示Flash空间不够,ST-link V2-1最新的固件已经超过了64K,芯片容量不足。可以替换成容量更大的STM32F103CBT6 ,二者除了Flash容量不同,没有任何区别,可以被完美替代。


将芯片替换后就可以更新固件了,完成后发现设备管理器中多了ST-Link Debug、虚拟串口,资源管理器中多了虚拟U盘。

五. 上电测试


  • 测试烧录功能: 用Keil-MDK,下载程序成功,说明烧录功能正常。
  • 测试Debug功能: 用Keil-MDK进行Debug调试,可以调试,说明Debug功能正常。
  • 测试U盘拖拽烧录功能: 需要生成bin文件(bin文件生成方法),将bin文件拖到ST-LINK,成功烧录,说明虚拟U盘功能正常。
  • 测试串口收发功能: 连接ST-LINK V2-1的TX和RX ,打开串口助手,发送数据,接收区收到相同的数据,说明串口收发正常。

六. 相关链接

参考的文章:

  1. 教你自做STLINK-V2下载器,免费开源:https://www.cnblogs.com/pudonglin/p/14216141.html
  2. ST-LINK V2-1(亲测可用): https://oshwhub.com/CYIIOT/ST_LINK-V2_1
  3. 自制的ST-LINK_V2(带虚拟串口): https://blog.csdn.net/qq_42722691/article/details/111057618

下载链接:

已经把全部资料(包括:软件、原理图、PCB图、ST-LINK固件、驱动)打包上传至百度网盘和CSDN,需要的自取。

  1. 百度网盘下载链接: https://pan.baidu.com/s/1oNa1K3MdahO8-gHAuF1Amw(提取码:1314)

  2. CSDN下载链接: https://download.csdn.net/download/weixin_44793491/85141803

七. 更新迭代

更新自2023/3/8:

最近在使用上述自制ST-LINK调试的时候发现自己曾经的布线实在太烂,布局也很丑,实在受不了所以又重新做了一版。LDO从原来的AMS1117-3.3改为封装更小的SPX3819-3.3;接口从原来的XH2.54-4Pin更换为更小的GH1.25mm-4Pin;三极管从原来的MMBT3904(NPN)改为更常用的SS8050(NPN),其他的元件不变。布局更加紧凑,且元件都放在同一面,方便贴片。背面加上丝印,长度缩减为原来的一半。

请添加图片描述
刚好有一张嘉立创的免费PCB+SMT的优惠券,5片全贴,只需要元件费用110块钱。


新版的ST-LINK的原理图和PCB图也打包上传至CSDN,需要的自取:

新版ST-LINK CSDN下载链接: https://download.csdn.net/download/weixin_44793491/87546746

评论 50
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冬瓜~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值