先别急着换线,按顺序排查:1) 确认供电——目标板必须独立供电或ST-Link的3.3V脚供电,且共地;2) 检查接线——SWDIO、SWCLK、GND三根必须连对,VCC脚用于电平检测,务必接上(部分板子不接VCC会报错);3) 复位电路——若目标芯片有外部复位,尝试按住复位键再点连接,或把NRST也接到ST-Link;4) 检查芯片是否被锁死——若之前烧录过读保护,用ST-Link Utility的'Connect under reset'模式(勾选Hot Plug或低速率连接);5) 降低SWD频率——在IDE或CubeProgrammer里把频率降到100kHz以下,排除线缆过长/干扰。
若仍失败,用万用表测SWDIO/SWCLK对地电阻(正常几百欧到几k),短路或开路都说明芯片损坏或虚焊。最后试换一根杜邦线(很多问题出在线材上),或换一个ST-Link(山寨版兼容性差)。
```c
// 伪代码:检查连接状态
if (STLINK_Connect() == ERROR) {
printf("Check power & wiring, then retry with low speed\n");
}
```
mcuku 阿沐 · 2026-08-18