[STM32F107]关于使用SPI3后无法进行SWD调试的问题

2019-08-11 18:36发布

本帖最后由 ddll184 于 2016-11-4 10:30 编辑

最近在开发过程中,发现了一个问题:配置使用SPI3后,SWD调试时会卡在下面的程序出一直出不来,但是不调试就可以正常使用。
while (SPI_I2S_GetFlagStatus(SPI3, SPI_I2S_FLAG_RXNE) == RESET)
根据Datasheet,SPI3使用的引脚中,PB3的Default功能是JTDO,复用成SPI3-SCK。PB4的Default功能是NJTRST,复用成SPI3-MISO。PA15的Default是JTDI,复用成SPI3-NSS。
跟JTAG有冲突,网上的解决方案是配置GPIO前先禁用掉JTAG调试。
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);  /* Enable Remap clock */
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);//关闭jtag , 开启swd
按照这个做了以后,现象依旧,无法进行调试。
原子哥和论坛里的其他兄弟是否也遇到过这样的问题,请帮忙解决一下。感谢感谢!

下图是我的J-LINK调试配置界面的内容:
eclipse-jlink.jpg

下图是我JLinkGDBServer的配置内容:
JlinkGDBServer.jpg

下图是我的JLINK-SWD接线方法:
jlink-swd.jpg

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
正点原子
1楼-- · 2019-08-12 00:11
看原理图,SWDIO和SWDCLK不能和SPI共用任何数据线。
1375917982gxut
2楼-- · 2019-08-12 06:07
SPI3与swd的端口有冲突吗?如果有冲突,只能使用swd了,spi用spi1/2.
ddll184
3楼-- · 2019-08-12 10:45
 精彩回答 2  元偷偷看……
皇者~景帝
4楼-- · 2019-08-12 14:11
正点原子 发表于 2016-11-4 09:28
看原理图,SWDIO和SWDCLK不能和SPI共用任何数据线。

SWDIO和SWDCLK分别使用的PA13和PA14,没有共用数据线,还是会出现问题呀,求解。
正点原子
5楼-- · 2019-08-12 18:23
皇者~景帝 发表于 2017-10-27 16:12
SWDIO和SWDCLK分别使用的PA13和PA14,没有共用数据线,还是会出现问题呀,求解。

你试试103,是否有同样的问题?

一周热门 更多>