STM32F103系列五个特殊引脚作为GPIO时的配置

STM32F103系列五个特殊引脚作为GPIO时的配置

    对于STM32F103系列的单片机,有5个比较特殊的引脚,它们分别是PB3、PB4、PA13、PA14、PA15。
这5个引脚在默认状态下并不是用作GPIO功能的,而是用于JTAG/SWD仿真器的调试接口。
其中:
JTAG功能下的引脚对应情况如下:
    PA13--JTMS--JTAG模式选择
    PA14--JTCK--JTAG时钟
    PA15--JTDI--数据输入
    PB3---JTDO--数据输出
    PB4---JNTRST--复位
SWD功能下的引脚对应情况如下:
    PA13--SWDIO--数据的输入/输出
    PA14--SWCLK--SWD时钟
    PA15---------未使用
    PB3----------跟踪时用作TRACESWO信号
    PB4----------未使用
由于以上引脚默认功能不是GPIO功能,因此在使用这几个引脚作为GPIO功能时需要进行引脚的重映射。
关于以上引脚的重映射,可以分为三种情况:
1、GPIO_Remap_SWJ_JTAGDisable
用简洁的话来说,这种重映射情况就是把PB3、PB4、PA15这三个引脚用作普通GPIO,而把PA13和PA14这两个引脚用作SWD的调试功能。
2、GPIO_Remap_SWJ_Disable               
这种情况是把这五个引脚全部用作普通GPIO,因此将不能再用JTAG/SWD仿真器进行调试,但可以使用ST-LINK。 
3、GPIO_Remap_SWJ_NoJTRST     
这种情况下仅仅把PB4这一个引脚作为普通GPIO,JTAG/SWD可以正常使用,但是JTAG没有复位功能。
了解了以上几个特殊引脚的重映射方式后,在使用这几个引脚为GPIO时可以按照以下流程进行配置:
1、打开对应的GPIO时钟以及AFIO引脚复用时钟。
例如,使用PB3/PB4引脚时配置如下:
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO, ENABLE);
2、根据前面的三种不同的重映射方式,选择自己需要的重映射方式。
例如,当我们使用重映射方式一时,配置如下:
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);   
3、正常初始化引脚的各种功能。
  • 17
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

牧以南歌〆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值