六路互补PWM

2019-07-21 04:35发布

本帖最后由 ningjing 于 2018-11-20 20:06 编辑

在T1和T4,T3和T6,T5和T2互补输出的条件下,
STM32F103 利用高级定时器TIM1能否实现T1,T2输出PWM波,T4,T5关闭。也就是H-PWM-L-PWM
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
17条回答
douxiaolingyun
2019-07-21 13:03
我做三相逆变的时候就是用定期1。可以将通道1、2、3全部打开。例如如以下配置
        /* Channel_1   TIM_OCMode_PWM1模式 */         
        TIM_OCInitStructure.TIM_OCMode       = TIM_OCMode_PWM1;                //在向上计数时,一旦TIMx_CNT<TIMx_CCR1时通道1为有效电平
        TIM_OCInitStructure.TIM_OutputState  = TIM_OutputState_Enable;          //比较输出使能
        TIM_OCInitStructure.TIM_OutputNState = TIM_OutputNState_Enable;         //PWM互补输出使能
        TIM_OCInitStructure.TIM_Pulse        = Channel1Pulse;                                //占空比 = TIM_Pulse/TIM_Period;
        TIM_OCInitStructure.TIM_OCPolarity   = TIM_OCPolarity_High;             //有效电平为高电平
        TIM_OCInitStructure.TIM_OCNPolarity  = TIM_OCNPolarity_High;           //互补PWM极性
        TIM_OCInitStructure.TIM_OCIdleState  = TIM_OCIdleState_Set;                   //输出空闲状态
        TIM_OCInitStructure.TIM_OCNIdleState = TIM_OCNIdleState_Reset;          //PWM互补输出空闲状态
        TIM_OC1Init(TIM1, &TIM_OCInitStructure);   

一周热门 更多>