引脚重新映射和端口复用配置是两个不同的概念,端口复用功能设置在初始化gpio时确定该io口用于哪个功能,而引脚重新映射的情况是某外设使用的引脚在实际芯片封装中不存在,不得不映射到其它编号引脚上再使用。
以STM32G030F6的USART1为例端口复用在GPIO初始化时完成,如下:
GPIO_InitStruct.Pin = LL_GPIO_PIN_9;
GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE;
GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_LOW;
GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL;
GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
GPIO_InitStruct.Alternate = LL_GPIO_AF_1;//选复用功能1
LL_GPIO_Init(GPIOA, &GPIO_InitStruct);
而实际芯片没有PA9这个引脚,于是需要映射到PA11引脚上,就是当PA11为PA9:
LL_SYSCFG_EnablePinRemap(LL_SYSCFG_PIN_RMP_PA11);
|
|