输出比较极性的指的是你在比较匹配之后输出口输出的极性。
这个函数就是让你设置有效极性,也就是设置比较输出的有效电平。你可以设置为高电平有效或者低电平有效。
如果设置为高电平有效,那么当定时器比较匹配之后,输出口输出高电平,否则就反一下。
欢迎追问。
输出比较极性的指的是你在比较匹配之后输出口输出的极性。
这个函数就是让你设置有效极性,也就是设置比较输出的有效电平。你可以设置为高电平有效或者低电平有效。
如果设置为高电平有效,那么当定时器比较匹配之后,输出口输出高电平,否则就反一下。
始化函数定义:
void TIM_Configuration(void); //定义TIM初始化函数
d)初始化函数调用:
TIM_Configuration(); //TIM初始化函数调用
e)初始化函数,不同于前面模块,TIM的CAP初始化分为三部分——计时器基本初始化、通道初始化和时钟启动初始化:
void TIM_Configuration(void)//TIM2的CAP初始化函数 。
这是我查到的最靠谱的回答:
TIM_OCPolarity的电平问题,需要结合TIM_OCMode两者共同决定。
TIM_OCInitStruct.TIM_OCMode = TIM_OCMode_PWM1; //跳变后电平
TIM_OCInitStruct.TIM_OCPolarity = TIM_OCPolarity_High;//高极性,极性不翻转,REF波形直接输出,当计数器的值小于通道的比较值时,输出引脚为高电平,大于比较值时为低电平
TIM_OCInitStruct.TIM_OCPolarity = TIM_OCPolarity_Low; //低极性,极性翻转,REF电平取反,当计数器的值小于通道的比较值时,输出引脚为低电平,大于比较值时为高电平
TIM_OCInitStruct.TIM_OCMode = TIM_OCMode_PWM2;//跳变前电平
TIM_OCInitStruct.TIM_OCPolarity = TIM_OCPolarity_High;//高极性,极性不翻转,REF波形直接输出,当计数器的值小于通道的比较值时,输出引脚为低电平,大于比较值时为高电平
TIM_OCInitStruct.TIM_OCPolarity = TIM_OCPolarity_Low; //低极性,极性翻转,REF电平取反,当计数器的值小于通道的比较值时,输出引脚为高电平,大于比较值时为低电平
TIM_TimeBaseStructure.TIM_Period=199; //计数器初值
TIM_OCInitStructure.TIM_OCPolarity=TIM_OCPolarity_High;
TIM_OCInitStructure.TIM_Pulse=150;
则计数0-150为高,151-199为低