PWM调试小结

pwm控制气缸伸缩

现象

给定气缸电压为5v可以正常运动,但是切换为pwm气缸吱吱响

原因

气缸吱吱响是因为给定的电压不够,不足以驱动气缸进行运动

解决过程

首先检查pwm输出是否正常,采取的方式是控制板烧写程序,控制板给另一块板供电,控制板pwm接另一板的led灯,若pwm正常,则led闪烁

检查L298N,直接给定5v电压,按照驱动板要求驱动,ln1,ln2电位相反的时候电机正转或者反转,ln1、ln2相同的时候电机停止

问题所在

TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_Low;

简单小结

在STM32的定时器PWM配置中,TIM_OCPolarity参数用于设置PWM输出引脚的极性,即高电平或低电平。

当涉及到PWM信号时,不同的TIM_OCPolarity极性设置会影响输出信号在周期内的高低电平分布。以下是一个具体的例子,说明不同极性设置的效果:

控制LED亮度

假设您想使用PWM来控制LED的亮度。LED可以看作是一个简单的输出设备。在这个例子中,我们使用正极性的LED,即高电平为LED点亮状态,低电平为LED熄灭状态。

  1. 使用TIM_OCPolarity_Low极性设置:

    TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_Low;
    

    在这种设置下,较低的PWM占空比将导致输出引脚在较低部分为高电平,从而点亮LED。较高的PWM占空比将导致输出引脚在较高部分为低电平,从而熄灭LED。换句话说,占空比越高,LED越暗。

  2. 使用TIM_OCPolarity_High极性设置:

    TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;
    

    在这种设置下,较低的PWM占空比将导致输出引脚在较低部分为低电平,从而熄灭LED。较高的PWM占空比将导致输出引脚在较高部分为高电平,从而点亮LED。换句话说,占空比越高,LED越亮。

在这个例子中,不同的极性设置导致了输出信号在PWM周期内的高低电平分布方式不同。您可以根据LED的特性和您的应用需求,选择适合的极性设置来控制LED的亮度。

请注意,上述示例是基于LED的简单情况。对于电机驱动等更复杂的应用,极性设置的选择可能涉及到更多的硬件特性和控制逻辑。

最后修改:2023 年 11 月 10 日
如果觉得我的文章对你有用,请随意赞赏