STM32引脚PA15,PB3,PB4用做普通I/O口高低电平默认无法拉高拉低

文章讲述了STM32单片机上电时PB4、PB3、PA15默认被JTAG复用导致无法正常操作。解决方法是禁用JTAG,启用SWD,通过PinRemapConfig重映射功能释放这些引脚,确保GPIO初始化后能正常拉高拉低IO口电平。
摘要由CSDN通过智能技术生成

STM32,这个MPU上电默认PB4 PB3 PA15这些引脚电平且无法正常拉高拉低。

PB4,PA15为高电平,PB3为低电平。

其实原因是:I/O口不能正常输出一般都是端口被复用了造成的。

文章讲的这几个端口在单片机上电时默认就是复用的,JTAG相关的PA13,PA14,PA15,PB3,PB4引脚,禁用JTAG或SWD可以释放其中的一些引脚。

这个就是复用功能 

我们需要使用stlinkV2进行烧录所以使用,部分重映射。JTAG-DA失能,SW-DP使能;

   RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO ,ENABLE);//重映射需要先使能AFIO时钟
  GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);//只关闭JTAG而保留SWD

 打开复用时钟是为了,使用重映射功能。(PinRemapConfig)

重映射就是引脚重映射,本来每个内置外设都有原来设定的引脚,所谓的重映射就是通过某种方式,将外设本来的引脚的功能赋予给另外的引脚。这里就是释放了PB4,PB3,PA15.

以下是代码实例:

void Motor_Init(void)
{
	GPIO_InitTypeDef GPIO_Init
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值