网络网站设计培训,如何免费建造网站,经营网站需要注意什么,广东新闻联播直播在线观看端口复用和重映射
STM32F1有很多的内置外设#xff0c;这些外设的外部引脚都是与GPIO复用的。也就是说#xff0c;一个GPIO如果可以复用为内置外设的功能引脚#xff0c;那么当这个GPIO作为内置外设使用的时候#xff0c;就叫做复用。
大家都知道#xff0c;MCU都有串口…端口复用和重映射
STM32F1有很多的内置外设这些外设的外部引脚都是与GPIO复用的。也就是说一个GPIO如果可以复用为内置外设的功能引脚那么当这个GPIO作为内置外设使用的时候就叫做复用。
大家都知道MCU都有串口STM32有好几个串口 比如说STM32F103RCT6有5个串口我们可以查手册知道串口1的引脚对应的IO为PA9PA10。它们默认功能是GPIO所以当PA9PA10引脚作为串口1的TXRX引脚使用的时候就是端口复用。 配置步骤
首先要使用IO复用功能必须先打开对应的IO时钟和复用功能外设时钟。
__HAL_RCC_GPIOA_CLK_ENABLE();
__HAL_RCC_USART1_CLK_ENABLE();
__HAL_RCC_AFIO_CLK_ENABLE(); //使能辅助功能IO时钟然后再GPIOx_MODER寄存器中将所需IO配置为复用功能。最后对IO口的其它参数例如上/下啦以及输出速度等进行配置。
上面三步中通过HAL_GPIO_Init实现
GPIO_InitTypeDef GPIO_Initure;GPIO_Initure.Pin GPIO_PIN_9;
GPIO_Initure.Mode GPIO_MODE_AF_PP;
GPIO_Initure.PullGPIO_PULLUP; //上拉
GPIO_Initure.SpeedGPIO_SPEED_FREQ_HIGH;//高速
HAL_GPIO_Init(GPIOA,GPIO_Initure);