求助!CH32V203的定时器1TIM1_CH1N_1怎么输出PWM?没有看到相关的开启教程只找到一个TIM_OC1NPolarityConfig函数

这是我抄的别人的代码

void PWM_Init()
{
    GPIO_InitTypeDef GPIO_InitStructure={0};
    TIM_OCInitTypeDef TIM_OCInitStructure={0};
    TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStructure={0};

    RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOA | RCC_APB2Periph_TIM1 | RCC_APB2Periph_AFIO, ENABLE );

    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_Init( GPIOE, &GPIO_InitStructure );
                                                //配置使用的IO

    GPIO_PinRemapConfig(GPIO_FullRemap_TIM1, ENABLE);    //重映射IO

    TIM_TimeBaseInitStructure.TIM_Period = 10000;
    TIM_TimeBaseInitStructure.TIM_Prescaler = 0;
    TIM_TimeBaseInitStructure.TIM_ClockDivision = TIM_CKD_DIV1;
    TIM_TimeBaseInitStructure.TIM_CounterMode = TIM_CounterMode_CenterAligned1;
    TIM_TimeBaseInit( TIM1, &TIM_TimeBaseInitStructure);    //配置核心计数器工作模式


    TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;
    TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;
    TIM_OCInitStructure.TIM_Pulse = 5000;
    TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;
    TIM_OC1Init( TIM1, &TIM_OCInitStructure );
                                                         //配置比较输出通道

    TIM_CtrlPWMOutputs(TIM1, ENABLE );          //高级定时器置位MOE
    TIM_OC1PreloadConfig( TIM1, TIM_OCPreload_Disable );
    TIM_OC1NPolarityConfig(TIM1, 1);
                                                //禁止ccr预装载


    TIM_ARRPreloadConfig( TIM1, ENABLE );           //开启核心计数器自动重装载


    TIM_Cmd( TIM1, ENABLE );       //开启核心计数器

}







int main(void)
{

//    u8g2_t  u8g2;
    SetSysClockTo144_HSE();
    led_init();
    PWM_Init();
    TIM1->CH1CVR = 0;
    TIM3_PWMOut_Init( 100, 48000-1, 50 );
    TIM4_PWMOut_Init( 100, 48000-1, 50 );
    TIM5_PWMOut_Init( 100, 48000-1, 50 );

    while(1) {
        led_loop();
    }

}


您好,CH1N为定时器通道1的互补通道,其若要输出PWM,则需要配合CH1使用,在CH32V203 EVT中有PWM互补输出的例程,可以参考一下。EVT下载链接如下。后续若有问题,可邮箱(lzs@wch.cn)沟通。

https://www.wch.cn/downloads/CH32V20xEVT_ZIP.html

 


可以了谢谢



只有登录才能回复,可以选择微信账号登录