打印

GD32F130 进入sw调试即全速运行

[复制链接]
9015|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
SUITANG88|  楼主 | 2021-6-6 21:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用ST-LINK,J-LINK调试GD32F130,只要一进入调试,程序即全速运行,暂停程序后,可单步执行。如此一来,就无法单步执行主循环前的语句。请问怎么才能从第一个语句开始单步执行呢?

使用特权

评论回复
沙发
SUITANG88|  楼主 | 2021-6-8 09:23 | 只看该作者
这里没有GD32的技术支持么?
找GD32的技术支持真是难啊!

使用特权

评论回复
板凳
sonicll| | 2021-6-8 09:32 | 只看该作者
用的是Keil吗,你可以先把Debug那个页面里的“run to main()”取消勾选,然后再进Debug,这时候应该可以单步调试,看看main函数之前的代码运行是否正常

使用特权

评论回复
地板
SUITANG88|  楼主 | 2021-6-8 09:48 | 只看该作者
本帖最后由 SUITANG88 于 2021-6-8 09:50 编辑
sonicll 发表于 2021-6-8 09:32
用的是Keil吗,你可以先把Debug那个页面里的“run to main()”取消勾选,然后再进Debug,这时候应该可以单 ...

谢谢您的回复。
用的是keil_v5 mdk.
“run to main()"取消勾选进入调试后,不会再全速运行了。但程序却停在main()主循环中(主循环只有一条语句)。代码优化级别是level0。
同样的环境,调试stm32一切正常。

使用特权

评论回复
5
sonicll| | 2021-6-8 10:10 | 只看该作者
SUITANG88 发表于 2021-6-8 09:48
谢谢您的回复。
用的是keil_v5 mdk.
“run to main()"取消勾选进入调试后,不会再全速运行了。但程序却停 ...

进Debug以后,点一下Keil菜单里的reset,看看程序是停在启动文件的Reset_Handler里吗,看看这时候内核寄存器的PC值是0x0800xxxx的地址吗

使用特权

评论回复
6
SUITANG88|  楼主 | 2021-6-8 10:18 | 只看该作者
点reset无任何反应,无法复位。程序还是停留在原处。

使用特权

评论回复
7
sonicll| | 2021-6-8 10:29 | 只看该作者
SUITANG88 发表于 2021-6-8 10:18
点reset无任何反应,无法复位。程序还是停留在原处。

感觉像硬件电路的问题,检查一下晶振,NRST复位脚,BOOT0脚,供电。或者换个芯片、电路板试试

使用特权

评论回复
8
SUITANG88|  楼主 | 2021-6-8 10:44 | 只看该作者
好的,我试一下。谢谢您的耐心解答。

使用特权

评论回复
9
单片小菜| | 2021-6-8 16:12 | 只看该作者
GD的芯片是很好用的,二楼确实正解。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

10

帖子

0

粉丝