STM32CubeIDE Jlink连接Connecting to target...ERROR: DAP error while reading DP-Ctrl-Stat register.

本文详细记录了使用STM32CubeIDE和JLink在STM32C8T6板子上遇到的连接和烧录问题及解决过程。作者分享了焊接技巧,排查了电路设计、焊接质量、电源供应等问题,最终发现是由于电压供电不足导致的连接失败。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

STM32CubeIDE Jlink连接STM32C8T6的 板子的时候,
各种提示,各种错误.
刚入手没啥经验不能快速的定位问题点. 搞了好几个星期.(晚上搞搞)
经过排查, 我写一下我自己的排查经历.
第一次做板子.由于自己对电路不是很懂所以请人设计的电路板… 我自己焊接的元件. 对于独立插接件都焊不好的我,上来就焊贴片元件. 真是如痴如醉,欲哭无泪… 10个板子焊了2个星期. 自己焊的好不好还不知道, 反正各个颗粒饱满,没有虚焊. 又是热风焊,又是电烙铁的. 10个板子焊完,自己也熟练了.

额外分享一下焊接技巧, 贴片小元件,例如电容,电阻之类的 要先固定一个引脚,然后再焊另外一个.
IC芯片这种引脚特别细的又特别多的,
第一步要先在板子上弄一层薄薄的锡,不要粘在一起. 不要凸起太多.
第二步冷却后, 开始摆放IC芯片,摆放的时候不要用力压,浮在上面就可以了. 摆放技巧是用弯头镊子去顶芯片引脚,很容易顶到合适的位置. 因为板子上已经有一层薄薄的锡了,恰好能挡住镊子,镊子停住了,芯片引脚也恰好在正上方. 4个脚都顶齐了之后不要动.也不要用力压. ,对于引脚不整齐的IC芯片,建议先在比较平的玻璃上压平,确保引脚是在一个平面上.
第三步:用电热风枪去烤. 烤的时候风力不要太大, 会吹跑的, 也不要太久, 会烤坏了其它的元件. 也不要去用手去压它,因为手一定会抖,哪怕一点点,都会失败重来. 感觉差不多了就停下等它冷却了就自然焊好了…
这种方式焊接的IC芯片比较美观, 成功率比较高. 不需要太高深的技巧.也不容易粘到一起.
网上有人直接划拉一下就能焊好. 经亲自动手操作发现太需要技巧. 对手工的要求太高, 很容易粘到一起,弄不开.新手不建议这种方式去弄.

然后就是写程序了.
用的是比较新的STM32CubeIDE开发工具, 这个真的挺好用.比较简单,容易上手…

…各种噼里啪啦, 一顿敲打, 程序写完了.

程序写好了该上线调试了.
代码好写,可是程序就不好烧录了.
在下载烧录的时候各种提示报错,死活下载不了.
经过我用万用表仔细的排查发现板子上的SWDIO和SWCLK两个引脚丝印标反了. 反了就反了呗, 自己知道就可以了.那就反着接.

反着接也还不行…

还是有错, 各种错,具体忘记了. 当时那个失望呀. 各种怀疑,
难道是我程序写错了?
PIN配错了?
SW调试功能引脚没配?
Jlink版本太老了,STM32CubeIDE不支持?
我焊错了芯片方向?
引脚粘到一起去了?
芯片被我高温烤坏了?
PCB电路布线有问题?
BOOT方式有问题?
电源电压有问题?

这些问题经过逐一的一个一个的排查, 最大的怀疑是 PCB布线有问题, 电路没设计好, 或者我手工焊接的不合格.
为了排查JLink和软件的问题,网上买了个开发板, 尝试着用JTAG和SW两种方式进行了下载和调试,结果都正常… 可以排除JLink的问题. 都是支持的.我用的是JLink V9 但是对STLink 不支持. 没弄好. 对Jlink-ob也不支持.
剩下的就只能是布线和焊接还有电源问题了.

在快要绝望的时候, 我看到篇帖子说电压供电不足也会连接不上CPU.
然后,接通板子上的5v供电电源后, 神奇的事情发生了. 能下载也能调试了.
千言万语都化作一句 我操…
搞了2个月了. 终于快要有眉目了.

下面写一下总结:
如果线没连接好 或者 SWDIO和SWCLK弄反了,或者把调试线拔掉 会提示
Connecting to CPU via connect under reset failed.
如下:

Command line: -port 2331 -s -device STM32F103C8 -endian little -speed 4000 -if swd -swoport 2332 -vd
-----GDB Server start settings-----
GDBInit file:                  none
GDB Server Listening port:     2331
SWO raw output listening port: 2332
Terminal I/O port:             2333
Accept remote connection:      localhost only
Generate logfile:              off
Verify download:               on
Init regs on start:            off
Silent mode:                   off
Single run mode:               on
Target connection timeout:     0 ms
------J-Link related settings------
J-Link Host interface:         USB
J-Link script:                 none
J-Link settings file:          none
------Target related settings------
Target device:                 STM32F103C8
Target interface:              SWD
Target interface speed:        4000kHz
Target endian:                 little

Connecting to J-Link...
J-Link is connected.
Firmware: J-Link V9 compiled Dec  2 2017 15:35:20
Hardware: V9.20
S/N: 269200585
Feature(s): GDB, RDI, FlashBP, FlashDL, JFlash, RDDI
Checking target voltage...
Target voltage: 2.91 V
Listening on TCP/IP port 2331
Connecting to target...ERROR: STM32: Connecting to CPU via connect under reset failed.

ERROR: Could not connect to target.
Target connection failed. GDBServer will be closed...Restoring target state and closing J-Link connection...
Shutting down...

如果提示 Could not connect to target.
多数是CPU没启动或者SW端口没启用.
我的板子是因为设计的有点问题,另外的5v供电接上以后就正常了.我怀疑跟VSSA,VDDA有关.也有可能电压供电不足有关.

提示如下:

SEGGER J-Link GDB Server V6.44c Command Line Version

JLinkARM.dll V6.44c (DLL compiled Mar 22 2019 17:26:40)

Command line: -port 2331 -s -device STM32F103C8 -endian little -speed 4000 -if swd -swoport 2332 -vd
-----GDB Server start settings-----
GDBInit file:                  none
GDB Server Listening port:     2331
SWO raw output listening port: 2332
Terminal I/O port:             2333
Accept remote connection:      localhost only
Generate logfile:              off
Verify download:               on
Init regs on start:            off
Silent mode:                   off
Single run mode:               on
Target connection timeout:     0 ms
------J-Link related settings------
J-Link Host interface:         USB
J-Link script:                 none
J-Link settings file:          none
------Target related settings------
Target device:                 STM32F103C8
Target interface:              SWD
Target interface speed:        4000kHz
Target endian:                 little

Connecting to J-Link...
J-Link is connected.
Firmware: J-Link V9 compiled Dec  2 2017 15:35:20
Hardware: V9.20
S/N: 269200585
Feature(s): GDB, RDI, FlashBP, FlashDL, JFlash, RDDI
Checking target voltage...
Target voltage: 2.44 V
Listening on TCP/IP port 2331
Connecting to target...ERROR: Could not connect to target.
Target connection failed. GDBServer will be closed...Restoring target state and closing J-Link connection...
Shutting down...
Could not connect to target.
Please check power, connection and settings.libpng warning: iCCP: known incorrect sRGB profile

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值