STM32F103 PB3,PB4特殊引脚的配置

  我在使用STM32F103C8T6的时候发现PB3这个引脚没办法配置成普通的IO输出,然后查看数据手册后发现他的默认模式是JTDO,用来给仿真器用的

  所以在配置IO的时候,需要调用下面的语句来实现配置成普通IO

  

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);//使能PORTA,PORTE时钟
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);    //使能复用功能时钟
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE );

GPIO_InitStructure.GPIO_Pin  = GPIO_Pin_3;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; 
GPIO_Init(GPIOB, &GPIO_InitStructure);

  调用上面两行加粗代码 GPIO_PinRemapConfig的GPIO_Remap参数可以参考手册这个位置设置,一般如果只使用PB3和PB4的话 设置成GPIO_Remap_SWJ_JTAGDisable就可以了,也就是下面的010选项

原文地址:https://www.cnblogs.com/isyefeng/p/14328726.html