定义:TIM_OCNPolarity_High为高极性
TIM_OCNPolarity_Low为低极性
分析图:
首先要先理解好这一句话:
当PWM模式2- 在向上计数时,一旦TIMx_CNT
通道1为无效电平,否则为有效电平;
TIM_SetCompare2(TIM3,0);
1)为什么在高极性时,灯会灭呢
因为TIMx_CNT
战舰板的LED是低电平亮,而刚开始的给CC2P用来设置占空比的led0pwmval为0,也就是TIMx_CCR1
它是小于等于TIM3_CNT的,也就符合TIMx_CNT>=TIMx_CCR1时通道2输出是高电平
不符合LED灯低电平亮,LED灯是不亮的。
2)那么把高极性改为低极性,为什么灯会亮
如TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; //输出极性:TIM输出比较极性高
因为CC1P=0时:OC1高电平有效 TIM_OCNPolarity_High
CC1P=1时:OC1低电平有效 TIM_OCNPolarity_Low