STM32端口复用
1.什么是端口的复用?
stm32中的许多内置外设,这些外设的外置引脚都是和GPIO共用同一个端口,一个GPIO口如果可以作为某个内置外设的引脚,那么当GPIO
口作为内置外设的引脚使用时,就叫做端口的复用。
例如:串口1的引脚对应的Io口为PA9,PA10,PA10的默认功能是GPIO。PA9,PA10引脚作为串口1的TX,RX引脚使用时,就是端口复用
2.端口的复用的准备工作
端口复用初始化需要如下三步:
1.GPIO端口的使能
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
2.服用的外设时钟使能
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE);
3.端口模式配置
例如:将PA9的模式配置为复用推挽输出:
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
GPIO_Init(GPIOA, &GPIO_InitStructure); //配置PA9的模式
我们在使用复用功能时,最少使能2个时钟:
1)GPIO时钟使能
2)复用的外设时钟使能