STM32 GPIO重映射(转)

 

   重映射就是将引脚功能从新定义到其余引脚, 例如PA9是USART1-TX默认的3d

管脚,可是如今PA9用作它用了,那能够将USART1-TX从新映射到PB6,固然这blog

种映射不是随意的想映射到哪一个脚就哪一个脚,芯片内部已经固定了只能映射到固ip

定的地方。it

eg:io

  

 

标准库重映射步骤为:(把串口PA九、PA10 重映射到 PA六、PA7)配置

1.打开重映射时钟和USART重映射后的I/O口引脚时钟, map

           RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO,ENABLE);定时器

2.I/O口重映射开启.im

                    GPIO_PinRemapConfig(GPIO_Remap_USART1,ENABLE);d3

3.配制重映射引脚.这里只需配置重映射后的I/O,原来的I/O配置删除或保留都行

                              GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6;
                              GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
                              GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
                              GPIO_Init(GPIOB, &GPIO_InitStructure);


                              GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7;
                              GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
                              GPIO_Init(GPIOB, &GPIO_InitStructure);

HAL库重映射(以定时器为例):

  

由上图可见:

  部分重映射:只改变CH一、CH2管脚;

  彻底重映射:CH1~CH4管脚所有改变。

1. 在stm32f1xx_hal_gpio_ex.h找到重映射语句

2. 添加到管脚定义语句前

3. 完成

相关文章
相关标签/搜索