[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

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。