文档
ST-LINK V2 调试烧录器技术文档
概述
ST-LINK V2 是意法半导体(STMicroelectronics)官方推出的STM32/STM8系列MCU在线调试与烧录工具。该调试器通过USB 2.0全速接口连接PC,支持SWIM(STM8)、SWD和JTAG(STM32)三种调试协议。凭借成熟的生态支持和低廉的价格,ST-LINK V2是STM32开发中最常用的调试烧录工具。
市面上常见的ST-LINK V2兼容版(国产克隆版)功能与原版基本一致,价格更低,广泛用于学习和开发。
核心功能
- STM32系列:SWD + JTAG 调试/烧录
- STM8系列:SWIM 调试/烧录
- 虚拟串口(部分版本支持)
- 支持3.3V和5V目标板供电
- 固件可升级
支持IDE
- Keil MDK-ARM
- IAR EWARM
- STM32CubeIDE
- STM32CubeProgrammer
- OpenOCD(开源方案)
- PlatformIO
引脚定义
ST-LINK V2 通常使用10Pin牛角座(2×5,2.54mm间距)输出:
标准10Pin SWD接口
| 引脚 | 丝印 | 方向 | 功能 | 说明 |
|---|---|---|---|---|
| 1 | RST | → | 目标复位 | 接STM32 NRST |
| 2 | SWDIO | ↔ | SWD数据线 | 接STM32 SWDIO (PA13) |
| 3 | GND | — | 地 | 接目标板GND |
| 4 | SWCLK | → | SWD时钟线 | 接STM32 SWCLK (PA14) |
| 5 | GND | — | 地 | 接目标板GND |
| 6 | SWO | ← | 串行线输出(ITM trace) | 可选,接STM32 SWO (PB3) |
| 7 | KEY | — | 防呆(空脚/缺针) | — |
| 8 | NC/TDI | → | JTAG TDI | JTAG模式使用,SWD不接 |
| 9 | 5V/GND | — | 地线/5V检测 | 不同版本有差异 |
| 10 | NRST | → | 复位(同Pin1) | — |
常用4Pin简化连接(SWD模式)
仅需4根线即可完成SWD烧录和调试:
| ST-LINK | STM32目标板 | 说明 |
|---|---|---|
| SWCLK | PA14 (SWCLK) | SWD时钟 |
| SWDIO | PA13 (SWDIO) | SWD数据 |
| GND | GND | 共地 |
| 3.3V | 3.3V (可选) | 为目标板供电(注意电流≤300mA) |
电气特性
| 参数 | 典型值 | 单位 |
|---|---|---|
| USB接口 | USB 2.0 Full Speed | — |
| USB供电电压 | 5 | V |
| 目标接口电平 | 3.3V(5V tolerant on some pins) | — |
| 3.3V输出电流 | ≤300 | mA |
| SWD时钟频率 | 最大4MHz | — |
| JTAG时钟频率 | 最大9MHz | — |
| SWIM时钟频率 | 最大16MHz | — |
| 支持目标电压 | 1.65 ~ 5.5 | V |
| 工作温度 | 0 ~ 50 | ℃ |
典型连接方式
SWD模式连接(最常用)
ST-LINK V2 STM32目标板
┌─────────────┐ ┌──────────────┐
│ SWCLK ──────────────────────── PA14 (SWCLK) │
│ SWDIO ──────────────────────── PA13 (SWDIO) │
│ GND ──────────────────────── GND │
│ 3.3V ──(可选)──────────────── 3.3V │
│ RST ──(可选)──────────────── NRST │
└─────────────┘ └──────────────┘
自供电 vs 调试器供电
| 模式 | 接线 | 说明 |
|---|---|---|
| 目标板自供电 | 仅接 SWCLK + SWDIO + GND | 推荐,稳定可靠 |
| ST-LINK供电 | 加接 3.3V 到目标板 | 电流≤300mA,仅适合最小系统 |
⚠️ 不要同时连接3.3V又给目标板外部供电,避免电源冲突。
使用注意事项
- 先接好线再上电:插拔连线时务必断开USB,避免静电或短路损坏。
- 确认目标板供电:如果目标板已经独立供电,ST-LINK的3.3V引脚不要连接。
- SWD引脚复用:PA13(SWDIO)和PA14(SWCLK)默认是SWD调试引脚,如果程序中将其配置为普通GPIO,可能导致后续无法连接调试器。解决方法:
- 使用RST引脚连接ST-LINK的RST,在连接时硬件复位进入调试模式
- 或者按住复位键、点击连接、再松开复位键
- 固件升级:ST-LINK V2固件可通过STM32CubeProgrammer或STSW-LINK007工具升级。国产克隆版升级时可能变砖,谨慎操作。
- 驱动程序:
- Windows 10/11通常自动识别
- Windows 7需手动安装驱动(可在ST官网下载STSW-LINK009)
- Linux和macOS免驱动
- 线缆长度:SWD线缆建议≤20cm,过长可能导致信号质量下降、通信不稳定。
- JTAG vs SWD:对于STM32F1/F4等系列,推荐使用SWD(仅需2根信号线),比JTAG(需5根信号线)更简洁。
- 克隆版识别:部分克隆版ST-LINK在Keil中可能被识别为"ST-LINK/V2-1"或需要特殊固件,建议使用STM32CubeProgrammer确认连接。
- 多板调试:同一台PC可连接多个ST-LINK V2,通过序列号区分。
常用软件配置
Keil MDK 配置
- 打开
Options for Target → Debug - 选择
ST-Link Debugger - 点击
Settings→Port选择SW - 若能识别到芯片ID,说明连接成功
STM32CubeIDE 配置
Run → Debug Configurations- 选择
STM32 Cortex-M C/C++ Application Debugger选项卡 →Debug Probe选择ST-LINK (OpenOCD)- 接口选择
SWD
OpenOCD 配置
# openocd.cfg
source [find interface/stlink-v2.cfg]
source [find target/stm32f1x.cfg]