GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE); //使用GPIOA_15时-需要复用禁止JTAG

在基于 STM32 的开发中,以下这两行代码的主要作用是禁止 JTAG(Joint Test Action Group,联合测试行动小组)功能,从而使 GPIOA 的第 15 引脚(GPIOA_15)能够作为普通 GPIO 引脚使用。下面为你详细解释这两行代码:
代码分析

//使用GPIOA_15时-需要复用禁止JTAG
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);

1. RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);
功能解释:此函数用于使能或禁用 APB2 总线上的外设时钟。在 STM32 中,为了降低功耗,每个外设的时钟默认是关闭的,在使用某个外设之前,必须先使能其对应的时钟。
参数解释:
RCC_APB2Periph_AFIO:表示要操作的外设是 AFIO(Alternate Function I/O,复用功能输入输出)。AFIO 负责管理引脚的复用功能,例如 JTAG、SWD(Serial Wire Debug,串行调试)等调试接口的功能。
ENABLE:表示使能 AFIO 外设的时钟。只有使能了 AFIO 的时钟,后续对引脚复用功能的配置才能生效。


2. GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);
功能解释:该函数用于配置引脚的重映射功能。在 STM32 中,有些引脚具有多种功能,默认情况下可能被用作某些特定的复用功能,通过重映射可以改变这些引脚的功能。
参数解释:
GPIO_Remap_SWJ_JTAGDisable:这是一个重映射选项,表示禁用 JTAG 调试接口,但保留 SWD 调试接口。在默认情况下,GPIOA_15 引脚被用作 JTAG 的 NTRST(JTAG 复位信号)引脚,当禁用 JTAG 功能后,GPIOA_15 就可以作为普通的 GPIO 引脚使用。
ENABLE:表示使能该重映射配置。
总结
通过这两行代码,首先使能了 AFIO 外设的时钟,然后禁用了 JTAG 调试接口,从而释放了 GPIOA_15 引脚,使其可以被用作普通的 GPIO 引脚,以满足特定的应用需求。需要注意的是,禁用 JTAG 后,不能再使用 JTAG 接口进行调试,但仍可以使用 SWD 接口进行调试。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值