GD32F130 进入sw调试即全速运行

[复制链接]
9939|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一切正常。
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的地址吗
 楼主| SUITANG88 发表于 2021-6-8 10:18 | 显示全部楼层
点reset无任何反应,无法复位。程序还是停留在原处。
sonicll 发表于 2021-6-8 10:29 | 显示全部楼层
SUITANG88 发表于 2021-6-8 10:18
点reset无任何反应,无法复位。程序还是停留在原处。

感觉像硬件电路的问题,检查一下晶振,NRST复位脚,BOOT0脚,供电。或者换个芯片、电路板试试
 楼主| SUITANG88 发表于 2021-6-8 10:44 | 显示全部楼层
好的,我试一下。谢谢您的耐心解答。
单片小菜 发表于 2021-6-8 16:12 | 显示全部楼层
GD的芯片是很好用的,二楼确实正解。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

10

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部