stm32f1 PWM为啥不输出啊?

代码如下,能跑不报错,但是检测PA6引脚没有pwm波

#include "stm32f10x.h"                  // Device header

#define Pout(n) *(volatile uint32_t *)(0x42000000+(uint32_t)(&GPIOC->ODR-0X40000000)*32+4*n)

void GPIO_init(void)
{
    GPIO_InitTypeDef GPIO_InitStructure;


    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);
    
    ;GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6
    ;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP
    ;GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz
    ;GPIO_Init(GPIOB,&GPIO_InitStructure);
    
    GPIO_PinRemapConfig(GPIO_FullRemap_TIM3, ENABLE); //引脚复用的两种模式,FULL全复用,Partial为部分复用

}
void tim_init(void)
{    
    TIM_TimeBaseInitTypeDef  TIM_TimeBaseStructure;
  TIM_OCInitTypeDef  TIM_OCInitStructure;//比较参数结构体
    RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE);

    
    TIM_TimeBaseStructure.TIM_Period = 500;
    TIM_TimeBaseStructure.TIM_Prescaler = 72-1;
    TIM_TimeBaseStructure.TIM_ClockDivision = 0;
    TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;

    TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure);

    
    TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;//两种模式1为小于有效,2为小于无效
    TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;
    TIM_OCInitStructure.TIM_Pulse = 250;//比较数值
    TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;//输出极性
  TIM_OC1Init(TIM3, &TIM_OCInitStructure);
    
    TIM_OC1PreloadConfig(TIM3, TIM_OCPreload_Enable);
  TIM_Cmd(TIM3,ENABLE);


}
    
int main()
{    
    GPIO_init();
    tim_init();
    for(;;)
    {
    }
    
        
}


;GPIO_Init(GPIOA,&GPIO_InitStructure);//这里初始化GPIOA,  因为你是PA6输出
void GPIO_init(void)
{
    GPIO_InitTypeDef GPIO_InitStructure;
 
 
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);
    
    ;GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6
    ;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP
    ;GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz
    ;GPIO_Init(GPIOA,&GPIO_InitStructure);//这里初始化GPIOA,  因为你是PA6输出
    
    GPIO_PinRemapConfig(GPIO_FullRemap_TIM3, ENABLE); //引脚复用的两种模式,FULL全复用,Partial为部分复用
 
}

GPIO_PinRemapConfig(GPIO_FullRemap_TIM3, ENABLE); //引脚复用的两种模式,FULL全复用,Partial为部分复用

这一句不需要,TIM3的四个通道分别是PA6 PA7 PB0 PB1

你这句是在映射,但你又没用映射接口,这不是多此一举嘛

这一句注释是有误的
pinremap是重映射,意思是将这个端口的功能映射到其他端口,不是复用!不是复用!不是复用!