[STM32F1] STM32F103RCT6的PA13脚如何配置成为IO使用?

[复制链接]
2918|8
 楼主| rui199009 发表于 2016-3-9 17:02 | 显示全部楼层 |阅读模式
我是用的是正点原子stm32f103mini开发板资料里的LED灯库函数代码,引出PA13来点亮一个LED灯闪烁,但是按照论坛里的重映射的方法还是没有成功。
  1. void LED_Init(void)
  2. {

  3. GPIO_InitTypeDef  GPIO_InitStructure;
  4.        

  5. // RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_AFIO,ENABLE);
  6. RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);  
  7. //GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE);
  8. GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);
  9. //GPIO_PinRemapConfig(GPIO_Remap_SWJ_NoJTRST , ENABLE);
  10.   
  11. GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12|GPIO_Pin_13;                                 //LED0-->PB.5 端口配置
  12. GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;                  //推挽输出
  13. GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;                 //IO口速度为50MHz
  14. GPIO_Init(GPIOA, &GPIO_InitStructure);                                         //根据设定参数初始化GPIOB.5
  15. GPIO_SetBits(GPIOA,GPIO_Pin_12|GPIO_Pin_13);                                                 //PB.5 输出高
  16. }



这个是主函数
  1. int main(void)
  2. {       
  3.         delay_init();                     //延时函数初始化          
  4.         LED_Init();                          //初始化与LED连接的硬件接口
  5.         while(1)
  6.         {
  7.                 GPIO_ResetBits(GPIOA,GPIO_Pin_12|GPIO_Pin_13); //LED0输出低
  8.                 delay_ms(300);
  9.                 GPIO_SetBits(GPIOA,GPIO_Pin_12|GPIO_Pin_13);//LED0输出高
  10.                 delay_ms(1000);
  11.         }
  12. }

找不到为什么不能重新映射,求各位大神指导。
 楼主| rui199009 发表于 2016-3-9 17:03 | 显示全部楼层
在线等,求大神帮忙。
dwq175 发表于 2016-3-9 20:57 | 显示全部楼层
我是这样做的:
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);
        GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);//GPIO_Remap_SWJ_NoJTRST
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, DISABLE);
 楼主| rui199009 发表于 2016-3-9 21:56 | 显示全部楼层
dwq175 发表于 2016-3-9 20:57
我是这样做的:
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);
        GPIO_PinRemapConfig(GPIO_Remap ...

我跳线了引脚,可以了,但是您得方法还没试过,我去试试。
跟屁虫 发表于 2016-3-9 22:18 | 显示全部楼层
好像这个PA13是jtag里面的一个口吧
xmshao 发表于 2016-3-10 15:13 | 显示全部楼层
因为管脚复用导致冲突的问题 经常遇到。
顶上去~
玛尼玛尼哄 发表于 2016-3-10 15:16 | 显示全部楼层
GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE);
xzh556 发表于 2016-3-16 15:58 | 显示全部楼层
板凳说的很对
zhuomuniao110 发表于 2016-3-16 22:57 | 显示全部楼层
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);
        GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);//GPIO_Remap_SWJ_NoJTRST
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, DISABLE);
这个貌似第二句就是关闭那个特殊的功能吧。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

25

帖子

1

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