问答

汇集网友智慧,解决技术难题

21ic问答首页 - STM32F407 同一个定时器的两个通道产生的PWM脉冲不对

STM32F407 同一个定时器的两个通道产生的PWM脉冲不对

s2904841882024-04-23
回答 +关注 15
4213人浏览 16人回答问题 分享 举报
16 个回答
  • 如果两路PWM波的脉冲数不一样,那么它们的比较寄存器的值也会不同。当计数器的值达到第一个比较寄存器的值时,第一路PWM波的状态会改变,但第二路PWM波的状态可能还没有改变,因为它的比较寄存器的值更大。这就导致了实际产生的脉冲数不准确,可能会少1个脉冲。
  • 在定时器1的PWM模式下,计数器的值从0递增到自动重载值(ARR),然后重新开始计数。当计数器的值小于第一个比较寄存器(CCR1)的值时,第一路PWM波的输出为高电平;当计数器的值大于第一个比较寄存器的值时,第一路PWM波的输出为低电平。同样的,对于第二路PWM波,使用第二个比较寄存器(CCR2)来控制。
  • 两路PWM产生的脉冲数不一样时,实际产生的脉冲不对,会少1。。。。。

    ===》现在的问题是你具体怎么产生的?用什么方法?或者说你是通过什么方式控制脉冲个数的?中断还是DMA?有无开启预装功能?。。。。
  • 在使用定时器1产生PWM波时,两路PWM波的周期和占空比是由同一个定时器的计数器和比较寄存器控制的。如果两路PWM波的脉冲数不一样,那么它们的周期和占空比设置也会不同。
  • 一般来说,如果两路PWM波的脉冲数不一样,可能会导致实际产生的脉冲数不准确,出现少1个脉冲的情况。
  • 在STM32F407VE微控制器上,使用定时器1(TIM1)同时产生两路PWM波是可行的。
12

您需要登录后才可以回复 登录 | 注册