IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 自制ST-Link V2.1教程(SWD调试+虚拟串口+虚拟U盘) -> 正文阅读

[嵌入式]自制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硬件


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。

CSDN下载链接: https://mp.csdn.net/mp_download/manage/download/UpDetailed

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2022-04-18 17:58:47  更:2022-04-18 18:00:54 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 4:23:29-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码