想用一个定时器输出2路PWM波,求助

2019-10-15 04:36发布

才看原子哥的视频自学碰到几个问题,我想用一个定时器3的2个通道1、2输出2路PWM波,现在只有通道2可调占空比,用TIM_SetCompare2(TIM3,500),TIM_SetCompare1(TIM3,500)这2个函数,还有我一共需要四路PWM波控制四个电机,我想的是TIM3 OC1 OC2,TIM 4 OC1 OC2,对于TIM3视频里说了部分重映射到PB4、PB5, 那么TIM4我查表,上写了复用就是PB6 PB7,可是我的程序写了,好象没有输出PWM,能不帮我看看程序,还有定时器初始化那个没讲清视频里的,        TIM_Time3_Init.TIM_ClockDivision=TIM_CKD_DIV1;这个后面的参数也是分频的吗?

QQ截图20170131155809.png QQ截图20170131155821.png QQ截图20170131155830.png QQ截图20170131155840.png
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
19条回答
jasonflash
2019-10-15 12:29
刚看没看出什么问题,你可以用debug里面的逻辑分析仪判断一下是否真的是没有输出pwm,另外有个稍稍奇怪的地方,GPIO初始化的时候个人建议,多个引脚(同一组)的时候还是写成GPIO_Pin_4|GPIO_Pin_5可能更方遍一些。两次GPIO_Init感觉怪怪的。
附:CKD[1:0]: 时钟分频因子 (Clock division)
这2位定义在定时器时钟(CK_INT)频率、死区时间和由死区发生器与数字滤波器(ETR,TIx)所用
的采样时钟之间的分频比例。
00: tDTS = tCK_INT
01 : tDTS = 2 x tCK_INT
10: tDTS = 4 x tCK_INT
11 :保留,不要使用这个配置
我配置的时候写0。

一周热门 更多>