端口的复用(*)
以USART1为例
PA9管脚的复用功能为 USART1_TX(串口发送端)
PA10管脚的复用功能为USART1_RX(串口接收端)
对端口复用的配置
- GPIO端口的时钟使能。
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
- 复用外设的时钟使能。
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);
- 端口模式的配置。
使用GPIO_Init()函数。
其中对GPIO的模式的参数设置为
(表格来自STM32中文参考手册)
GPIO其他参数设置具体操作见STM32 GPIO的操作(使用固件库)
端口重映射
一个引脚除了默认的端口外,还可以通过设置重映射,把这个引脚映射到其他端口
重映射的配置过程,以USART1为例
- 使能重映射的GPIO时钟(重映射的口,ps 串口1的映射为PB6,PB7)
注:注意是全映射还是部分映射。
- 使能外设的时钟
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);
- 使能AFIO时钟。(重映射必须使能)
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);
- 开启重映射
RCC_APB2PeriphClockCmd(RCC_Remap_AFIO,ENABLE);
本文参考《STM32中文参考手册》