关于使用STM32- PB3引脚的一些问题

PB3引脚是无法以普通GPIO形式来控制的。

原因:是因为有特殊的功能。首先,我们可以看一下 STM32 F103C8T6的引脚分布图

关于使用STM32- PB3引脚的一些问题_第1张图片
关于使用STM32- PB3引脚的一些问题_第2张图片
关于使用STM32- PB3引脚的一些问题_第3张图片
关于使用STM32- PB3引脚的一些问题_第4张图片
关于使用STM32- PB3引脚的一些问题_第5张图片

从上面的表格可以看出 PB3 是JTDO 的接口
如和将PB3设置成为普通的GPIO口呢?
可以进行如下设置

RCC_APB2PeriphClockCmd( RCC_APB2Periph_AFIO|RCC_APB2Periph_GPIOB|RCC_APB2Periph_GPIOF, ENABLE); 
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);

需要开启APB2总线上的 AFIO 和 GPIOB 时钟。
第二行代码的作用是:关闭JTAG调试开启SWD调试。

如果你使用的ST-Link V2 调试器的话。此时就需要配置GPIO时,就配置关闭JTAG 开启 SWD调试。如果你将

GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);

这句话放置在主函数里。有时候会出错,SWD无法下载程序

附上STM32F103系列引脚图

关于使用STM32- PB3引脚的一些问题_第6张图片

关于使用STM32- PB3引脚的一些问题_第7张图片

关于使用STM32- PB3引脚的一些问题_第8张图片

                                                        2015/3/22编辑

你可能感兴趣的:(stm32,stm32,SWD,PB3)