端口复用
1、STM32中有很多内置的外设,这些外设的引脚与GPIO的引脚是重复的,这时候为了避免发生冲突,设置了GPIO的引脚可以复用为其他外设引脚的功能,系统默认情况下均是GPIO的功能。
2、具体的复用有哪些可以参考STM32的中文参考手册
3、以下用一个具体的例子来介绍端口复用和初始化的过程:
需要注意每一个GPIO口在一个时间内只能被当做一个外设功能
我们这里以USART1为例,其中PA9和PA10为其复用端口。
复用端口的初始化的步骤如下:
1、GPIO端口时钟使能
2、复用外设的时钟使能
3、端口模式的设置(此处的配置应该参考手册内容)
4、初始化GPIO和对应复用的外设功能
端口重映射
映射是为了使得IO功能数量达到最优,把一些复用功能重新映射到其他的一些引脚上,(remap功能)
简而言之就是不同的引脚可以有相同的功能,当然这两个不同的端口在一个时间段内只能有一个能够拥有这种功能
重映射分为部分重映射和完全重映射
重映射的初始化的过程:
1、使能GPIO端口时钟
2、使能复用功能时钟
3、使能AFIO时钟
4、开启重映射
5、初始化端口和复用外设
具体函数可以见我的下一章有关STM32的初始化函数的总结。