用的串口1,io口是PA9与PA10
pwm输出为PA0 1 6 7
查了一下复用表发现A6 A7的串口可能因为tim1的原因跟A9 A10复用了

注释掉相关代码后也发现是A6 A7的初始化代码与串口初始化代码冲突 但是网上搜索遇见的冲突情况都不一致 按照方法解决后也无果
故来求一份不用改变端口也能顺利初始化并运行的代码
用的串口1,io口是PA9与PA10
pwm输出为PA0 1 6 7
查了一下复用表发现A6 A7的串口可能因为tim1的原因跟A9 A10复用了

// 关闭串口时钟
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, DISABLE);
// 关闭串口中断
NVIC_DisableIRQ(USART1_IRQn);
// 初始化PWM
TIM3_CH2_PWM_Init(500-1,72-1); //频率是2KHz
// 重新打开串口时钟
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE);
// 重新打开串口中断
NVIC_EnableIRQ(USART1_IRQn);
/
/ 初始化PWM之后,重新配置串口的IO口
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9 | GPIO_Pin_10;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; //复用推挽输出
GPIO_Init(GPIOA, &GPIO_InitStructure);