本帖最后由 RISCVLAR 于 2021-8-31 20:12 编辑
1、PWM1输出模式 (a)当程序进行如下配置: TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; 则输出极性高,OCx为高电平有效。 当计数模式进行以下配置时: TIM_TimeBaseInitStructure.TIM_CounterMode = TIM_CounterMode_Up; 即计数器CNT递增计数方式,则 CNT<CCR,通道CH为有效(有效电平为高电平),否则为无效(低电平), 当设置ARR为7199,CCR为1440时,PWM输出波形如下: 当计数模式进行以下配置时: TIM_TimeBaseInitStructure.TIM_CounterMode = TIM_CounterMode_Down; 即计数器CNT递减计数方式,则 CNT<CCR,通道CH为有效(有效电平为高电平),否则为无效(低电平), 当设置ARR为7199,CCR为1440时,PWM输出波形如下: (b)当程序进行如下配置: TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_Low; 则输出极性低,OCx为低电平有效。 当计数模式进行以下配置时: TIM_TimeBaseInitStructure.TIM_CounterMode = TIM_CounterMode_Up; 即计数器CNT递增计数方式,则 CNT<CCR,通道CH为有效(有效电平为低电平),否则为无效(高电平), 当设置ARR为7199,CCR为1440时,PWM输出波形如下: 当计数模式进行以下配置时: TIM_TimeBaseInitStructure.TIM_CounterMode = TIM_CounterMode_Down; 即计数器CNT递减计数方式,则 CNT<CCR,通道CH为有效(有效电平为低电平),否则为无效(高电平), 当设置ARR为7199,CCR为1440时,PWM输出波形如下:
2、PWM2输出模式 (a)当程序进行如下配置: TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; 则输出极性高,OCx为高电平有效。 当计数模式进行以下配置时: TIM_TimeBaseInitStructure.TIM_CounterMode = TIM_CounterMode_Up; 即计数器CNT递增计数方式,则 CNT<CCR,通道CH为无效(低电平),否则为有效(有效电平为高电平), 当设置ARR为7199,CCR为1440时,PWM输出波形如下: 当计数模式进行以下配置时: TIM_TimeBaseInitStructure.TIM_CounterMode = TIM_CounterMode_Down; 即计数器CNT递减计数方式,则 CNT<CCR,通道CH为无效(低电平),否则为有效(有效电平为高电平), 当设置ARR为7199,CCR为1440时,PWM输出波形如下: (b)当程序进行如下配置: TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_Low; 则输出极性低,OCx为低电平有效。 当计数模式进行以下配置时: TIM_TimeBaseInitStructure.TIM_CounterMode = TIM_CounterMode_Up; 即计数器CNT递增计数方式,则 CNT<CCR,通道CH为无效(高电平),否则为有效(有效电平为低电平), 当设置ARR为7199,CCR为1440时,PWM输出波形如下: 当计数模式进行以下配置时: TIM_TimeBaseInitStructure.TIM_CounterMode = TIM_CounterMode_Down; 即计数器CNT递减计数方式,则 CNT<CCR,通道CH为有效(有效电平为低电平),否则为无效(高电平), 当设置ARR为7199,CCR为1440时,PWM输出波形如下: 总结:无论定时器配置为向上计数还是向下计数,当PWM输出极性以及输出模式一定时,其PWM输出波形是一致的。
|